summaryrefslogtreecommitdiffstats
path: root/kubernetes
diff options
context:
space:
mode:
Diffstat (limited to 'kubernetes')
-rw-r--r--kubernetes/Makefile2
-rw-r--r--kubernetes/README.md6
-rw-r--r--kubernetes/aaf/.helmignore21
-rw-r--r--kubernetes/aaf/Chart.yaml4
-rw-r--r--kubernetes/aaf/charts/aaf-cm/.helmignore21
-rw-r--r--kubernetes/aaf/charts/aaf-cm/Chart.yaml (renamed from kubernetes/mock/values.yaml)10
-rw-r--r--kubernetes/aaf/charts/aaf-cm/templates/NOTES.txt19
-rw-r--r--kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml114
-rw-r--r--kubernetes/aaf/charts/aaf-cm/templates/service.yaml41
-rw-r--r--kubernetes/aaf/charts/aaf-cm/values.yaml85
-rw-r--r--kubernetes/aaf/charts/aaf-cs/.helmignore21
-rw-r--r--kubernetes/aaf/charts/aaf-cs/Chart.yaml4
-rw-r--r--kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/init.cql (renamed from kubernetes/aaf/resources/config/aaf-cs-data/init.cql)112
-rw-r--r--kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/keyspace.cql11
-rw-r--r--kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/osaaf.cql122
-rw-r--r--kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/temp_identity.cql8
-rw-r--r--kubernetes/aaf/charts/aaf-cs/templates/NOTES.txt19
-rw-r--r--kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml95
-rw-r--r--kubernetes/aaf/charts/aaf-cs/templates/secret.yaml (renamed from kubernetes/aaf/templates/aaf-secret.yaml)6
-rw-r--r--kubernetes/aaf/charts/aaf-cs/templates/service.yaml62
-rw-r--r--kubernetes/aaf/charts/aaf-cs/values.yaml91
-rw-r--r--kubernetes/aaf/charts/aaf-fs/.helmignore21
-rw-r--r--kubernetes/aaf/charts/aaf-fs/Chart.yaml (renamed from kubernetes/mso/Chart.yaml)6
-rw-r--r--kubernetes/aaf/charts/aaf-fs/templates/NOTES.txt19
-rw-r--r--kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml114
-rw-r--r--kubernetes/aaf/charts/aaf-fs/templates/service.yaml41
-rw-r--r--kubernetes/aaf/charts/aaf-fs/values.yaml85
-rw-r--r--kubernetes/aaf/charts/aaf-gui/.helmignore21
-rw-r--r--kubernetes/aaf/charts/aaf-gui/Chart.yaml (renamed from kubernetes/mock/Chart.yaml)6
-rw-r--r--kubernetes/aaf/charts/aaf-gui/templates/NOTES.txt19
-rw-r--r--kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml114
-rw-r--r--kubernetes/aaf/charts/aaf-gui/templates/service.yaml41
-rw-r--r--kubernetes/aaf/charts/aaf-gui/values.yaml86
-rw-r--r--kubernetes/aaf/charts/aaf-hello/.helmignore21
-rw-r--r--kubernetes/aaf/charts/aaf-hello/Chart.yaml18
-rw-r--r--kubernetes/aaf/charts/aaf-hello/templates/NOTES.txt19
-rw-r--r--kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml114
-rw-r--r--kubernetes/aaf/charts/aaf-hello/templates/service.yaml41
-rw-r--r--kubernetes/aaf/charts/aaf-hello/values.yaml85
-rw-r--r--kubernetes/aaf/charts/aaf-locate/.helmignore21
-rw-r--r--kubernetes/aaf/charts/aaf-locate/Chart.yaml18
-rw-r--r--kubernetes/aaf/charts/aaf-locate/templates/NOTES.txt19
-rw-r--r--kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml112
-rw-r--r--kubernetes/aaf/charts/aaf-locate/templates/service.yaml41
-rw-r--r--kubernetes/aaf/charts/aaf-locate/values.yaml89
-rw-r--r--kubernetes/aaf/charts/aaf-oauth/.helmignore21
-rw-r--r--kubernetes/aaf/charts/aaf-oauth/Chart.yaml18
-rw-r--r--kubernetes/aaf/charts/aaf-oauth/templates/NOTES.txt19
-rw-r--r--kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml114
-rw-r--r--kubernetes/aaf/charts/aaf-oauth/templates/service.yaml41
-rw-r--r--kubernetes/aaf/charts/aaf-oauth/values.yaml85
-rw-r--r--kubernetes/aaf/charts/aaf-service/Chart.yaml18
-rw-r--r--kubernetes/aaf/charts/aaf-service/templates/deployment.yaml114
-rw-r--r--kubernetes/aaf/charts/aaf-service/templates/service.yaml41
-rw-r--r--kubernetes/aaf/charts/aaf-service/values.yaml86
-rw-r--r--kubernetes/aaf/charts/aaf-sms/Chart.yaml18
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/Chart.yaml18
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/resources/config/config.json7
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/configmap.yaml26
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/pv.yaml37
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/pvc.yaml48
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/statefulset.yaml74
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/values.yaml74
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/Chart.yaml19
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/configmap.yaml41
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/pv.yaml37
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/pvc.yaml48
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/service.yaml39
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/statefulset.yaml79
-rw-r--r--kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/values.yaml110
-rw-r--r--kubernetes/aaf/charts/aaf-sms/templates/configmap.yaml27
-rw-r--r--kubernetes/aaf/charts/aaf-sms/templates/deployment.yaml87
-rw-r--r--kubernetes/aaf/charts/aaf-sms/templates/pv.yaml37
-rw-r--r--kubernetes/aaf/charts/aaf-sms/templates/pvc.yaml48
-rw-r--r--kubernetes/aaf/charts/aaf-sms/templates/service.yaml39
-rw-r--r--kubernetes/aaf/charts/aaf-sms/values.yaml104
-rw-r--r--kubernetes/aaf/requirements.yaml18
-rw-r--r--kubernetes/aaf/resources/config/aaf-cs-data/ecomp.cql169
-rw-r--r--kubernetes/aaf/resources/config/aaf-cs-data/identities.dat7
-rw-r--r--kubernetes/aaf/resources/config/aaf-cs-data/identities.idxbin56 -> 0 bytes
-rw-r--r--kubernetes/aaf/resources/config/aaf-data/identities.dat9
-rw-r--r--kubernetes/aaf/resources/config/backup/backup.sh32
-rw-r--r--kubernetes/aaf/resources/config/backup/cbackup.sh8
-rw-r--r--kubernetes/aaf/resources/config/data/identities.dat27
-rw-r--r--kubernetes/aaf/resources/config/data/sample.identities.dat27
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.cm.props14
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.common.props29
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.fs.props10
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.gui.props31
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.hello.props8
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.locate.props8
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.log4j.props51
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.oauth.props8
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.orgs.props11
-rw-r--r--kubernetes/aaf/resources/config/etc/org.osaaf.service.props8
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.aaf.cm.p12bin0 -> 2818 bytes
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.aaf.keyfile27
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.aaf.p12bin0 -> 4140 bytes
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.aaf.props17
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.aaf.trust.p12bin0 -> 4180 bytes
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.aaf_new-24e41f2f436018568cbdecdc1edbd605.p12bin0 -> 4140 bytes
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.cassandra.props29
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.cm.ca.props11
-rw-r--r--kubernetes/aaf/resources/config/local/org.osaaf.location.props12
-rw-r--r--kubernetes/aaf/resources/config/public/README.txt1
-rw-r--r--kubernetes/aaf/templates/aaf-cs-deployment.yaml52
-rw-r--r--kubernetes/aaf/templates/aaf-deployment.yaml70
-rw-r--r--kubernetes/aaf/templates/all-services.yaml54
-rw-r--r--kubernetes/aaf/templates/configmap.yaml48
-rw-r--r--kubernetes/aaf/templates/job.yaml145
-rw-r--r--kubernetes/aaf/templates/pv.yaml37
-rw-r--r--kubernetes/aaf/templates/pvc.yaml48
-rw-r--r--kubernetes/aaf/templates/secrets.yaml30
-rw-r--r--kubernetes/aaf/values.yaml100
-rw-r--r--kubernetes/aai/charts/aai-babel/.helmignore21
-rw-r--r--kubernetes/aai/charts/aai-babel/Chart.yaml18
-rw-r--r--kubernetes/aai/charts/aai-babel/requirements.yaml21
-rw-r--r--kubernetes/aai/charts/aai-babel/resources/config/artifact-generator.properties264
-rw-r--r--kubernetes/aai/charts/aai-babel/resources/config/auth/auth_policy.json47
-rw-r--r--kubernetes/aai/charts/aai-babel/resources/config/auth/tomcat_keystorebin0 -> 2214 bytes
-rw-r--r--kubernetes/aai/charts/aai-babel/resources/config/babel-auth.properties2
-rw-r--r--kubernetes/aai/charts/aai-babel/resources/config/logback.xml179
-rw-r--r--kubernetes/aai/charts/aai-babel/templates/configmap.yaml21
-rw-r--r--kubernetes/aai/charts/aai-babel/templates/deployment.yaml132
-rw-r--r--kubernetes/aai/charts/aai-babel/templates/secrets.yaml37
-rw-r--r--kubernetes/aai/charts/aai-babel/templates/service.yaml39
-rw-r--r--kubernetes/aai/charts/aai-babel/values.yaml63
-rw-r--r--kubernetes/aai/charts/aai-cassandra/.helmignore21
-rw-r--r--kubernetes/aai/charts/aai-cassandra/Chart.yaml4
-rw-r--r--kubernetes/aai/charts/aai-cassandra/templates/service.yaml39
-rw-r--r--kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml114
-rw-r--r--kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml25
-rw-r--r--kubernetes/aai/charts/aai-cassandra/values.yaml107
-rw-r--r--kubernetes/aai/charts/aai-champ/Chart.yaml18
-rw-r--r--kubernetes/aai/charts/aai-champ/requirements.yaml21
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/champ_policy.json19
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystorebin0 -> 2214 bytes
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/appconfig/champ-api.properties6
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml66
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/configmap.yaml29
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/deployment.yaml134
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/secrets.yaml38
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/service.yaml39
-rw-r--r--kubernetes/aai/charts/aai-champ/values.yaml63
-rw-r--r--kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v10.xml5558
-rw-r--r--kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v11.xml6307
-rw-r--r--kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v8.xml3076
-rw-r--r--kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v9.xml5451
-rw-r--r--kubernetes/aai/charts/aai-data-router/resources/dynamic/routes/entity-event.route2
-rw-r--r--kubernetes/aai/charts/aai-data-router/templates/configmap.yaml32
-rw-r--r--kubernetes/aai/charts/aai-data-router/templates/deployment.yaml28
-rw-r--r--kubernetes/aai/charts/aai-data-router/values.yaml6
-rw-r--r--kubernetes/aai/charts/aai-elasticsearch/templates/deployment.yaml2
-rw-r--r--kubernetes/aai/charts/aai-elasticsearch/templates/service.yaml6
-rw-r--r--kubernetes/aai/charts/aai-elasticsearch/values.yaml2
-rw-r--r--kubernetes/aai/charts/aai-gizmo/.helmignore21
-rw-r--r--kubernetes/aai/charts/aai-gizmo/Chart.yaml18
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/README.txt10
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/auth/champ-cert.p12bin0 -> 2556 bytes
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/auth/crud_policy.json18
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/auth/datarouter-cert.p12bin0 -> 2556 bytes
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/auth/tomcat_keystorebin0 -> 2214 bytes
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/crud-api.properties5
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/crud-beans.xml35
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/log/filebeat/filebeat.yml (renamed from kubernetes/policy/resources/config/log/filebeat/filebeat.yml)2
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/log/logback.xml213
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v11.json6
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v12.json6
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v13.json6
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/NOTES.txt19
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/configmap.yaml45
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/deployment.yaml142
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/secrets.yaml41
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/service.yaml40
-rw-r--r--kubernetes/aai/charts/aai-gizmo/values.yaml61
-rw-r--r--kubernetes/aai/charts/aai-hbase/templates/deployment.yaml2
-rw-r--r--kubernetes/aai/charts/aai-hbase/values.yaml1
-rw-r--r--kubernetes/aai/charts/aai-modelloader/resources/config/auth/babel-client-cert.p12bin0 -> 2556 bytes
-rw-r--r--kubernetes/aai/charts/aai-modelloader/resources/config/log/logback.xml311
-rw-r--r--kubernetes/aai/charts/aai-modelloader/resources/config/model-loader.properties15
-rw-r--r--kubernetes/aai/charts/aai-modelloader/templates/deployment.yaml7
-rw-r--r--kubernetes/aai/charts/aai-modelloader/values.yaml3
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties121
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/application.properties72
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties49
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties44
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/localhost-access-logback.xml62
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/log/logback.xml345
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/logback.xml352
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/realm.properties13
-rw-r--r--kubernetes/aai/charts/aai-resources/templates/configmap.yaml52
-rw-r--r--kubernetes/aai/charts/aai-resources/templates/deployment.yaml94
-rw-r--r--kubernetes/aai/charts/aai-resources/templates/service.yaml10
-rw-r--r--kubernetes/aai/charts/aai-resources/values.yaml17
-rw-r--r--kubernetes/aai/charts/aai-search-data/resources/config/log/logback.xml363
-rw-r--r--kubernetes/aai/charts/aai-search-data/templates/deployment.yaml2
-rw-r--r--kubernetes/aai/charts/aai-search-data/values.yaml5
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/aai.properties87
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/auth/csp-cookie-filter.properties12
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/auth/inventory-ui-keystorebin7201 -> 0 bytes
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/auth/tomcat_keystorebin0 -> 2214 bytes
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-filter-aggregation.xml7
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-prepareSchema.xml11
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-subscriptionService.xml7
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unified-search.xml7
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unifiedFilterRequest.xml7
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/descriptors/aaiEntityNodeDescriptors.json218
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/elasticsearch.properties72
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_filters.json79
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_views.json21
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/filters/subscription_object_inspector_mapping.json16
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/log/logback.xml370
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/model/aai_oxm_v9.xml4775
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/portal/BOOT-INF/classes/portal.properties (renamed from kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal.properties)14
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal-authentication.properties28
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/portal/roles.config6
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/roles.config10
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestMappings.json10
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestSettings.json21
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/dynamicMappings.json14
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/entityCountHistoryMappings.json16
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_mappings.json32
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_settings.json36
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/search-service.properties32
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-application.properties11
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-http-config.properties1
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-ssl-config.properties3
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-aggregateVnfSearchProvider.xml33
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-apigw.xml31
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-gizmo.xml29
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-sync.xml373
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspect.xml55
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspectSearchProvider.xml34
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core.xml241
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/suggestive-search.properties27
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/resources/config/synchronizer.properties33
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/templates/configmap.yaml53
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/templates/deployment.yaml85
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/templates/service.yaml2
-rw-r--r--kubernetes/aai/charts/aai-sparky-be/values.yaml27
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties115
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/application.properties72
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties49
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties45
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/localhost-access-logback.xml62
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/log/logback.xml345
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/logback.xml365
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/realm.properties13
-rw-r--r--kubernetes/aai/charts/aai-traversal/templates/configmap.yaml50
-rw-r--r--kubernetes/aai/charts/aai-traversal/templates/deployment.yaml93
-rw-r--r--kubernetes/aai/charts/aai-traversal/templates/job.yaml131
-rw-r--r--kubernetes/aai/charts/aai-traversal/templates/service.yaml10
-rw-r--r--kubernetes/aai/charts/aai-traversal/values.yaml14
-rw-r--r--kubernetes/aai/resources/config/aai-data/environments/simpledemo.json4
-rw-r--r--kubernetes/aai/resources/config/aai/aai_keystorebin0 -> 5163 bytes
-rw-r--r--kubernetes/aai/templates/configmap.yaml20
-rw-r--r--kubernetes/aai/values.yaml33
-rw-r--r--kubernetes/appc/charts/appc-cdt/.helmignore21
-rw-r--r--kubernetes/appc/charts/appc-cdt/Chart.yaml4
-rw-r--r--kubernetes/appc/charts/appc-cdt/requirements.yaml4
-rw-r--r--kubernetes/appc/charts/appc-cdt/templates/NOTES.txt19
-rw-r--r--kubernetes/appc/charts/appc-cdt/templates/deployment.yaml61
-rw-r--r--kubernetes/appc/charts/appc-cdt/templates/service.yaml26
-rw-r--r--kubernetes/appc/charts/appc-cdt/values.yaml64
-rwxr-xr-xkubernetes/appc/resources/config/appc/opt/onap/appc/bin/installAppcDb.sh4
-rwxr-xr-xkubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh60
-rw-r--r--kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/aaiclient.properties173
-rw-r--r--kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/appc.properties57
-rwxr-xr-xkubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/installSdncDb.sh (renamed from kubernetes/appc/resources/config/appc/opt/onap/sdnc/bin/installSdncDb.sh)2
-rwxr-xr-xkubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/startODL.sh (renamed from kubernetes/appc/resources/config/appc/opt/onap/sdnc/bin/startODL.sh)0
-rw-r--r--kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/aaiclient.properties (renamed from kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/aaiclient.properties)6
-rw-r--r--kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/dblib.properties (renamed from kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/dblib.properties)0
-rw-r--r--kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/svclogic.properties (renamed from kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/svclogic.properties)0
-rwxr-xr-xkubernetes/appc/resources/config/appc/opt/onap/ccsdk/svclogic/bin/showActiveGraphs.sh (renamed from kubernetes/appc/resources/config/appc/opt/onap/sdnc/svclogic/bin/showActiveGraphs.sh)0
-rw-r--r--kubernetes/appc/resources/config/appc/opt/onap/ccsdk/svclogic/config/svclogic.properties (renamed from kubernetes/appc/resources/config/appc/opt/onap/sdnc/svclogic/config/svclogic.properties)0
-rw-r--r--kubernetes/appc/templates/configmap.yaml8
-rw-r--r--kubernetes/appc/templates/pv.yaml130
-rw-r--r--kubernetes/appc/templates/service.yaml15
-rw-r--r--kubernetes/appc/templates/statefulset.yaml38
-rw-r--r--kubernetes/appc/values.yaml47
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/Chart.yaml20
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/requirements.yaml20
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/resources/config/elasticsearch.yml133
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/templates/configmap.yaml23
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/templates/deployment.yaml120
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/templates/pv.yaml21
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/templates/pvc.yaml (renamed from kubernetes/common/mysql/templates/pvc.yaml)10
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/templates/service.yaml69
-rw-r--r--kubernetes/clamp/charts/clamp-dash-es/values.yaml117
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/Chart.yaml20
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/requirements.yaml20
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/resources/config/default.json18
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/resources/config/kibana.yml114
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/templates/configmap.yaml23
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/templates/deployment.yaml120
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/templates/service.yaml42
-rw-r--r--kubernetes/clamp/charts/clamp-dash-kibana/values.yaml102
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/Chart.yaml20
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/requirements.yaml20
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/resources/config/logstash.yml16
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/resources/config/pipeline.conf108
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/templates/configmap.yaml23
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/templates/deployment.yaml119
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/templates/service.yaml42
-rw-r--r--kubernetes/clamp/charts/clamp-dash-logstash/values.yaml100
-rw-r--r--kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql15
-rw-r--r--kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-stored-procedures.sql15
-rw-r--r--kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/drop/clds-drop-db-objects.sql15
-rw-r--r--kubernetes/clamp/charts/mariadb/templates/NOTES.txt19
-rw-r--r--kubernetes/clamp/charts/mariadb/templates/deployment.yaml2
-rw-r--r--kubernetes/clamp/charts/mariadb/templates/service.yaml6
-rw-r--r--kubernetes/clamp/charts/mariadb/values.yaml4
-rw-r--r--kubernetes/clamp/resources/config/sdc-controllers-config.json18
-rw-r--r--kubernetes/clamp/templates/NOTES.txt2
-rw-r--r--kubernetes/clamp/templates/configmap.yaml3
-rw-r--r--kubernetes/clamp/templates/deployment.yaml13
-rw-r--r--kubernetes/clamp/templates/service.yaml6
-rw-r--r--kubernetes/clamp/values.yaml28
-rw-r--r--kubernetes/cli/.helmignore21
-rw-r--r--kubernetes/cli/Chart.yaml4
-rw-r--r--kubernetes/cli/requirements.yaml21
-rw-r--r--kubernetes/cli/templates/NOTES.txt19
-rw-r--r--kubernetes/cli/templates/cli-deployment.yaml51
-rw-r--r--kubernetes/cli/templates/deployment.yaml68
-rw-r--r--kubernetes/cli/templates/service.yaml47
-rw-r--r--kubernetes/cli/values.yaml73
-rw-r--r--kubernetes/common/common/templates/_repository.tpl48
-rw-r--r--kubernetes/common/common/templates/_service.tpl31
-rw-r--r--kubernetes/common/common/values.yaml3
-rw-r--r--kubernetes/common/dgbuilder/resources/config/svclogic.properties2
-rwxr-xr-xkubernetes/common/dgbuilder/resources/scripts/createReleaseDir.sh12
-rw-r--r--kubernetes/common/dgbuilder/resources/scripts/customSettings.js17
-rw-r--r--kubernetes/common/dgbuilder/templates/deployment.yaml10
-rw-r--r--kubernetes/common/dgbuilder/templates/service.yaml8
-rw-r--r--kubernetes/common/dgbuilder/values.yaml11
-rw-r--r--kubernetes/common/mariadb-galera/.helmignore21
-rw-r--r--kubernetes/common/mariadb-galera/Chart.yaml11
-rw-r--r--kubernetes/common/mariadb-galera/requirements.yaml4
-rw-r--r--kubernetes/common/mariadb-galera/templates/NOTES.txt12
-rw-r--r--kubernetes/common/mariadb-galera/templates/configmap.yaml18
-rw-r--r--kubernetes/common/mariadb-galera/templates/pv.yaml37
-rw-r--r--kubernetes/common/mariadb-galera/templates/pvc.yaml48
-rw-r--r--kubernetes/common/mariadb-galera/templates/secrets.yaml14
-rw-r--r--kubernetes/common/mariadb-galera/templates/service.yaml19
-rw-r--r--kubernetes/common/mariadb-galera/templates/statefulset.yaml119
-rw-r--r--kubernetes/common/mariadb-galera/values.yaml115
-rw-r--r--kubernetes/common/mysql/Chart.yaml14
-rw-r--r--kubernetes/common/mysql/requirements.yaml16
-rw-r--r--kubernetes/common/mysql/templates/configmap.yaml18
-rw-r--r--kubernetes/common/mysql/templates/nfs-provisoner.yaml22
-rw-r--r--kubernetes/common/mysql/templates/pv.yaml48
-rw-r--r--kubernetes/common/mysql/templates/secrets.yaml18
-rw-r--r--kubernetes/common/mysql/templates/service.yaml52
-rw-r--r--kubernetes/common/mysql/templates/statefulset.yaml90
-rw-r--r--kubernetes/common/mysql/templates/storageclass.yaml20
-rw-r--r--kubernetes/common/mysql/values.yaml33
-rw-r--r--kubernetes/common/postgres/.helmignore21
-rw-r--r--kubernetes/common/postgres/Chart.yaml18
-rw-r--r--kubernetes/common/postgres/requirements.yaml18
-rw-r--r--kubernetes/common/postgres/templates/pv.yaml58
-rw-r--r--kubernetes/common/postgres/templates/secrets.yaml31
-rw-r--r--kubernetes/common/postgres/templates/service.yaml95
-rw-r--r--kubernetes/common/postgres/templates/statefulset.yaml147
-rw-r--r--kubernetes/common/postgres/values.yaml126
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/common-event/config/console.properties6
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/common-event/config/gui.properties1
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/common-event/config/log4j.properties58
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/common-event/config/manager.properties8
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/dmaapbc/config/conf28
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/dmaapbc/config/console.properties6
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/dmaapbc/config/gui.properties1
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/dmaapbc/config/log4j.properties58
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/dmaapbc/config/manager.properties8
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-0/00000000000000000000.logbin86 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-1/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-1/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST1-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST1-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-1/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-1/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-0/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-1/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-1/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-INBOX-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-INBOX-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-APP1-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-APP1-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-DBC1-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-DBC1-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-POL1-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-POL1-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-SDC1-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-SDC1-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-VID1-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-VID1-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-0/00000000000000000000.logbin86 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-1/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-1/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-0/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-1/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-1/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.log0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-0/00000000000000000000.logbin5150 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-1/00000000000000000000.indexbin48 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-1/00000000000000000000.logbin34764 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/recovery-point-offset-checkpoint27
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/replication-offset-checkpoint27
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-0/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-1/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-1/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-0/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-0/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-1/00000000000000000000.index0
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-1/00000000000000000000.logbin43 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.1bin67108880 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.103bin67108880 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.125bin67108880 -> 0 bytes
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/start-kafka.sh69
-rw-r--r--kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/cadi.properties21
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/ves/console.properties3
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/ves/gui.properties0
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/ves/log4j.properties24
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/ves/makefile9
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/ves/manager.properties8
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/ves/pw.sh.sh15
-rwxr-xr-xkubernetes/config/docker/init/src/config/dcae/ves/server.properties7
-rwxr-xr-xkubernetes/config/docker/init/src/config/message-router/dmaap/MsgRtrApi.properties140
-rwxr-xr-xkubernetes/config/docker/init/src/config/message-router/dmaap/mykey27
-rw-r--r--kubernetes/consul/Chart.yaml4
-rw-r--r--kubernetes/consul/charts/consul-server/Chart.yaml18
-rw-r--r--kubernetes/consul/charts/consul-server/requirements.yaml21
-rw-r--r--kubernetes/consul/charts/consul-server/templates/NOTES.txt34
-rw-r--r--kubernetes/consul/charts/consul-server/templates/service.yaml63
-rw-r--r--kubernetes/consul/charts/consul-server/templates/statefulset.yaml69
-rw-r--r--kubernetes/consul/charts/consul-server/values.yaml66
-rw-r--r--kubernetes/consul/requirements.yaml21
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/aai-search-data-service-health.json4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/aai-services-health.json6
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/appc-dbbuilder.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb01-healthcheck.json4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb02-healthcheck.json4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/appc-sdnhost.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/clamp-mariadb-health.json16
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/cli-health-check.json15
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/log-elastic-search.json4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/log-kibana.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/log-logstash.json20
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/mr-dmaap-health.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/msb-health.json16
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/mso-health.json28
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/mso-mariabdb.json15
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/multicloud-health-check.json8
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/policy-health.json111
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/aai-search-storage-write-script.sh6
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/appc-dbhost-script.sh4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/scripts/clamp-mariadb-script.sh15
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/data-router-script.sh4
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/model-loader-script.sh4
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/mr-kafka-health.sh4
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/mr-zookeeper-health.sh4
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/mso-mariadb-script.sh14
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/scripts/policy-mariadb-script.sh14
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/sdc-be-script.sh2
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/sdc-cs-script.sh2
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/sdc-fe-script.sh2
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/sdc-titan-script.sh2
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/sdnc-dbhost-script.sh4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/scripts/search-data-service-availability.sh2
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/so-api-script.sh (renamed from kubernetes/consul/resources/config/consul-agent-config/scripts/mso-camunda-script.sh)2
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/so-camunda-script.sh (renamed from kubernetes/consul/resources/config/consul-agent-config/scripts/mso-jra-script.sh)2
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/so-jra-script.sh (renamed from kubernetes/consul/resources/config/consul-agent-config/scripts/mso-api-script.sh)2
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/so-mariadb-script.sh14
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/sparky-be-script.sh4
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/tabular-db-availability.sh6
-rwxr-xr-xkubernetes/consul/resources/config/consul-agent-config/scripts/vid-mariadb-script.sh4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/sdc-health.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/sdnc-dgbuilder.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/sdnc-health.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/sdnc-portal-health.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb01-healthcheck.json4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb02-healthcheck.json4
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnhost.json2
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/so-health.json28
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/so-mariabdb.json15
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/vfc-health.json67
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/vid-health.json2
-rw-r--r--kubernetes/consul/templates/configmap.yaml (renamed from kubernetes/consul/templates/consul-agent-configmap.yaml)18
-rw-r--r--kubernetes/consul/templates/consul-server-deployment.yaml39
-rw-r--r--kubernetes/consul/templates/deployment.yaml (renamed from kubernetes/consul/templates/consul-agent-deployment.yaml)42
-rw-r--r--kubernetes/consul/templates/secrets.yaml7
-rw-r--r--kubernetes/consul/values.yaml57
-rw-r--r--kubernetes/dcaegen2/.helmignore1
-rw-r--r--kubernetes/dcaegen2/Chart.yaml6
-rw-r--r--kubernetes/dcaegen2/Makefile2
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/.helmignore21
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/Chart.yaml22
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/requirements.yaml25
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/config/k8s-plugin.json32
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-config_binding_service-inputs.yaml23
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-deployment_handler-inputs.yaml27
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-holmes_engine-inputs.yaml28
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-holmes_rules-inputs.yaml27
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-inventory-inputs.yaml32
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-pgaas-initdb-inputs.yaml19
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-policy_handler-inputs.yaml54
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-tca-inputs.yaml28
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-ves-inputs.yaml26
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/templates/configmap.yaml34
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/templates/job.yaml99
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/templates/secret.yaml31
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml84
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/.helmignore21
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/Chart.yaml (renamed from kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/01-load-default-sql-files.sh)27
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/README.md49
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/requirements.yaml18
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/resources/config/config.txt (renamed from kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/01-load-default-sql-files.sh)24
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/resources/config/log/filebeat.yml72
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml44
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml97
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/namespace.yaml28
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/secret.yaml43
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/service.yaml76
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml69
-rw-r--r--[-rwxr-xr-x]kubernetes/dcaegen2/charts/dcae-healthcheck/Chart.yaml (renamed from kubernetes/policy/resources/config/opt/policy/config/drools/drools-tweaks.sh)20
-rw-r--r--kubernetes/dcaegen2/charts/dcae-healthcheck/requirements.yaml22
-rw-r--r--kubernetes/dcaegen2/charts/dcae-healthcheck/templates/deployment.yaml65
-rw-r--r--kubernetes/dcaegen2/charts/dcae-healthcheck/templates/service.yaml45
-rw-r--r--kubernetes/dcaegen2/charts/dcae-healthcheck/values.yaml53
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/.helmignore21
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/Chart.yaml18
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/requirements.yaml18
-rwxr-xr-xkubernetes/dcaegen2/charts/dcae-redis/resources/redis/scripts/redis-cluster-config.sh50
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/templates/NOTES.txt34
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/templates/configmap.yaml36
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/templates/pv.yaml227
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/templates/service.yaml48
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/templates/statefulset.yaml115
-rw-r--r--kubernetes/dcaegen2/charts/dcae-redis/values.yaml114
-rw-r--r--kubernetes/dcaegen2/dcae-parameters-sample.yaml55
-rw-r--r--kubernetes/dcaegen2/requirements.yaml4
-rw-r--r--kubernetes/dcaegen2/templates/pod.yaml44
-rw-r--r--kubernetes/dcaegen2/values.yaml15
-rw-r--r--kubernetes/dmaap/.helmignore21
-rw-r--r--kubernetes/dmaap/Chart.yaml18
-rw-r--r--kubernetes/dmaap/Makefile24
-rw-r--r--kubernetes/dmaap/README.md25
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/.helmignore21
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/Chart.yaml18
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/README.md11
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/requirements.yaml21
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/buscontroller.env14
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/templates/NOTES.txt33
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/templates/configmap.yaml (renamed from kubernetes/sdnc/templates/dmaap-deployment-configmap.yaml)10
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/templates/deployment.yaml94
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/templates/service.yaml47
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml115
-rw-r--r--kubernetes/dmaap/charts/message-router/.helmignore21
-rw-r--r--kubernetes/dmaap/charts/message-router/Chart.yaml (renamed from kubernetes/message-router/Chart.yaml)4
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-kafka/.helmignore21
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-kafka/Chart.yaml19
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/NOTES.txt33
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/deployment.yaml116
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pv.yaml37
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pvc.yaml48
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/service.yaml32
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-kafka/values.yaml120
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/.helmignore21
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/Chart.yaml19
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/NOTES.txt33
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/deployment.yaml84
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pv.yaml37
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pvc.yaml48
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/service.yaml (renamed from kubernetes/consul/templates/consul-server-service.yaml)28
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/values.yaml114
-rw-r--r--kubernetes/dmaap/charts/message-router/requirements.yaml22
-rwxr-xr-x[-rw-r--r--]kubernetes/dmaap/charts/message-router/resources/config/dmaap/MsgRtrApi.properties (renamed from kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/MsgRtrApi.properties)28
-rwxr-xr-xkubernetes/dmaap/charts/message-router/resources/config/dmaap/cadi.properties (renamed from kubernetes/config/docker/init/src/config/message-router/dmaap/cadi.properties)14
-rwxr-xr-x[-rw-r--r--]kubernetes/dmaap/charts/message-router/resources/config/dmaap/mykey (renamed from kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/mykey)0
-rw-r--r--kubernetes/dmaap/charts/message-router/templates/NOTES.txt33
-rw-r--r--kubernetes/dmaap/charts/message-router/templates/configmap.yaml29
-rw-r--r--kubernetes/dmaap/charts/message-router/templates/deployment.yaml95
-rw-r--r--kubernetes/dmaap/charts/message-router/templates/secrets.yaml27
-rw-r--r--kubernetes/dmaap/charts/message-router/templates/service.yaml54
-rw-r--r--kubernetes/dmaap/charts/message-router/values.yaml94
-rw-r--r--kubernetes/dmaap/requirements.yaml18
-rw-r--r--kubernetes/dmaap/values.yaml23
-rw-r--r--kubernetes/esr/.helmignore21
-rw-r--r--kubernetes/esr/Chart.yaml4
-rw-r--r--kubernetes/esr/charts/esr-gui/.helmignore21
-rw-r--r--kubernetes/esr/charts/esr-gui/Chart.yaml18
-rw-r--r--kubernetes/esr/charts/esr-gui/templates/NOTES.txt16
-rw-r--r--kubernetes/esr/charts/esr-gui/templates/deployment.yaml67
-rw-r--r--kubernetes/esr/charts/esr-gui/templates/service.yaml43
-rw-r--r--kubernetes/esr/charts/esr-gui/values.yaml73
-rw-r--r--kubernetes/esr/requirements.yaml21
-rw-r--r--kubernetes/esr/templates/NOTES.txt13
-rw-r--r--kubernetes/esr/templates/configmap.yaml (renamed from kubernetes/mso/templates/mso-log-configmap.yaml)15
-rw-r--r--kubernetes/esr/templates/deployment.yaml99
-rw-r--r--kubernetes/esr/templates/esr-esrgui-deployment.yaml49
-rw-r--r--kubernetes/esr/templates/esr-esrserver-deployment.yaml75
-rw-r--r--kubernetes/esr/templates/service.yaml (renamed from kubernetes/esr/templates/all-services.yaml)47
-rw-r--r--kubernetes/esr/values.yaml75
-rw-r--r--kubernetes/helm/starters/onap-app/templates/deployment.yaml8
-rw-r--r--kubernetes/helm/starters/onap-app/templates/service.yaml6
-rw-r--r--kubernetes/helm/starters/onap-app/values.yaml14
-rw-r--r--kubernetes/log/charts/log-elasticsearch/resources/config/elasticsearch.yml3
-rw-r--r--kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml8
-rw-r--r--kubernetes/log/charts/log-elasticsearch/templates/pv.yaml2
-rw-r--r--kubernetes/log/charts/log-elasticsearch/templates/service.yaml35
-rw-r--r--kubernetes/log/charts/log-elasticsearch/values.yaml14
-rw-r--r--kubernetes/log/charts/log-kibana/templates/deployment.yaml11
-rw-r--r--kubernetes/log/charts/log-kibana/values.yaml9
-rw-r--r--kubernetes/log/charts/log-logstash/resources/config/onap-pipeline.conf60
-rw-r--r--kubernetes/log/charts/log-logstash/templates/deployment.yaml20
-rw-r--r--kubernetes/log/charts/log-logstash/templates/service.yaml35
-rw-r--r--kubernetes/log/charts/log-logstash/values.yaml12
-rw-r--r--kubernetes/log/values.yaml1
-rwxr-xr-xkubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties141
-rwxr-xr-xkubernetes/message-router/resources/config/dmaap/cadi.properties21
-rwxr-xr-xkubernetes/message-router/resources/config/dmaap/mykey27
-rw-r--r--kubernetes/message-router/templates/all-services.yaml80
-rw-r--r--kubernetes/message-router/templates/dmaap-configmap.yaml23
-rw-r--r--kubernetes/message-router/templates/message-router-dmaap.yaml91
-rw-r--r--kubernetes/message-router/templates/message-router-kafka.yaml102
-rw-r--r--kubernetes/message-router/templates/message-router-pv-pvc.yaml81
-rw-r--r--kubernetes/message-router/templates/message-router-zookeeper.yaml72
-rw-r--r--kubernetes/mock/templates/sniroemulator-deployment.yaml41
-rw-r--r--kubernetes/msb/charts/kube2msb/templates/deployment.yaml7
-rw-r--r--kubernetes/msb/charts/kube2msb/values.yaml5
-rw-r--r--kubernetes/msb/charts/msb-consul/templates/service.yaml2
-rw-r--r--kubernetes/msb/charts/msb-consul/values.yaml1
-rw-r--r--kubernetes/msb/charts/msb-discovery/resources/config/log/logback.xml27
-rw-r--r--kubernetes/msb/charts/msb-discovery/templates/configmap.yaml7
-rw-r--r--kubernetes/msb/charts/msb-discovery/templates/deployment.yaml20
-rw-r--r--kubernetes/msb/charts/msb-discovery/templates/service.yaml2
-rw-r--r--kubernetes/msb/charts/msb-discovery/values.yaml5
-rw-r--r--kubernetes/msb/charts/msb-eag/resources/config/log/logback.xml27
-rw-r--r--kubernetes/msb/charts/msb-eag/templates/configmap.yaml7
-rw-r--r--kubernetes/msb/charts/msb-eag/templates/deployment.yaml21
-rw-r--r--kubernetes/msb/charts/msb-eag/templates/service.yaml2
-rw-r--r--kubernetes/msb/charts/msb-eag/values.yaml5
-rw-r--r--kubernetes/msb/charts/msb-iag/resources/config/log/logback.xml27
-rw-r--r--kubernetes/msb/charts/msb-iag/templates/configmap.yaml7
-rw-r--r--kubernetes/msb/charts/msb-iag/templates/deployment.yaml21
-rw-r--r--kubernetes/msb/charts/msb-iag/templates/service.yaml2
-rw-r--r--kubernetes/msb/charts/msb-iag/values.yaml5
-rw-r--r--kubernetes/msb/resources/config/log/discovery/logback.xml27
-rw-r--r--kubernetes/msb/resources/config/log/eag/logback.xml27
-rw-r--r--kubernetes/msb/resources/config/log/filebeat/filebeat.yml41
-rw-r--r--kubernetes/msb/resources/config/log/iag/logback.xml27
-rw-r--r--kubernetes/msb/values.yaml9
-rwxr-xr-xkubernetes/mso/resources/config/docker-files/scripts/start-jboss-server.sh63
-rw-r--r--kubernetes/mso/resources/config/log/logback.apihandler-infra.xml139
-rw-r--r--kubernetes/mso/resources/config/log/logback.appc.xml138
-rw-r--r--kubernetes/mso/resources/config/log/logback.asdc.xml138
-rw-r--r--kubernetes/mso/resources/config/log/logback.bpmn.xml139
-rw-r--r--kubernetes/mso/resources/config/log/logback.msorequestsdbadapter.xml138
-rw-r--r--kubernetes/mso/resources/config/log/logback.network.xml139
-rw-r--r--kubernetes/mso/resources/config/log/logback.sdnc.xml138
-rw-r--r--kubernetes/mso/resources/config/log/logback.tenant.xml139
-rw-r--r--kubernetes/mso/resources/config/log/logback.vfc.xml138
-rw-r--r--kubernetes/mso/resources/config/log/logback.vnf.xml138
-rw-r--r--kubernetes/mso/resources/config/log/logback.workflow-message-adapter.xml138
-rw-r--r--kubernetes/mso/resources/config/mariadb/conf.d/mariadb1.cnf193
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/02-load-additional-changes.sh27
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/create_mso_db-tests.sql49
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/create_mso_db-default.sql139
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/create_mso_db-demo-dns.sql77
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/create_mso_db-demo-vfw.sql59
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mariadb_engine_7.7.3-ee.sql1195
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mysql_create_camunda_admin.sql25
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Catalog-schema.sql462
-rw-r--r--kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Requests-schema.sql84
-rwxr-xr-xkubernetes/mso/resources/config/mso/aai.crt66
-rw-r--r--kubernetes/mso/resources/config/mso/encryption.key1
-rw-r--r--kubernetes/mso/resources/config/mso/jboss/standalone-full-ha-mso.xml609
-rwxr-xr-xkubernetes/mso/resources/config/mso/mso-docker.json181
-rw-r--r--kubernetes/mso/templates/all-services.yaml80
-rw-r--r--kubernetes/mso/templates/db-deployment-configmap.yaml79
-rw-r--r--kubernetes/mso/templates/db-deployment.yaml108
-rw-r--r--kubernetes/mso/templates/mso-deployment.yaml164
-rw-r--r--kubernetes/mso/templates/mso-pv-pvc.yaml48
-rw-r--r--kubernetes/multicloud/.helmignore21
-rw-r--r--kubernetes/multicloud/Chart.yaml4
-rw-r--r--kubernetes/multicloud/charts/multicloud-ocata/.helmignore21
-rw-r--r--kubernetes/multicloud/charts/multicloud-ocata/Chart.yaml18
-rw-r--r--kubernetes/multicloud/charts/multicloud-ocata/resources/config/log/log.yml (renamed from kubernetes/multicloud/resources/config/log/ocata/log.yml)8
-rw-r--r--kubernetes/multicloud/charts/multicloud-ocata/templates/NOTES.txt34
-rw-r--r--kubernetes/multicloud/charts/multicloud-ocata/templates/configmap.yaml23
-rw-r--r--kubernetes/multicloud/charts/multicloud-ocata/templates/deployment.yaml117
-rw-r--r--kubernetes/multicloud/charts/multicloud-ocata/templates/service.yaml52
-rw-r--r--kubernetes/multicloud/charts/multicloud-ocata/values.yaml82
-rw-r--r--kubernetes/multicloud/charts/multicloud-vio/.helmignore21
-rw-r--r--kubernetes/multicloud/charts/multicloud-vio/Chart.yaml18
-rw-r--r--kubernetes/multicloud/charts/multicloud-vio/resources/config/log/log.yml (renamed from kubernetes/multicloud/resources/config/log/vio/log.yml)0
-rw-r--r--kubernetes/multicloud/charts/multicloud-vio/templates/NOTES.txt34
-rw-r--r--kubernetes/multicloud/charts/multicloud-vio/templates/configmap.yaml23
-rw-r--r--kubernetes/multicloud/charts/multicloud-vio/templates/deployment.yaml115
-rw-r--r--kubernetes/multicloud/charts/multicloud-vio/templates/service.yaml52
-rw-r--r--kubernetes/multicloud/charts/multicloud-vio/values.yaml82
-rw-r--r--kubernetes/multicloud/charts/multicloud-windriver/.helmignore21
-rw-r--r--kubernetes/multicloud/charts/multicloud-windriver/Chart.yaml18
-rw-r--r--kubernetes/multicloud/charts/multicloud-windriver/resources/config/log/log.yml (renamed from kubernetes/multicloud/resources/config/log/windriver/log.yml)8
-rw-r--r--kubernetes/multicloud/charts/multicloud-windriver/templates/NOTES.txt34
-rw-r--r--kubernetes/multicloud/charts/multicloud-windriver/templates/configmap.yaml23
-rw-r--r--kubernetes/multicloud/charts/multicloud-windriver/templates/deployment.yaml117
-rw-r--r--kubernetes/multicloud/charts/multicloud-windriver/templates/service.yaml53
-rw-r--r--kubernetes/multicloud/charts/multicloud-windriver/values.yaml82
-rw-r--r--kubernetes/multicloud/requirements.yaml18
-rw-r--r--kubernetes/multicloud/resources/config/provider-plugin.json29
-rw-r--r--kubernetes/multicloud/templates/NOTES.txt34
-rw-r--r--kubernetes/multicloud/templates/all-services.yaml132
-rw-r--r--kubernetes/multicloud/templates/configmap.yaml (renamed from kubernetes/sdc/templates/sdc-log-configmap.yaml)24
-rw-r--r--kubernetes/multicloud/templates/deployment.yaml123
-rw-r--r--kubernetes/multicloud/templates/framework-deployment.yaml94
-rw-r--r--kubernetes/multicloud/templates/multicloud-log-configmap.yaml55
-rw-r--r--kubernetes/multicloud/templates/multicloud-ocata-deployment.yaml94
-rw-r--r--kubernetes/multicloud/templates/multicloud-vio-deployment.yaml94
-rw-r--r--kubernetes/multicloud/templates/multicloud-windriver-deployment.yaml94
-rw-r--r--kubernetes/multicloud/templates/service.yaml52
-rw-r--r--kubernetes/multicloud/values.yaml84
-rw-r--r--kubernetes/onap/Chart.yaml1
-rw-r--r--kubernetes/onap/requirements.yaml46
-rw-r--r--kubernetes/onap/resources/environments/dev.yaml33
-rw-r--r--kubernetes/onap/resources/environments/disable-allcharts.yaml75
-rw-r--r--kubernetes/onap/templates/secrets.yaml4
-rw-r--r--kubernetes/onap/values.yaml47
-rwxr-xr-xkubernetes/oof/Chart.yaml18
-rw-r--r--kubernetes/oof/Makefile16
-rwxr-xr-xkubernetes/oof/charts/oof-has/Chart.yaml18
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-api/Chart.yaml18
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-api/templates/NOTES.txt33
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml109
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-api/templates/service.yaml40
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-api/values.yaml37
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/.helmignore21
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/Chart.yaml18
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/zzz_conductor.cql90
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt33
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml22
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml104
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml37
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml48
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml69
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/values.yaml92
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-controller/Chart.yaml18
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml114
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-controller/values.yaml30
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-data/Chart.yaml18
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml129
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-data/values.yaml30
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/Chart.yaml18
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/requirements.yaml18
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/music.properties27
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh35
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt33
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/configmap.yaml (renamed from kubernetes/sdc/templates/sdc-fe-configmap.yaml)8
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/deployment.yaml86
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/service.yaml40
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-music/values.yaml72
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-reservation/Chart.yaml18
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml114
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-reservation/values.yaml30
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-solver/Chart.yaml18
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml114
-rwxr-xr-xkubernetes/oof/charts/oof-has/charts/oof-has-solver/values.yaml30
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/Chart.yaml18
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt33
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml70
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml38
-rw-r--r--kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/values.yaml50
-rwxr-xr-xkubernetes/oof/charts/oof-has/requirements.yaml18
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/aai_cert.cer25
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/aai_key.key30
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/bundle.pem26
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/conductor.conf357
-rwxr-xr-x[-rw-r--r--]kubernetes/oof/charts/oof-has/resources/config/healthy.sh (renamed from kubernetes/message-router/values.yaml)27
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/log.conf78
-rwxr-xr-xkubernetes/oof/charts/oof-has/resources/config/log/filebeat.yml31
-rwxr-xr-x[-rw-r--r--]kubernetes/oof/charts/oof-has/templates/configmap.yaml (renamed from kubernetes/sdnc/templates/sdnc-conf-configmap.yaml)8
-rwxr-xr-x[-rw-r--r--]kubernetes/oof/charts/oof-has/values.yaml (renamed from kubernetes/mso/values.yaml)35
-rwxr-xr-xkubernetes/oof/requirements.yaml18
-rwxr-xr-xkubernetes/oof/resources/config/osdf_config.yaml53
-rw-r--r--kubernetes/oof/templates/NOTES.txt33
-rw-r--r--kubernetes/oof/templates/configmap.yaml21
-rw-r--r--kubernetes/oof/templates/deployment.yaml100
-rw-r--r--kubernetes/oof/templates/service.yaml41
-rw-r--r--kubernetes/oof/values.yaml96
-rw-r--r--kubernetes/policy/.helmignore21
-rw-r--r--kubernetes/policy/Chart.yaml4
-rw-r--r--kubernetes/policy/charts/brmsgw/Chart.yaml18
-rw-r--r--kubernetes/policy/charts/brmsgw/requirements.yaml21
-rw-r--r--[-rwxr-xr-x]kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw-tweaks.sh (renamed from kubernetes/policy/resources/config/opt/policy/config/pe/brmsgw-tweaks.sh)14
-rw-r--r--[-rwxr-xr-x]kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf (renamed from kubernetes/policy/resources/config/opt/policy/config/pe/brmsgw.conf)26
-rw-r--r--kubernetes/policy/charts/brmsgw/templates/NOTES.txt19
-rw-r--r--kubernetes/policy/charts/brmsgw/templates/configmap.yaml (renamed from kubernetes/aaf/templates/aaf-configmap.yaml)9
-rw-r--r--kubernetes/policy/charts/brmsgw/templates/deployment.yaml113
-rw-r--r--kubernetes/policy/charts/brmsgw/templates/service.yaml39
-rw-r--r--kubernetes/policy/charts/brmsgw/values.yaml87
-rw-r--r--kubernetes/policy/charts/drools/Chart.yaml18
-rw-r--r--kubernetes/policy/charts/drools/charts/nexus/Chart.yaml18
-rw-r--r--kubernetes/policy/charts/drools/charts/nexus/requirements.yaml21
-rw-r--r--kubernetes/policy/charts/drools/charts/nexus/templates/NOTES.txt19
-rw-r--r--kubernetes/policy/charts/drools/charts/nexus/templates/deployment.yaml88
-rw-r--r--kubernetes/policy/charts/drools/charts/nexus/templates/pv.yaml37
-rw-r--r--kubernetes/policy/charts/drools/charts/nexus/templates/pvc.yaml48
-rw-r--r--kubernetes/policy/charts/drools/charts/nexus/templates/service.yaml39
-rw-r--r--kubernetes/policy/charts/drools/charts/nexus/values.yaml96
-rw-r--r--kubernetes/policy/charts/drools/requirements.yaml21
-rwxr-xr-xkubernetes/policy/charts/drools/resources/config/drools/settings.xml (renamed from kubernetes/policy/resources/config/drools/settings.xml)36
-rw-r--r--kubernetes/policy/charts/drools/resources/config/log/drools/logback.xml (renamed from kubernetes/policy/resources/config/log/drools/logback.xml)210
-rw-r--r--kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/apps-install.sh124
-rw-r--r--[-rwxr-xr-x]kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf (renamed from kubernetes/policy/resources/config/opt/policy/config/drools/base.conf)35
-rw-r--r--kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-preinstall.sh52
-rw-r--r--kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-tweaks.sh22
-rw-r--r--kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/feature-pooling-dmaap.conf15
-rw-r--r--kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf16
-rw-r--r--kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/policy-keystore (renamed from kubernetes/policy/resources/config/opt/policy/config/drools/keys/policy-keystore)bin5640 -> 5640 bytes
-rw-r--r--kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/policy-management.conf19
-rw-r--r--[-rwxr-xr-x]kubernetes/policy/charts/drools/resources/scripts/update-vfw-op-policy.sh (renamed from kubernetes/policy/scripts/update-vfw-op-policy.sh)14
-rw-r--r--kubernetes/policy/charts/drools/templates/NOTES.txt19
-rw-r--r--kubernetes/policy/charts/drools/templates/configmap.yaml (renamed from kubernetes/policy/templates/policy-deployment-configmap.yaml)21
-rw-r--r--kubernetes/policy/charts/drools/templates/secrets.yaml (renamed from kubernetes/policy/templates/policy-deployment-secret.yaml)13
-rw-r--r--kubernetes/policy/charts/drools/templates/service.yaml42
-rw-r--r--kubernetes/policy/charts/drools/templates/statefulset.yaml189
-rw-r--r--kubernetes/policy/charts/drools/values.yaml89
-rw-r--r--kubernetes/policy/charts/mariadb/Chart.yaml18
-rw-r--r--kubernetes/policy/charts/mariadb/requirements.yaml21
-rw-r--r--kubernetes/policy/charts/mariadb/resources/config/db.sh23
-rw-r--r--kubernetes/policy/charts/mariadb/templates/NOTES.txt19
-rw-r--r--kubernetes/policy/charts/mariadb/templates/configmap.yaml (renamed from kubernetes/sdnc/templates/ueb-deployment-configmap.yaml)8
-rw-r--r--kubernetes/policy/charts/mariadb/templates/deployment.yaml103
-rw-r--r--kubernetes/policy/charts/mariadb/templates/pv.yaml37
-rw-r--r--kubernetes/policy/charts/mariadb/templates/pvc.yaml48
-rw-r--r--kubernetes/policy/charts/mariadb/templates/secrets.yaml29
-rw-r--r--kubernetes/policy/charts/mariadb/templates/service.yaml (renamed from kubernetes/vid/templates/all-services.yaml)36
-rw-r--r--kubernetes/policy/charts/mariadb/values.yaml76
-rw-r--r--kubernetes/policy/charts/pdp/Chart.yaml18
-rw-r--r--kubernetes/policy/charts/pdp/requirements.yaml21
-rw-r--r--kubernetes/policy/charts/pdp/resources/config/log/xacml-pdp-rest/logback.xml (renamed from kubernetes/policy/resources/config/log/xacml-pdp-rest/logback.xml)303
-rw-r--r--kubernetes/policy/charts/pdp/resources/config/pe/pdp-tweaks.sh16
-rw-r--r--[-rwxr-xr-x]kubernetes/policy/charts/pdp/resources/config/pe/pdp.conf (renamed from kubernetes/policy/resources/config/opt/policy/config/pe/pdp.conf)22
-rw-r--r--kubernetes/policy/charts/pdp/resources/config/pe/pdplp.conf26
-rw-r--r--kubernetes/policy/charts/pdp/templates/NOTES.txt19
-rw-r--r--kubernetes/policy/charts/pdp/templates/configmap.yaml (renamed from kubernetes/sdnc/templates/sdnc-log-configmap.yaml)14
-rw-r--r--kubernetes/policy/charts/pdp/templates/service.yaml52
-rw-r--r--kubernetes/policy/charts/pdp/templates/statefulset.yaml150
-rw-r--r--kubernetes/policy/charts/pdp/values.yaml86
-rw-r--r--kubernetes/policy/charts/policy-common/Chart.yaml18
-rw-r--r--kubernetes/policy/charts/policy-common/requirements.yaml21
-rw-r--r--kubernetes/policy/charts/policy-common/resources/config/log/filebeat/filebeat.yml (renamed from kubernetes/mso/resources/config/log/filebeat/filebeat.yml)0
-rw-r--r--kubernetes/policy/charts/policy-common/resources/config/pe/base.conf39
-rw-r--r--kubernetes/policy/charts/policy-common/resources/config/scripts/do-start.sh92
-rw-r--r--kubernetes/policy/charts/policy-common/templates/NOTES.txt19
-rw-r--r--kubernetes/policy/charts/policy-common/templates/configmap.yaml (renamed from kubernetes/portal/templates/portal-logs-configmap.yaml)21
-rw-r--r--kubernetes/policy/charts/policy-common/values.yaml81
-rw-r--r--kubernetes/policy/requirements.yaml21
-rw-r--r--kubernetes/policy/resources/config/log/ep_sdk_app/logback.xml376
-rw-r--r--kubernetes/policy/resources/config/log/pypdpserver/logback.xml154
-rw-r--r--kubernetes/policy/resources/config/log/xacml-pap-rest/logback.xml303
-rw-r--r--kubernetes/policy/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf2
-rwxr-xr-xkubernetes/policy/resources/config/opt/policy/config/drools/policy-management.conf5
-rwxr-xr-xkubernetes/policy/resources/config/opt/policy/config/pe/base.conf24
-rw-r--r--kubernetes/policy/resources/config/opt/policy/config/pe/elk.conf3
-rwxr-xr-xkubernetes/policy/resources/config/opt/policy/config/pe/mysql.conf5
-rwxr-xr-xkubernetes/policy/resources/config/opt/policy/config/pe/pap-tweaks.sh1
-rwxr-xr-xkubernetes/policy/resources/config/opt/policy/config/pe/pap.conf55
-rwxr-xr-xkubernetes/policy/resources/config/opt/policy/config/pe/paplp.conf12
-rwxr-xr-xkubernetes/policy/resources/config/opt/policy/config/pe/pdp-tweaks.sh2
-rwxr-xr-xkubernetes/policy/resources/config/opt/policy/config/pe/pdplp.conf12
-rw-r--r--[-rwxr-xr-x]kubernetes/policy/resources/config/pe/console.conf (renamed from kubernetes/policy/resources/config/opt/policy/config/pe/console.conf)24
-rw-r--r--kubernetes/policy/resources/config/pe/elk.conf17
-rw-r--r--kubernetes/policy/resources/config/pe/mysql.conf19
-rw-r--r--kubernetes/policy/resources/config/pe/pap-tweaks.sh15
-rw-r--r--kubernetes/policy/resources/config/pe/pap.conf68
-rw-r--r--kubernetes/policy/resources/config/pe/paplp.conf26
-rw-r--r--[-rwxr-xr-x]kubernetes/policy/resources/config/pe/push-policies.sh (renamed from kubernetes/policy/resources/config/opt/policy/config/pe/push-policies.sh)48
-rw-r--r--kubernetes/policy/templates/NOTES.txt19
-rw-r--r--kubernetes/policy/templates/all-services.yaml145
-rw-r--r--kubernetes/policy/templates/configmap.yaml (renamed from kubernetes/mso/templates/mso-deployment-configmap.yaml)21
-rw-r--r--kubernetes/policy/templates/dep-brmsgw.yaml71
-rw-r--r--kubernetes/policy/templates/dep-drools.yaml152
-rw-r--r--kubernetes/policy/templates/dep-maria.yaml54
-rw-r--r--kubernetes/policy/templates/dep-nexus.yaml61
-rw-r--r--kubernetes/policy/templates/dep-pap.yaml131
-rw-r--r--kubernetes/policy/templates/dep-pdp.yaml108
-rw-r--r--kubernetes/policy/templates/deployment.yaml168
-rw-r--r--kubernetes/policy/templates/policy-log-configmap.yaml59
-rw-r--r--kubernetes/policy/templates/service.yaml42
-rw-r--r--kubernetes/policy/values.yaml128
-rw-r--r--kubernetes/portal/.helmignore18
-rw-r--r--kubernetes/portal/Chart.yaml4
-rw-r--r--kubernetes/portal/charts/portal-app/.helmignore21
-rw-r--r--kubernetes/portal/charts/portal-app/Chart.yaml18
-rwxr-xr-xkubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/fusion.properties (renamed from kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/fusion.properties)2
-rw-r--r--kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/logback.xml (renamed from kubernetes/portal/resources/config/log/portal/onapportal/logback.xml)2
-rw-r--r--kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/music.properties19
-rwxr-xr-xkubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/openid-connect.properties3
-rwxr-xr-xkubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/portal.properties (renamed from kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/portal.properties)11
-rwxr-xr-xkubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/system.properties (renamed from kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/system.properties)26
-rw-r--r--kubernetes/portal/charts/portal-app/templates/NOTES.txt19
-rw-r--r--kubernetes/portal/charts/portal-app/templates/configmap.yaml (renamed from kubernetes/sdc/templates/sdc-environments-configmap.yaml)8
-rw-r--r--kubernetes/portal/charts/portal-app/templates/deployment.yaml139
-rw-r--r--kubernetes/portal/charts/portal-app/templates/service.yaml65
-rw-r--r--kubernetes/portal/charts/portal-app/values.yaml105
-rw-r--r--kubernetes/portal/charts/portal-cassandra/.helmignore21
-rw-r--r--kubernetes/portal/charts/portal-cassandra/Chart.yaml18
-rw-r--r--kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portal.cql54
-rw-r--r--kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portalsdk.cql54
-rw-r--r--kubernetes/portal/charts/portal-cassandra/templates/NOTES.txt19
-rw-r--r--kubernetes/portal/charts/portal-cassandra/templates/configmap.yaml22
-rw-r--r--kubernetes/portal/charts/portal-cassandra/templates/deployment.yaml109
-rw-r--r--kubernetes/portal/charts/portal-cassandra/templates/pv.yaml37
-rw-r--r--kubernetes/portal/charts/portal-cassandra/templates/pvc.yaml48
-rw-r--r--kubernetes/portal/charts/portal-cassandra/templates/service.yaml69
-rw-r--r--kubernetes/portal/charts/portal-cassandra/values.yaml111
-rw-r--r--kubernetes/portal/charts/portal-mariadb/.helmignore21
-rw-r--r--kubernetes/portal/charts/portal-mariadb/Chart.yaml18
-rw-r--r--kubernetes/portal/charts/portal-mariadb/resources/config/mariadb/oom_updates.sql24
-rw-r--r--kubernetes/portal/charts/portal-mariadb/templates/NOTES.txt19
-rw-r--r--kubernetes/portal/charts/portal-mariadb/templates/configmap.yaml22
-rw-r--r--kubernetes/portal/charts/portal-mariadb/templates/deployment.yaml89
-rw-r--r--kubernetes/portal/charts/portal-mariadb/templates/job.yaml90
-rw-r--r--kubernetes/portal/charts/portal-mariadb/templates/pv.yaml37
-rw-r--r--kubernetes/portal/charts/portal-mariadb/templates/pvc.yaml48
-rw-r--r--kubernetes/portal/charts/portal-mariadb/templates/secrets.yaml27
-rw-r--r--kubernetes/portal/charts/portal-mariadb/templates/service.yaml38
-rw-r--r--kubernetes/portal/charts/portal-mariadb/values.yaml140
-rw-r--r--kubernetes/portal/charts/portal-sdk/.helmignore21
-rw-r--r--kubernetes/portal/charts/portal-sdk/Chart.yaml18
-rw-r--r--kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/fusion.properties (renamed from kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/fusion.properties)2
-rw-r--r--kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/logback.xml (renamed from kubernetes/portal/resources/config/log/portal/onapportalsdk/logback.xml)315
-rw-r--r--kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/music.properties20
-rwxr-xr-xkubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/portal.properties (renamed from kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/portal.properties)6
-rwxr-xr-xkubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/system.properties (renamed from kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/system.properties)8
-rw-r--r--kubernetes/portal/charts/portal-sdk/templates/NOTES.txt19
-rw-r--r--kubernetes/portal/charts/portal-sdk/templates/configmap.yaml21
-rw-r--r--kubernetes/portal/charts/portal-sdk/templates/deployment.yaml130
-rw-r--r--kubernetes/portal/charts/portal-sdk/templates/service.yaml40
-rw-r--r--kubernetes/portal/charts/portal-sdk/values.yaml101
-rw-r--r--kubernetes/portal/charts/portal-widget/.helmignore21
-rw-r--r--kubernetes/portal/charts/portal-widget/Chart.yaml18
-rw-r--r--kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.properties (renamed from kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPWIDGETMS/application.properties)6
-rw-r--r--kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.yml3
-rw-r--r--kubernetes/portal/charts/portal-widget/templates/NOTES.txt19
-rw-r--r--kubernetes/portal/charts/portal-widget/templates/configmap.yaml (renamed from kubernetes/esr/templates/esr-filebeat-configmap.yaml)8
-rw-r--r--kubernetes/portal/charts/portal-widget/templates/deployment.yaml97
-rw-r--r--kubernetes/portal/charts/portal-widget/templates/service.yaml40
-rw-r--r--kubernetes/portal/charts/portal-widget/values.yaml87
-rw-r--r--kubernetes/portal/charts/portal-zookeeper/.helmignore21
-rw-r--r--kubernetes/portal/charts/portal-zookeeper/Chart.yaml18
-rw-r--r--kubernetes/portal/charts/portal-zookeeper/templates/NOTES.txt19
-rw-r--r--kubernetes/portal/charts/portal-zookeeper/templates/deployment.yaml70
-rw-r--r--kubernetes/portal/charts/portal-zookeeper/templates/service.yaml38
-rw-r--r--kubernetes/portal/charts/portal-zookeeper/values.yaml75
-rw-r--r--kubernetes/portal/docker/init/mariadb-client/Dockerfile37
-rw-r--r--kubernetes/portal/docker/init/mariadb-client/db_migrate.sh23
-rw-r--r--kubernetes/portal/requirements.yaml18
-rw-r--r--kubernetes/portal/resources/config/log/filebeat/filebeat.yml2
-rw-r--r--kubernetes/portal/resources/config/mariadb/oom_updates.sql8
-rwxr-xr-xkubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/openid-connect.properties3
-rw-r--r--kubernetes/portal/resources/scripts/update_hosts.sh17
-rw-r--r--kubernetes/portal/resources/vnc/init_profile/profiles.ini9
-rw-r--r--kubernetes/portal/templates/all-services.yaml108
-rw-r--r--kubernetes/portal/templates/configmap.yaml (renamed from kubernetes/esr/templates/esr-server-log-configmap.yaml)9
-rw-r--r--kubernetes/portal/templates/portal-apps-configmap.yaml49
-rw-r--r--kubernetes/portal/templates/portal-apps-deployment.yaml165
-rw-r--r--kubernetes/portal/templates/portal-mariadb-deployment.yaml64
-rw-r--r--kubernetes/portal/templates/portal-pv-pvc.yaml48
-rw-r--r--kubernetes/portal/templates/portal-vnc-dep.yaml137
-rw-r--r--kubernetes/portal/templates/portal-widgets-deployment.yaml74
-rw-r--r--kubernetes/portal/values.yaml50
-rw-r--r--kubernetes/readiness/dep-health-init.yaml2
-rwxr-xr-xkubernetes/robot/demo-k8s.sh40
-rwxr-xr-xkubernetes/robot/ete-k8s.sh14
-rwxr-xr-xkubernetes/robot/resources/config/authorization2
-rwxr-xr-xkubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py341
-rwxr-xr-xkubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py75
-rwxr-xr-xkubernetes/robot/resources/config/eteshare/config/vm_properties.py122
-rw-r--r--kubernetes/robot/resources/config/robot/resources/asdc_interface.robot495
-rw-r--r--kubernetes/robot/resources/config/robot/resources/oof_interface.robot41
-rw-r--r--kubernetes/robot/resources/config/robot/resources/policy_interface.robot7
-rw-r--r--kubernetes/robot/resources/config/robot/resources/sdngc_interface.robot96
-rw-r--r--kubernetes/robot/templates/deployment.yaml123
-rw-r--r--kubernetes/robot/templates/service.yaml12
-rw-r--r--kubernetes/robot/values.yaml68
-rw-r--r--kubernetes/sdc/.helmignore21
-rw-r--r--kubernetes/sdc/Chart.yaml6
-rw-r--r--kubernetes/sdc/charts/sdc-be/.helmignore21
-rw-r--r--kubernetes/sdc/charts/sdc-be/Chart.yaml18
-rw-r--r--kubernetes/sdc/charts/sdc-be/resources/config/logging/logback.xml (renamed from kubernetes/sdc/resources/config/log/be/logback.xml)0
-rw-r--r--kubernetes/sdc/charts/sdc-be/templates/NOTES.txt19
-rw-r--r--kubernetes/sdc/charts/sdc-be/templates/configmap.yaml21
-rw-r--r--kubernetes/sdc/charts/sdc-be/templates/deployment.yaml150
-rw-r--r--kubernetes/sdc/charts/sdc-be/templates/job.yaml70
-rw-r--r--kubernetes/sdc/charts/sdc-be/templates/service.yaml65
-rw-r--r--kubernetes/sdc/charts/sdc-be/values.yaml89
-rw-r--r--kubernetes/sdc/charts/sdc-cs/.helmignore21
-rw-r--r--kubernetes/sdc/charts/sdc-cs/Chart.yaml18
-rw-r--r--kubernetes/sdc/charts/sdc-cs/templates/NOTES.txt19
-rw-r--r--kubernetes/sdc/charts/sdc-cs/templates/deployment.yaml103
-rw-r--r--kubernetes/sdc/charts/sdc-cs/templates/job.yaml94
-rw-r--r--kubernetes/sdc/charts/sdc-cs/templates/pv.yaml37
-rw-r--r--kubernetes/sdc/charts/sdc-cs/templates/pvc.yaml48
-rw-r--r--kubernetes/sdc/charts/sdc-cs/templates/service.yaml45
-rw-r--r--kubernetes/sdc/charts/sdc-cs/values.yaml112
-rw-r--r--kubernetes/sdc/charts/sdc-es/.helmignore21
-rw-r--r--kubernetes/sdc/charts/sdc-es/Chart.yaml18
-rw-r--r--kubernetes/sdc/charts/sdc-es/templates/NOTES.txt19
-rw-r--r--kubernetes/sdc/charts/sdc-es/templates/deployment.yaml99
-rw-r--r--kubernetes/sdc/charts/sdc-es/templates/job.yaml66
-rw-r--r--kubernetes/sdc/charts/sdc-es/templates/pv.yaml37
-rw-r--r--kubernetes/sdc/charts/sdc-es/templates/pvc.yaml48
-rw-r--r--kubernetes/sdc/charts/sdc-es/templates/service.yaml45
-rw-r--r--kubernetes/sdc/charts/sdc-es/values.yaml116
-rw-r--r--kubernetes/sdc/charts/sdc-fe/.helmignore21
-rw-r--r--kubernetes/sdc/charts/sdc-fe/Chart.yaml18
-rw-r--r--kubernetes/sdc/charts/sdc-fe/resources/config/logging/logback.xml (renamed from kubernetes/sdc/resources/config/log/fe/logback.xml)4
-rw-r--r--kubernetes/sdc/charts/sdc-fe/templates/NOTES.txt19
-rw-r--r--kubernetes/sdc/charts/sdc-fe/templates/configmap.yaml21
-rw-r--r--kubernetes/sdc/charts/sdc-fe/templates/deployment.yaml147
-rw-r--r--kubernetes/sdc/charts/sdc-fe/templates/service.yaml56
-rw-r--r--kubernetes/sdc/charts/sdc-fe/values.yaml89
-rw-r--r--kubernetes/sdc/charts/sdc-kb/.helmignore25
-rw-r--r--kubernetes/sdc/charts/sdc-kb/Chart.yaml18
-rw-r--r--kubernetes/sdc/charts/sdc-kb/templates/NOTES.txt19
-rw-r--r--kubernetes/sdc/charts/sdc-kb/templates/deployment.yaml100
-rw-r--r--kubernetes/sdc/charts/sdc-kb/templates/service.yaml39
-rw-r--r--kubernetes/sdc/charts/sdc-kb/values.yaml87
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/.helmignore21
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/Chart.yaml18
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/resources/config/logging/logback.xml187
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/templates/NOTES.txt19
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/templates/configmap.yaml21
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/templates/deployment.yaml144
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/templates/job.yaml90
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/templates/pv.yaml37
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/templates/pvc.yaml48
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/templates/service.yaml46
-rw-r--r--kubernetes/sdc/charts/sdc-onboarding-be/values.yaml112
-rw-r--r--kubernetes/sdc/charts/sdc-wfd/.helmignore21
-rw-r--r--kubernetes/sdc/charts/sdc-wfd/Chart.yaml18
-rw-r--r--kubernetes/sdc/charts/sdc-wfd/templates/NOTES.txt20
-rw-r--r--kubernetes/sdc/charts/sdc-wfd/templates/deployment.yaml52
-rw-r--r--kubernetes/sdc/charts/sdc-wfd/templates/service.yaml54
-rw-r--r--kubernetes/sdc/charts/sdc-wfd/values.yaml56
-rw-r--r--kubernetes/sdc/requirements.yaml18
-rwxr-xr-xkubernetes/sdc/resources/config/environments/AUTO.json80
-rwxr-xr-xkubernetes/sdc/resources/config/environments/Template.json75
-rwxr-xr-xkubernetes/sdc/resources/config/sdc-fe/FE_2_setup_configuration.rb27
-rw-r--r--kubernetes/sdc/templates/all-services.yaml141
-rw-r--r--kubernetes/sdc/templates/configmap.yaml29
-rw-r--r--kubernetes/sdc/templates/sdc-be.yaml137
-rw-r--r--kubernetes/sdc/templates/sdc-cs.yaml95
-rw-r--r--kubernetes/sdc/templates/sdc-es.yaml91
-rw-r--r--kubernetes/sdc/templates/sdc-fe.yaml135
-rw-r--r--kubernetes/sdc/templates/sdc-kb.yaml87
-rw-r--r--kubernetes/sdc/templates/sdc-pv-pvc.yaml48
-rw-r--r--kubernetes/sdc/templates/secrets.yaml31
-rw-r--r--kubernetes/sdc/values.yaml33
-rw-r--r--kubernetes/sdnc/.helmignore21
-rw-r--r--kubernetes/sdnc/Chart.yaml4
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/Chart.yaml18
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/requirements.yaml18
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/resources/config/dblib.properties32
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/resources/config/dhcpalert.properties (renamed from kubernetes/sdnc/resources/config/dmaap/dhcpalert.properties)8
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/resources/config/lcm.properties35
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/templates/configmap.yaml21
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml96
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/templates/service.yaml (renamed from kubernetes/mock/templates/all-services.yaml)23
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/values.yaml83
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/.helmignore21
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/Chart.yaml18
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/requirements.yaml18
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config45
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/templates/configmap.yaml21
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml96
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/templates/service.yaml33
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml79
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/.helmignore21
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/Chart.yaml18
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/requirements.yaml18
-rw-r--r--[-rwxr-xr-x]kubernetes/sdnc/charts/sdnc-portal/resources/config/admportal.json (renamed from kubernetes/sdnc/resources/config/conf/admportal.json)12
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties32
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/resources/config/svclogic.properties5
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/resources/config/svclogic.properties.sdnctldb025
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/templates/configmap.yaml21
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml118
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/templates/secrets.yaml13
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/templates/service.yaml50
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/values.yaml86
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/Chart.yaml18
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/requirements.yaml18
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/resources/config/dblib.properties37
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/resources/config/ueb-listener.properties (renamed from kubernetes/sdnc/resources/config/ueb/ueb-listener.properties)7
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/templates/configmap.yaml21
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml95
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/templates/service.yaml (renamed from kubernetes/sdnc/templates/mysql-configmap.yaml)28
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/values.yaml84
-rw-r--r--kubernetes/sdnc/requirements.yaml24
-rw-r--r--kubernetes/sdnc/resources/config/bin/installSdncDb.sh55
-rwxr-xr-xkubernetes/sdnc/resources/config/bin/startODL.sh130
-rwxr-xr-xkubernetes/sdnc/resources/config/conf/aaiclient.properties225
-rw-r--r--kubernetes/sdnc/resources/config/conf/dblib.properties32
-rw-r--r--kubernetes/sdnc/resources/config/conf/lcm-dg.properties18
-rw-r--r--kubernetes/sdnc/resources/config/conf/svclogic.properties27
-rw-r--r--kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg208
-rwxr-xr-xkubernetes/sdnc/resources/geo/bin/sdnc.cluster52
-rwxr-xr-xkubernetes/sdnc/resources/geo/bin/sdnc.failover65
-rwxr-xr-xkubernetes/sdnc/resources/geo/bin/sdnc.isPrimaryCluster19
-rwxr-xr-xkubernetes/sdnc/resources/geo/bin/switchVoting.sh27
-rw-r--r--kubernetes/sdnc/templates/all-services.yaml200
-rw-r--r--kubernetes/sdnc/templates/configmap.yaml45
-rw-r--r--kubernetes/sdnc/templates/db-statefulset.yaml220
-rw-r--r--kubernetes/sdnc/templates/dgbuilder-deployment.yaml80
-rw-r--r--kubernetes/sdnc/templates/dmaap-deployment.yaml76
-rw-r--r--kubernetes/sdnc/templates/nfs-provisoner-deployment.yaml72
-rw-r--r--kubernetes/sdnc/templates/pv.yaml84
-rw-r--r--kubernetes/sdnc/templates/sdnc-data-storageclass.yaml24
-rw-r--r--kubernetes/sdnc/templates/sdnc-statefulset.yaml131
-rw-r--r--kubernetes/sdnc/templates/secrets.yaml27
-rw-r--r--kubernetes/sdnc/templates/service.yaml155
-rw-r--r--kubernetes/sdnc/templates/statefulset.yaml187
-rw-r--r--kubernetes/sdnc/templates/ueb-deployment.yaml76
-rw-r--r--kubernetes/sdnc/templates/web-deployment.yaml85
-rw-r--r--kubernetes/sdnc/values.yaml209
-rw-r--r--kubernetes/sniro-emulator/.helmignore21
-rw-r--r--kubernetes/sniro-emulator/Chart.yaml18
-rw-r--r--kubernetes/sniro-emulator/requirements.yaml21
-rw-r--r--kubernetes/sniro-emulator/templates/NOTES.txt34
-rw-r--r--kubernetes/sniro-emulator/templates/deployment.yaml62
-rw-r--r--kubernetes/sniro-emulator/templates/service.yaml40
-rw-r--r--kubernetes/sniro-emulator/values.yaml76
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/02-load-additional-changes.sh27
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/create_mso_db-tests.sql49
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/create_mso_db-default.sql139
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/create_mso_db-demo-dns.sql77
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/create_mso_db-demo-vfw.sql59
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mariadb_engine_7.7.3-ee.sql1195
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mysql_create_camunda_admin.sql25
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Catalog-schema.sql462
-rw-r--r--kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Requests-schema.sql84
-rw-r--r--kubernetes/so/charts/mariadb/templates/configmap.yaml58
-rw-r--r--kubernetes/so/charts/mariadb/templates/deployment.yaml156
-rw-r--r--kubernetes/so/charts/mariadb/templates/service.yaml6
-rw-r--r--kubernetes/so/charts/mariadb/values.yaml20
-rwxr-xr-xkubernetes/so/resources/config/mso/aai.crt66
-rwxr-xr-xkubernetes/so/resources/config/mso/mso-docker.json114
-rw-r--r--kubernetes/so/resources/config/mso/onap-ca-new.crt31
-rw-r--r--kubernetes/so/resources/config/mso/onap-ca.crt100
-rw-r--r--kubernetes/so/resources/config/mso/standalone-full-ha-mso.xml6
-rw-r--r--kubernetes/so/templates/deployment.yaml20
-rw-r--r--kubernetes/so/templates/service.yaml34
-rw-r--r--kubernetes/so/values.yaml41
-rw-r--r--kubernetes/uui/.helmignore21
-rw-r--r--kubernetes/uui/Chart.yaml4
-rw-r--r--kubernetes/uui/charts/uui-server/.helmignore21
-rw-r--r--kubernetes/uui/charts/uui-server/Chart.yaml18
-rw-r--r--kubernetes/uui/charts/uui-server/templates/NOTES.txt19
-rw-r--r--kubernetes/uui/charts/uui-server/templates/deployment.yaml59
-rw-r--r--kubernetes/uui/charts/uui-server/templates/service.yaml50
-rw-r--r--kubernetes/uui/charts/uui-server/values.yaml83
-rw-r--r--kubernetes/uui/requirements.yaml21
-rw-r--r--kubernetes/uui/templates/NOTES.txt19
-rw-r--r--kubernetes/uui/templates/all-services.yaml72
-rw-r--r--kubernetes/uui/templates/deployment.yaml71
-rw-r--r--kubernetes/uui/templates/service.yaml51
-rw-r--r--kubernetes/uui/templates/uui-deployment.yaml54
-rw-r--r--kubernetes/uui/templates/uui-server-deployment.yaml52
-rw-r--r--kubernetes/uui/values.yaml80
-rw-r--r--kubernetes/vfc/Chart.yaml4
-rw-r--r--kubernetes/vfc/charts/vfc-catalog/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-catalog/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-catalog/resources/config/logging/log.yml50
-rw-r--r--kubernetes/vfc/charts/vfc-catalog/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-catalog/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-catalog/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-catalog/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-ems-driver/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-ems-driver/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-ems-driver/templates/deployment.yaml87
-rw-r--r--kubernetes/vfc/charts/vfc-ems-driver/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-ems-driver/values.yaml90
-rw-r--r--kubernetes/vfc/charts/vfc-generic-vnfm-driver/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-generic-vnfm-driver/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-generic-vnfm-driver/resources/config/logging/log.yml50
-rw-r--r--kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-generic-vnfm-driver/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-huawei-vnfm-driver/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-huawei-vnfm-driver/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-huawei-vnfm-driver/resources/config/logging/log4j.properties29
-rw-r--r--kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/deployment.yaml122
-rw-r--r--kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/service.yaml58
-rw-r--r--kubernetes/vfc/charts/vfc-huawei-vnfm-driver/values.yaml88
-rw-r--r--kubernetes/vfc/charts/vfc-juju-vnfm-driver/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-juju-vnfm-driver/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-juju-vnfm-driver/resources/config/logging/log4j.properties34
-rw-r--r--kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-juju-vnfm-driver/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-multivim-proxy/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-multivim-proxy/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-multivim-proxy/templates/deployment.yaml83
-rw-r--r--kubernetes/vfc/charts/vfc-multivim-proxy/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-multivim-proxy/values.yaml85
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/templates/deployment.yaml83
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/values.yaml87
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-vnfm-driver/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-vnfm-driver/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-vnfm-driver/resources/config/logging/logback.xml30
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-nokia-vnfm-driver/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-nslcm/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-nslcm/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-nslcm/resources/config/logging/log.yml50
-rw-r--r--kubernetes/vfc/charts/vfc-nslcm/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-nslcm/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-nslcm/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-nslcm/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-resmgr/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-resmgr/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-resmgr/resources/config/logging/log4j.properties29
-rw-r--r--kubernetes/vfc/charts/vfc-resmgr/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-resmgr/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-resmgr/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-resmgr/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-vnflcm/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-vnflcm/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-vnflcm/resources/config/logging/log.yml50
-rw-r--r--kubernetes/vfc/charts/vfc-vnflcm/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-vnflcm/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-vnflcm/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-vnflcm/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-vnfmgr/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-vnfmgr/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-vnfmgr/resources/config/logging/log.yml50
-rw-r--r--kubernetes/vfc/charts/vfc-vnfmgr/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-vnfmgr/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-vnfmgr/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-vnfmgr/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-vnfres/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-vnfres/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-vnfres/resources/config/logging/log.yml50
-rw-r--r--kubernetes/vfc/charts/vfc-vnfres/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-vnfres/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-vnfres/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-vnfres/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-workflow-engine/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-workflow-engine/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-workflow-engine/templates/deployment.yaml91
-rw-r--r--kubernetes/vfc/charts/vfc-workflow-engine/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-workflow-engine/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-workflow/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-workflow/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-workflow/templates/deployment.yaml91
-rw-r--r--kubernetes/vfc/charts/vfc-workflow/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-workflow/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-zte-sdnc-driver/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-zte-sdnc-driver/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-zte-sdnc-driver/templates/deployment.yaml83
-rw-r--r--kubernetes/vfc/charts/vfc-zte-sdnc-driver/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-zte-sdnc-driver/values.yaml86
-rw-r--r--kubernetes/vfc/charts/vfc-zte-vnfm-driver/.helmignore21
-rw-r--r--kubernetes/vfc/charts/vfc-zte-vnfm-driver/Chart.yaml18
-rw-r--r--kubernetes/vfc/charts/vfc-zte-vnfm-driver/resources/config/logging/log.yml50
-rw-r--r--kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/deployment.yaml121
-rw-r--r--kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/service.yaml51
-rw-r--r--kubernetes/vfc/charts/vfc-zte-vnfm-driver/values.yaml85
-rw-r--r--kubernetes/vfc/requirements.yaml18
-rw-r--r--kubernetes/vfc/resources/config/logging/filebeat/filebeat.yml41
-rw-r--r--kubernetes/vfc/templates/all-services.yaml448
-rw-r--r--kubernetes/vfc/templates/configmap.yaml21
-rw-r--r--kubernetes/vfc/templates/vfc-catalog-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-emsdriver-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-gvnfmdriver-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-hwvnfmdriver-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-jujudriver-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-nokiavnfmdriver-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-nslcm-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-resmgr-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-vnflcm-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-vnfmgr-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-vnfres-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-workflow-deployment.yaml58
-rw-r--r--kubernetes/vfc/templates/vfc-workflow-engine-activity.yaml58
-rw-r--r--kubernetes/vfc/templates/vfc-ztesdncdriver-deployment.yaml50
-rw-r--r--kubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml50
-rw-r--r--kubernetes/vfc/values.yaml96
-rw-r--r--kubernetes/vid/.helmignore21
-rw-r--r--kubernetes/vid/Chart.yaml4
-rw-r--r--kubernetes/vid/charts/mariadb/.helmignore21
-rw-r--r--kubernetes/vid/charts/mariadb/Chart.yaml18
-rw-r--r--[-rwxr-xr-x]kubernetes/vid/charts/mariadb/resources/config/lf_config/vid-my.cnf (renamed from kubernetes/vid/resources/config/lf_config/vid-my.cnf)0
-rw-r--r--kubernetes/vid/charts/mariadb/resources/config/lf_config/vid-pre-init.sql28
-rw-r--r--kubernetes/vid/charts/mariadb/templates/NOTES.txt11
-rw-r--r--kubernetes/vid/charts/mariadb/templates/configmap.yaml (renamed from kubernetes/vid/templates/vid-lfconfig-configmap.yaml)6
-rw-r--r--kubernetes/vid/charts/mariadb/templates/deployment.yaml109
-rw-r--r--kubernetes/vid/charts/mariadb/templates/pv.yaml37
-rw-r--r--kubernetes/vid/charts/mariadb/templates/pvc.yaml48
-rw-r--r--kubernetes/vid/charts/mariadb/templates/secrets.yaml28
-rw-r--r--kubernetes/vid/charts/mariadb/templates/service.yaml (renamed from kubernetes/cli/templates/all-service.yaml)25
-rw-r--r--kubernetes/vid/charts/mariadb/values.yaml102
-rw-r--r--kubernetes/vid/requirements.yaml21
-rwxr-xr-xkubernetes/vid/resources/config/lf_config/vid-pre-init.sql32
-rw-r--r--kubernetes/vid/templates/NOTES.txt19
-rw-r--r--kubernetes/vid/templates/configmap.yaml (renamed from kubernetes/vid/templates/vid-log-configmap.yaml)10
-rw-r--r--kubernetes/vid/templates/deployment.yaml162
-rw-r--r--kubernetes/vid/templates/secrets.yaml27
-rw-r--r--kubernetes/vid/templates/service.yaml39
-rw-r--r--kubernetes/vid/templates/vid-mariadb-deployment.yaml84
-rw-r--r--kubernetes/vid/templates/vid-pv-pvc.yaml48
-rw-r--r--kubernetes/vid/templates/vid-server-deployment.yaml141
-rw-r--r--kubernetes/vid/values.yaml99
-rw-r--r--kubernetes/vnfsdk/Chart.yaml4
-rw-r--r--kubernetes/vnfsdk/requirements.yaml21
-rw-r--r--kubernetes/vnfsdk/templates/NOTES.txt19
-rw-r--r--kubernetes/vnfsdk/templates/all-services.yaml48
-rw-r--r--kubernetes/vnfsdk/templates/deployment.yaml61
-rw-r--r--kubernetes/vnfsdk/templates/postgres-deployment.yaml40
-rw-r--r--kubernetes/vnfsdk/templates/refrepo-deployment.yaml59
-rw-r--r--kubernetes/vnfsdk/templates/service.yaml38
-rw-r--r--kubernetes/vnfsdk/values.yaml72
1344 files changed, 44764 insertions, 45744 deletions
diff --git a/kubernetes/Makefile b/kubernetes/Makefile
index 4962c825d8..7b19e6e773 100644
--- a/kubernetes/Makefile
+++ b/kubernetes/Makefile
@@ -51,7 +51,7 @@ package-%: lint-%
clean:
@rm -f */requirements.lock
- @rm -f *tgz */charts/*tgz
+ @find . -type f -name '*.tgz' -delete
@rm -rf $(PACKAGE_DIR)/*
# start up a local helm repo to serve up helm chart packages
diff --git a/kubernetes/README.md b/kubernetes/README.md
index 9c315cbafe..9d8d4cc9ab 100644
--- a/kubernetes/README.md
+++ b/kubernetes/README.md
@@ -18,7 +18,7 @@ Step 1. Clone the OOM repository from ONAP gerrit:
> cd oom/kubernetes
```
-Step 2. Customize the oom/kubernetes/onap parent chart, like the values.yaml file, to suit your deployment. You may want to selectively enable or disable ONAP components by changing the subchart **enabled** flags to *true* or *false*.
+Step 2. Customize the oom/kubernetes/onap parent chart, like the values.yaml file, to suit your deployment. You may want to selectively enable or disable ONAP components by changing the subchart **enabled** flags to *true* or *false*. The .yaml file for OpenStackEncryptedPassword should be the MSO ecnrypted value of the openstack tenant password
```
Example:
...
@@ -32,8 +32,8 @@ so: # Service Orchestrator
enabled: true
...
```
-
Step 3. To setup a local Helm repository to serve up the local ONAP charts:
+ [Note: ensure helm init has been executed on the node, or run helm init --client-only]
```
> helm serve &
```
@@ -64,7 +64,7 @@ Setup of this Helm repository is a one time activity. If you make changes to you
Step 6. Once the repo is setup, installation of ONAP can be done with a single command:
```
-> helm install local/onap -name dev --namespace onap
+> helm install local/onap --name dev --namespace onap
```
**Note:** the **--namespace onap** is currently required while all onap helm charts are migrated to version 2.0. After this activity is complete, namespaces will be optional.
diff --git a/kubernetes/aaf/.helmignore b/kubernetes/aaf/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aaf/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/aaf/Chart.yaml b/kubernetes/aaf/Chart.yaml
index 24cb7fddf3..438835de40 100644
--- a/kubernetes/aaf/Chart.yaml
+++ b/kubernetes/aaf/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Application Authorization Framework
name: aaf
-version: 1.1.0
+version: 2.0.0
diff --git a/kubernetes/aaf/charts/aaf-cm/.helmignore b/kubernetes/aaf/charts/aaf-cm/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cm/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/mock/values.yaml b/kubernetes/aaf/charts/aaf-cm/Chart.yaml
index 809ad90d3b..00832d69e4 100644
--- a/kubernetes/mock/values.yaml
+++ b/kubernetes/aaf/charts/aaf-cm/Chart.yaml
@@ -12,9 +12,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-image:
- onapmock: nexus3.onap.org:10001/onap/sniroemulator
- tag: latest
+apiVersion: v1
+description: ONAP AAF Certificate Manager
+name: aaf-cm
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-cm/templates/NOTES.txt b/kubernetes/aaf/charts/aaf-cm/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cm/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml
new file mode 100644
index 0000000000..652e2ac040
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cm/templates/deployment.yaml
@@ -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:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ 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:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/cm/bin/cm >> /opt/app/osaaf/logs/cm/stdout`date -I` 2>> /opt/app/osaaf/logs/cm/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # 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 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: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-cm/templates/service.yaml b/kubernetes/aaf/charts/aaf-cm/templates/service.yaml
new file mode 100644
index 0000000000..281aa1cc8d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cm/templates/service.yaml
@@ -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:
+ 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 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/aaf/charts/aaf-cm/values.yaml b/kubernetes/aaf/charts/aaf-cm/values.yaml
new file mode 100644
index 0000000000..b6f70344bc
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cm/values.yaml
@@ -0,0 +1,85 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_cm:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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:
+ name: aaf-cm
+ type: ClusterIP
+ portName: aaf-cm
+ #targetPort
+ internalPort: 8150
+ #port
+ externalPort: 8150
+
+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/aaf/charts/aaf-cs/.helmignore b/kubernetes/aaf/charts/aaf-cs/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/aaf/charts/aaf-cs/Chart.yaml b/kubernetes/aaf/charts/aaf-cs/Chart.yaml
new file mode 100644
index 0000000000..a0f05c4cf3
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/Chart.yaml
@@ -0,0 +1,4 @@
+apiVersion: v1
+description: ONAP AAF cassandra
+name: aaf-cs
+version: 2.0.0
diff --git a/kubernetes/aaf/resources/config/aaf-cs-data/init.cql b/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/init.cql
index 81700f830c..c06e5ee952 100644
--- a/kubernetes/aaf/resources/config/aaf-cs-data/init.cql
+++ b/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/init.cql
@@ -1,35 +1,6 @@
-// For Developer Machine single instance
-//
-CREATE KEYSPACE authz
-WITH REPLICATION = {'class' : 'SimpleStrategy','replication_factor':1};
-//
-// From Ravi, 6-17-2014. User for DEVL->TEST
-//
-// CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'HYWRCA02': '2', 'BRHMALDC': '2' };
-//
-// PROD
-//
-// CREATE KEYSPACE authz WITH replication = {'class': 'NetworkTopologyStrategy','ALPSGACT': '2','STLSMORC': '2','BRHMALDC': '2' };
-//
-// create user authz with password '<AUTHZ PASSWORD>' superuser;
-// grant all on keyspace authz to authz;
-//
-// For TEST (aaf_test)
-// CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'BRHMALDC': '1' };
-//
-// DEVL
-// CREATE KEYSPACE authz WITH replication = {'class': 'NetworkTopologyStrategy','STLSMORC': '2' };
-//
-// TEST / PERF
-// CREATE KEYSPACE authz WITH replication = {'class': 'NetworkTopologyStrategy','STLSMORC': '3','KGMTNC20': '3' };
-//
-// IST
-// CREATE KEYSPACE authz WITH replication = {'class': 'NetworkTopologyStrategy','STLSMORC':'3',
-// 'DLLSTXCF':'3','KGMTNC20':'3','SFLDMIBB':'3','HYWRCA02':'3' };
-//
-// with 6 localized with ccm
-// CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc1': '2', 'dc2': '2' };
-//
+
+// Table Initialization
+// First make sure the keyspace exists.
USE authz;
@@ -51,12 +22,6 @@ CREATE TABLE ns (
);
CREATE INDEX ns_parent on ns(parent);
-
-// Oct 2015, not performant. Made Owner and Attrib first class Roles,
-// April, 2015. Originally, the plan was to utilize Cassandra 2.1.2, however, other team's preferences were to remain at current levels.
-// Therefore, we are taking the separate table approach. (coder Jeremiah Rohwedder)
-// We had dropped this by making first class objects of Responsible (Owner) and Admin. We need this again to mark namespaces
-// as having certain tools, like SWM, etc.
CREATE TABLE ns_attrib (
ns varchar,
key varchar,
@@ -125,10 +90,10 @@ CREATE INDEX cert_id ON cert(id);
CREATE INDEX cert_x500 ON cert(x500);
CREATE TABLE notify (
- user text,
- type int,
- last timestamp,
- checksum int,
+ user text,
+ type int,
+ last timestamp,
+ checksum int,
PRIMARY KEY (user,type)
);
@@ -155,14 +120,16 @@ CREATE TABLE artifact (
sponsor text,
ca text,
dir text,
- appName text,
os_user text,
+ ns text,
notify text,
expires timestamp,
- renewDays int,
+ renewDays int,
+ sans Set<text>,
PRIMARY KEY (mechid,machine)
);
CREATE INDEX artifact_machine ON artifact(machine);
+CREATE INDEX artifact_ns ON artifact(ns);
//
// Non-Critical Table functions
@@ -216,6 +183,7 @@ CREATE TABLE approval (
status varchar, // approval status. pending, approved, denied
memo varchar, // Text for Approval to know what's going on
operation varchar, // List operation to perform
+ last_notified timestamp, // Timestamp for the last time approver was notified
PRIMARY KEY(id)
);
CREATE INDEX appr_approver_idx ON approval(approver);
@@ -223,6 +191,19 @@ CREATE INDEX appr_user_idx ON approval(user);
CREATE INDEX appr_ticket_idx ON approval(ticket);
CREATE INDEX appr_status_idx ON approval(status);
+CREATE TABLE approved (
+ id timeuuid, // unique Key
+ user varchar, // the user who needs to be approved
+ approver varchar, // user approving
+ type varchar, // approver types i.e. Supervisor, Owner
+ status varchar, // approval status. pending, approved, denied
+ memo varchar, // Text for Approval to know what's going on
+ operation varchar, // List operation to perform
+ PRIMARY KEY(id)
+ );
+CREATE INDEX approved_approver_idx ON approved(approver);
+CREATE INDEX approved_user_idx ON approved(user);
+
CREATE TABLE delegate (
user varchar,
delegate varchar,
@@ -231,6 +212,49 @@ CREATE TABLE delegate (
);
CREATE INDEX delg_delg_idx ON delegate(delegate);
+// OAuth Tokens
+CREATE TABLE oauth_token (
+ id text, // Reference
+ client_id text, // Creating Client ID
+ user text, // User requesting
+ active boolean, // Active or not
+ type int, // Type of Token
+ refresh text, // Refresh Token
+ expires timestamp, // Expiration time/Date (signed long)
+ exp_sec bigint, // Seconds from Jan 1, 1970
+ content text, // Content of Token
+ scopes Set<text>, // Scopes
+ state text, // Context string (Optional)
+ req_ip text, // Requesting IP (for logging purpose)
+ PRIMARY KEY(id)
+) with default_time_to_live = 21600; // 6 hours
+CREATE INDEX oauth_token_user_idx ON oauth_token(user);
+
+CREATE TABLE locate (
+ name text, // Component/Server name
+ hostname text, // FQDN of Service/Component
+ port int, // Port of Service
+ major int, // Version, Major
+ minor int, // Version, Minor
+ patch int, // Version, Patch
+ pkg int, // Version, Package (if available)
+ latitude float, // Latitude
+ longitude float, // Longitude
+ protocol text, // Protocol (i.e. http https)
+ subprotocol set<text>, // Accepted SubProtocols, ie. TLS1.1 for https
+ port_key uuid, // Key into locate_ports
+ PRIMARY KEY(name,hostname,port)
+) with default_time_to_live = 1200; // 20 mins
+
+CREATE TABLE locate_ports (
+ id uuid, // Id into locate
+ port int, // SubPort
+ name text, // Name of Other Port
+ protocol text, // Protocol of Other (i.e. JMX, DEBUG)
+ subprotocol set<text>, // Accepted sub protocols or versions
+ PRIMARY KEY(id, port)
+) with default_time_to_live = 1200; // 20 mins;
+
//
// Used by authz-batch processes to ensure only 1 runs at a time
//
diff --git a/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/keyspace.cql b/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/keyspace.cql
new file mode 100644
index 0000000000..52dc5ea77e
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/keyspace.cql
@@ -0,0 +1,11 @@
+// For Developer Machine single instance
+// CREATE KEYSPACE authz
+// WITH REPLICATION = {'class' : 'SimpleStrategy','replication_factor':1};
+//
+//
+
+// Example of Network Topology, with Datacenter dc1 & dc2
+// CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc1': '2', 'dc2': '2' };
+// Out of the box Docker Cassandra comes with "datacenter1", one instance
+CREATE KEYSPACE authz WITH replication = { 'class': 'NetworkTopologyStrategy', 'datacenter1': '1' };
+//
diff --git a/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/osaaf.cql b/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/osaaf.cql
new file mode 100644
index 0000000000..e7385ab69d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/osaaf.cql
@@ -0,0 +1,122 @@
+USE authz;
+
+// Create 'org' root NS
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org','Root Namespace','.',1,1);
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org','admin',{'org.access|*|*'},'Org Admins');
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org','owner',{'org.access|*|read,approve'},'Org Owners');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org','access','*','read,approve',{'org.owner'},'Org Read Access');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org','access','*','*',{'org.admin'},'Org Write Access');
+
+// Create Root pass
+INSERT INTO cred (id,ns,type,cred,expires)
+ VALUES ('initial@osaaf.org','org.osaaf',1,0x008c5926ca861023c1d2a36653fd88e2,'2099-12-31') using TTL 14400;
+
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('initial@osaaf.org','org.admin','2099-12-31','org','admin') using TTL 14400;
+
+
+// Create org.osaaf
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org.osaaf','OSAAF Namespace','org',2,2);
+
+INSERT INTO role(ns, name, perms,description)
+ VALUES('org.osaaf','admin',{'org.osaaf.access|*|*'},'OSAAF Admins');
+
+INSERT INTO perm(ns, type, instance, action, roles,description)
+ VALUES ('org.osaaf','access','*','*',{'org.osaaf.admin'},'OSAAF Write Access');
+
+INSERT INTO role(ns, name, perms,description)
+ VALUES('org.osaaf','owner',{'org.osaaf.access|*|read,approve'},'OSAAF Owners');
+
+INSERT INTO perm(ns, type, instance, action, roles,description)
+ VALUES ('org.osaaf','access','*','read,appove',{'org.osaaf.owner'},'OSAAF Read Access');
+
+// Create org.osaaf.aaf
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org.osaaf.aaf','Application Authorization Framework','org.osaaf',3,3);
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.osaaf.aaf','admin',{'org.osaaf.aaf.access|*|*'},'AAF Admins');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org.osaaf.aaf','access','*','*',{'org.osaaf.aaf.admin'},'AAF Write Access');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org.osaaf.aaf','access','*','read,approve',{'org.osaaf.aaf.owner'},'AAF Read Access');
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.osaaf.aaf','owner',{'org.osaaf.aaf.access|*|read,approve'},'AAF Owners');
+
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('initial@osaaf.org','org.osaaf.aaf.admin','2099-12-31','org.osaaf.aaf','admin') using TTL 14400;
+
+
+// ONAP Specific Entities
+// ONAP initial env Namespace
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org.onap','ONAP','org',2,2);
+
+INSERT INTO ns (name,description,parent,scope,type)
+ VALUES('org.onap.portal','ONAP Portal','org.onap.portal',3,3);
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org.onap.portal','access','*','read',{
+ 'org.onap.portal.owner','org.onap.portal.designer','org.onap.portal.tester','org.onap.portal.ops','org.onap.portal.governor'
+ },'Portal Read Access');
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','owner',{'org.onap.portal.access|*|read'},'Portal Owner');
+
+INSERT INTO perm(ns, type, instance, action, roles, description)
+ VALUES ('org.onap.portal','access','*','*',{'org.onap.portal.admin'},'Portal Write Access');
+
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','admin',{'org.onap.portal.access|*|*'},'Portal Admins');
+
+// DEMO ID (OPS)
+insert into cred (id,type,expires,cred,notes,ns,other) values('demo@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('demo@people.osaaf.org','org.onap.portal.admin','2018-10-31','org.onap.portal','admin');
+
+// ADMIN
+insert into cred (id,type,expires,cred,notes,ns,other) values('jh0003@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('jh0003@people.osaaf.org','org.onap.portal.admin','2018-10-31','org.onap.portal','admin');
+
+// DESIGNER
+INSERT INTO cred (id,type,expires,cred,notes,ns,other) values('cs0008@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','designer',{'org.onap.portal.access|*|read'},'Portal Designer');
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('cs0008@people.osaaf.org','org.onap.portal.designer','2018-10-31','org.onap.portal','designer');
+
+// TESTER
+INSERT INTO cred (id,type,expires,cred,notes,ns,other) values('jm0007@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','tester',{'org.onap.portal.access|*|read'},'Portal Tester');
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('jm0007@people.osaaf.org','org.onap.portal.tester','2018-10-31','org.onap.portal','tester');
+
+// OPS
+INSERT INTO cred (id,type,expires,cred,notes,ns,other) values('op0001@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','ops',{'org.onap.portal.access|*|read'},'Portal Operations');
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('op0001@people.osaaf.org','org.onap.portal.ops','2018-10-31','org.onap.portal','ops');
+
+// GOVERNOR
+INSERT INTO cred (id,type,expires,cred,notes,ns,other) values('gv0001@people.osaaf.org',2,'2019-05-01',0xd993c5617486296f1b99d04de31633332b8ba1a550038e23860f9dbf0b2fcf95,'Initial ID','org.osaaf.people',53344);
+INSERT INTO role(ns, name, perms, description)
+ VALUES('org.onap.portal','governor',{'org.onap.portal.access|*|read'},'Portal Governor');
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('gv0001@people.osaaf.org','org.onap.portal.governor','2018-10-31','org.onap.portal','governor');
+
diff --git a/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/temp_identity.cql b/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/temp_identity.cql
new file mode 100644
index 0000000000..5e7cfe1741
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/resources/config/aaf-cs-data/temp_identity.cql
@@ -0,0 +1,8 @@
+USE authz;
+
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('demo@people.osaaf.org','org.admin','2099-12-31','org','admin') ;
+
+INSERT INTO user_role(user,role,expires,ns,rname)
+ VALUES ('demo@people.osaaf.org','org.osaaf.aaf.admin','2099-12-31','org.osaaf.aaf','admin') ;
+
diff --git a/kubernetes/aaf/charts/aaf-cs/templates/NOTES.txt b/kubernetes/aaf/charts/aaf-cs/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml
new file mode 100644
index 0000000000..4253d2fb71
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml
@@ -0,0 +1,95 @@
+# 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: {{ include "common.name" . }}
+ containers:
+ - args:
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ - containerPort: {{ .Values.service.externalPort3 }}
+ - containerPort: {{ .Values.service.externalPort4 }}
+ volumeMounts:
+ - mountPath: /data
+ name: aaf-cs-data
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # 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.internalPort3 }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort3 }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ lifecycle:
+ postStart:
+ exec:
+ command:
+ - /bin/sh
+ - -c
+ - >
+ /bin/sleep 30;
+ cd /data/;
+ cqlsh -u root -p root -f keyspace.cql ;
+ cqlsh -u root -p root -f init.cql ;
+ cqlsh -u root -p root -f osaaf.cql ;
+ cqlsh -u root -p root -f temp_identity.cql
+ 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: aaf-cs-data
+ secret:
+ secretName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/templates/aaf-secret.yaml b/kubernetes/aaf/charts/aaf-cs/templates/secret.yaml
index 842d0c431e..4ae60f17c9 100644
--- a/kubernetes/aaf/templates/aaf-secret.yaml
+++ b/kubernetes/aaf/charts/aaf-cs/templates/secret.yaml
@@ -12,13 +12,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableAafAafCs }}
apiVersion: v1
kind: Secret
metadata:
- name: aaf-cs-data-secret
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
type: Opaque
data:
{{ (.Files.Glob "resources/config/aaf-cs-data/*").AsSecrets | indent 2 }}
-#{{ end }}
diff --git a/kubernetes/aaf/charts/aaf-cs/templates/service.yaml b/kubernetes/aaf/charts/aaf-cs/templates/service.yaml
new file mode 100644
index 0000000000..b1716e4936
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/templates/service.yaml
@@ -0,0 +1,62 @@
+# 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 }}
+# annotations:
+# service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+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 }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: {{ .Values.service.portName }}4
+ {{- 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
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
diff --git a/kubernetes/aaf/charts/aaf-cs/values.yaml b/kubernetes/aaf/charts/aaf-cs/values.yaml
new file mode 100644
index 0000000000..6d5ed6c2ad
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-cs/values.yaml
@@ -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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: library/cassandra:3.11
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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:
+ name: aaf-cass
+ type: ClusterIP
+ portName: aaf-cs
+ #targetPort
+ internalPort: 7000
+ #port
+ externalPort: 7000
+
+ internalPort2: 7001
+ externalPort2: 7001
+ internalPort3: 9042
+ externalPort3: 9042
+ internalPort4: 9160
+ externalPort4: 9160
+
+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/aaf/charts/aaf-fs/.helmignore b/kubernetes/aaf/charts/aaf-fs/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-fs/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/mso/Chart.yaml b/kubernetes/aaf/charts/aaf-fs/Chart.yaml
index b4edecc4bd..6b0fdcb6fd 100644
--- a/kubernetes/mso/Chart.yaml
+++ b/kubernetes/aaf/charts/aaf-fs/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
-name: mso
-version: 1.1.0
+description: ONAP AAF File Server
+name: aaf-fs
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-fs/templates/NOTES.txt b/kubernetes/aaf/charts/aaf-fs/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-fs/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml
new file mode 100644
index 0000000000..0bbd6a5a36
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-fs/templates/deployment.yaml
@@ -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:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ 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:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c","echo hello >> /opt/app/osaaf/logs/fs/stdout`date -I`;ln -s /opt/app/osaaf/data /data;/opt/app/aaf/fs/bin/fs >> /opt/app/osaaf/logs/fs/stdout`date -I` 2>> /opt/app/osaaf/logs/fs/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # 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 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: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-fs/templates/service.yaml b/kubernetes/aaf/charts/aaf-fs/templates/service.yaml
new file mode 100644
index 0000000000..281aa1cc8d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-fs/templates/service.yaml
@@ -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:
+ 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 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/aaf/charts/aaf-fs/values.yaml b/kubernetes/aaf/charts/aaf-fs/values.yaml
new file mode 100644
index 0000000000..b8a2663cc8
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-fs/values.yaml
@@ -0,0 +1,85 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_fs:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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:
+ name: aaf-fs
+ type: ClusterIP
+ portName: aaf-fs
+ #targetPort
+ internalPort: 8096
+ #port
+ externalPort: 8096
+
+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/aaf/charts/aaf-gui/.helmignore b/kubernetes/aaf/charts/aaf-gui/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-gui/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/mock/Chart.yaml b/kubernetes/aaf/charts/aaf-gui/Chart.yaml
index e5d38b65f8..d0aea0b0e0 100644
--- a/kubernetes/mock/Chart.yaml
+++ b/kubernetes/aaf/charts/aaf-gui/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
-name: mock
-version: 0.1.0
+description: ONAP AAF GUI
+name: aaf-gui
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-gui/templates/NOTES.txt b/kubernetes/aaf/charts/aaf-gui/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-gui/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml
new file mode 100644
index 0000000000..ee503caceb
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-gui/templates/deployment.yaml
@@ -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:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ 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:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/gui/bin/gui >> /opt/app/osaaf/logs/gui/stdout`date -I` 2>> /opt/app/osaaf/logs/gui/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # 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 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: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-gui/templates/service.yaml b/kubernetes/aaf/charts/aaf-gui/templates/service.yaml
new file mode 100644
index 0000000000..281aa1cc8d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-gui/templates/service.yaml
@@ -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:
+ 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 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/aaf/charts/aaf-gui/values.yaml b/kubernetes/aaf/charts/aaf-gui/values.yaml
new file mode 100644
index 0000000000..9aa79fd40c
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-gui/values.yaml
@@ -0,0 +1,86 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_gui:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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:
+ name: aaf-gui
+ type: NodePort
+ portName: aaf-gui
+ #targetPort
+ internalPort: 8200
+ #port
+ externalPort: 8200
+ nodePort: 51
+
+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/aaf/charts/aaf-hello/.helmignore b/kubernetes/aaf/charts/aaf-hello/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-hello/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/aaf/charts/aaf-hello/Chart.yaml b/kubernetes/aaf/charts/aaf-hello/Chart.yaml
new file mode 100644
index 0000000000..c4029ba80f
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-hello/Chart.yaml
@@ -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 AAF Hello
+name: aaf-hello
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-hello/templates/NOTES.txt b/kubernetes/aaf/charts/aaf-hello/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-hello/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml
new file mode 100644
index 0000000000..b47d878f25
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml
@@ -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:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ 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:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/hello/bin/hello >> /opt/app/osaaf/logs/hello/stdout`date -I` 2>> /opt/app/osaaf/logs/hello/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # 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 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: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-hello/templates/service.yaml b/kubernetes/aaf/charts/aaf-hello/templates/service.yaml
new file mode 100644
index 0000000000..281aa1cc8d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-hello/templates/service.yaml
@@ -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:
+ 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 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/aaf/charts/aaf-hello/values.yaml b/kubernetes/aaf/charts/aaf-hello/values.yaml
new file mode 100644
index 0000000000..c05ab56047
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-hello/values.yaml
@@ -0,0 +1,85 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_hello:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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:
+ name: aaf-hello
+ type: ClusterIP
+ portName: aaf-hello
+ #targetPort
+ internalPort: 8130
+ #port
+ externalPort: 8130
+
+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/aaf/charts/aaf-locate/.helmignore b/kubernetes/aaf/charts/aaf-locate/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-locate/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/aaf/charts/aaf-locate/Chart.yaml b/kubernetes/aaf/charts/aaf-locate/Chart.yaml
new file mode 100644
index 0000000000..db50ec392a
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-locate/Chart.yaml
@@ -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 AAF Locate
+name: aaf-locate
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-locate/templates/NOTES.txt b/kubernetes/aaf/charts/aaf-locate/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-locate/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml
new file mode 100644
index 0000000000..de5a46ec5b
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-locate/templates/deployment.yaml
@@ -0,0 +1,112 @@
+# 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:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ 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:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/locate/bin/locate >> /opt/app/osaaf/logs/locate/stdout`date -I` 2>> /opt/app/osaaf/logs/locate/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # 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 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: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-locate/templates/service.yaml b/kubernetes/aaf/charts/aaf-locate/templates/service.yaml
new file mode 100644
index 0000000000..281aa1cc8d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-locate/templates/service.yaml
@@ -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:
+ 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 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/aaf/charts/aaf-locate/values.yaml b/kubernetes/aaf/charts/aaf-locate/values.yaml
new file mode 100644
index 0000000000..e9b42cbf3d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-locate/values.yaml
@@ -0,0 +1,89 @@
+# 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
+
+# If mountPath is over NFS (e.g. /dockerdata-nfs is NFS mounted between the nodes), uncomment following lines.
+# persistence:
+# mountPath: /dockerdata
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_locate:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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:
+ name: aaf-locate
+ type: ClusterIP
+ portName: aaf-locate
+ #targetPort
+ internalPort: 8095
+ #port
+ externalPort: 8095
+
+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/aaf/charts/aaf-oauth/.helmignore b/kubernetes/aaf/charts/aaf-oauth/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-oauth/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/aaf/charts/aaf-oauth/Chart.yaml b/kubernetes/aaf/charts/aaf-oauth/Chart.yaml
new file mode 100644
index 0000000000..bcb135b1e0
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-oauth/Chart.yaml
@@ -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 AAF OAuth
+name: aaf-oauth
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-oauth/templates/NOTES.txt b/kubernetes/aaf/charts/aaf-oauth/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-oauth/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml
new file mode 100644
index 0000000000..00d6ee0e59
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-oauth/templates/deployment.yaml
@@ -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:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ 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:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/oauth/bin/oauth >> /opt/app/osaaf/logs/oauth/stdout`date -I` 2>> /opt/app/osaaf/logs/oauth/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # 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 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: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-oauth/templates/service.yaml b/kubernetes/aaf/charts/aaf-oauth/templates/service.yaml
new file mode 100644
index 0000000000..281aa1cc8d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-oauth/templates/service.yaml
@@ -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:
+ 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 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/aaf/charts/aaf-oauth/values.yaml b/kubernetes/aaf/charts/aaf-oauth/values.yaml
new file mode 100644
index 0000000000..344d13838e
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-oauth/values.yaml
@@ -0,0 +1,85 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_oauth:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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:
+ name: aaf-oauth
+ type: ClusterIP
+ portName: aaf-oauth
+ #targetPort
+ internalPort: 8140
+ #port
+ externalPort: 8140
+
+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/aaf/charts/aaf-service/Chart.yaml b/kubernetes/aaf/charts/aaf-service/Chart.yaml
new file mode 100644
index 0000000000..3461f1add1
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-service/Chart.yaml
@@ -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 AAF Service
+name: aaf-service
+version: 2.0.0
diff --git a/kubernetes/aaf/charts/aaf-service/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-service/templates/deployment.yaml
new file mode 100644
index 0000000000..9fd6eba534
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-service/templates/deployment.yaml
@@ -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:
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/job_complete.py
+ args:
+ - -j
+ - {{ .Release.Name }}-aaf-create-config
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-job-complete
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aaf-cs
+ - --container-name
+ - aaf-locate
+ 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:
+ - env:
+ - name: CASSANDRA_CLUSTER
+ value: cassandra_container
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["/bin/bash","-c"," ln -s /opt/app/osaaf/data /data;/opt/app/aaf/service/bin/service >> /opt/app/osaaf/logs/service/stdout`date -I` 2>> /opt/app/osaaf/logs/service/stderr`date -I`"]
+ volumeMounts:
+ - mountPath: /opt/app/osaaf
+ name: aaf-persistent-vol
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ # 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 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: aaf-persistent-vol
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-service/templates/service.yaml b/kubernetes/aaf/charts/aaf-service/templates/service.yaml
new file mode 100644
index 0000000000..281aa1cc8d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-service/templates/service.yaml
@@ -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:
+ 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 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/aaf/charts/aaf-service/values.yaml b/kubernetes/aaf/charts/aaf-service/values.yaml
new file mode 100644
index 0000000000..361aa47f07
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-service/values.yaml
@@ -0,0 +1,86 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/aaf_service:2.1.0-SNAPSHOT
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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:
+ name: aaf-service
+ type: NodePort
+ portName: aaf-service
+ #targetPort
+ internalPort: 8100
+ #port
+ externalPort: 8100
+ nodePort: 47
+
+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/aaf/charts/aaf-sms/Chart.yaml b/kubernetes/aaf/charts/aaf-sms/Chart.yaml
new file mode 100644
index 0000000000..71418759fb
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/Chart.yaml
@@ -0,0 +1,18 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: ONAP Secret Management Service
+name: aaf-sms
+version: 2.0.0
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/Chart.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/Chart.yaml
new file mode 100644
index 0000000000..4e279e7ced
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/Chart.yaml
@@ -0,0 +1,18 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: ONAP Secret Management Service Quorum Client
+name: aaf-sms-quorumclient
+version: 2.0.0
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/resources/config/config.json b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/resources/config/config.json
new file mode 100644
index 0000000000..3a43f00019
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/resources/config/config.json
@@ -0,0 +1,7 @@
+{
+ "url":"https://aaf-sms.{{ include "common.namespace" . }}:10443",
+ "cafile": "/quorumclient/certs/aaf_root_ca.cer",
+ "clientcert":"client.cert",
+ "clientkey":"client.key",
+ "timeout":"10s"
+} \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/configmap.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/configmap.yaml
new file mode 100644
index 0000000000..9905a3cbee
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/configmap.yaml
@@ -0,0 +1,26 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: 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 }} \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/pv.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/pv.yaml
new file mode 100644
index 0000000000..da0949816e
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/pv.yaml
@@ -0,0 +1,37 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- 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/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/pvc.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/pvc.yaml
new file mode 100644
index 0000000000..e6aacd1b96
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/pvc.yaml
@@ -0,0 +1,48 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- 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/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/statefulset.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/statefulset.yaml
new file mode 100644
index 0000000000..281229f95c
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/templates/statefulset.yaml
@@ -0,0 +1,74 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ serviceName:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ name: {{ include "common.name" . }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/quorumclient/bin/quorumclient"]
+ workingDir: /quorumclient/
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /quorumclient/config.json
+ name: {{ include "common.name" .}}
+ subPath: config.json
+ - mountPath: /quorumclient/auth
+ name: {{ include "common.fullname" . }}-auth
+ 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 : {{ include "common.name" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: config.json
+ path: config.json
+ mode: 0755
+ - name: {{ include "common.fullname" . }}-auth
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/values.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/values.yaml
new file mode 100644
index 0000000000..768f89fb7e
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-quorumclient/values.yaml
@@ -0,0 +1,74 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/smsquorumclient:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+# default number of instances
+replicaCount: 3
+
+nodeSelector: {}
+
+affinity: {}
+
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteOnce
+ size: 10Mi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sms/quorum/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/aaf/charts/aaf-sms/charts/aaf-sms-vault/Chart.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/Chart.yaml
new file mode 100644
index 0000000000..3f0b93ea0e
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/Chart.yaml
@@ -0,0 +1,19 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: Chart to launch Vault as SMS backend
+name: aaf-sms-vault
+appVersion: 0.9.5
+version: 2.0.0
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/configmap.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/configmap.yaml
new file mode 100644
index 0000000000..daf8cadc46
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/configmap.yaml
@@ -0,0 +1,41 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-vault
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ config.json: |
+ {{ .Values.config.vault | toJson }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-consul
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ config.json: |
+ {{ .Values.config.consul | toJson }}
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/pv.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/pv.yaml
new file mode 100644
index 0000000000..da0949816e
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/pv.yaml
@@ -0,0 +1,37 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- 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/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/pvc.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/pvc.yaml
new file mode 100644
index 0000000000..e6aacd1b96
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/pvc.yaml
@@ -0,0 +1,48 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- 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/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/service.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/service.yaml
new file mode 100644
index 0000000000..04e9a5a92f
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/service.yaml
@@ -0,0 +1,39 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - 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 }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ protocol: TCP
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/statefulset.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/statefulset.yaml
new file mode 100644
index 0000000000..ddfc7c61d0
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/templates/statefulset.yaml
@@ -0,0 +1,79 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ serviceName:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image.vault }}"
+ name: {{ include "common.name" . }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["vault","server","-config","/vault/config/config.json"]
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ volumeMounts:
+ - mountPath: /vault/config/config.json
+ name: {{ include "common.fullname" . }}-vault
+ subPath: config.json
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+
+ - image: "{{ include "common.repository" . }}/{{ .Values.image.consul }}"
+ name: {{ include "common.name" . }}-backend
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["consul","agent","-server","-client","0.0.0.0","-bootstrap-expect=1","-config-file","/consul/config/config.json"]
+ ports:
+ - name: http
+ containerPort: 8500
+ volumeMounts:
+ - mountPath: /consul/data
+ name: {{ include "common.fullname" . }}-consuldata
+ - mountPath: /consul/config/config.json
+ name: {{ include "common.fullname" . }}-consulconfiguration
+ subPath: config.json
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ volumes:
+ - name: {{ include "common.fullname" . }}-consuldata
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-consulconfiguration
+ configMap:
+ name: {{ include "common.fullname" . }}-consul
+ - name: {{ include "common.fullname" . }}-vault
+ configMap:
+ name: {{ include "common.fullname" . }}-vault
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
diff --git a/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/values.yaml b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/values.yaml
new file mode 100644
index 0000000000..317abcda08
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/charts/aaf-sms-vault/values.yaml
@@ -0,0 +1,110 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ persistence: {}
+
+# application image
+repository: nexus3.onap.org:10001
+image:
+ consul: library/consul:1.0.6
+ vault: library/vault:0.10.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+config:
+ consul:
+ server: true
+ log_level: INFO
+ server: true
+ data_dir: '/consul/data'
+ ports:
+ http: 8500
+ https: -1
+
+ vault:
+ storage:
+ consul:
+ address: localhost:8500
+ path: smsvault
+ listener:
+ tcp:
+ address: '[::]:8200'
+ tls_disable: true
+ disable_mlock: true
+
+# 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
+
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteOnce
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sms/consul/data
+
+service:
+ type: NodePort
+ name: aaf-sms-db
+ portName: aaf-sms-db
+ internalPort: 8200
+ nodePort: 44
+
+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/aaf/charts/aaf-sms/templates/configmap.yaml b/kubernetes/aaf/charts/aaf-sms/templates/configmap.yaml
new file mode 100644
index 0000000000..72ce6fbadb
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/templates/configmap.yaml
@@ -0,0 +1,27 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: 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:
+ smsconfig.json: |
+ {{ .Values.config | toJson }}
diff --git a/kubernetes/aaf/charts/aaf-sms/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-sms/templates/deployment.yaml
new file mode 100644
index 0000000000..4bdb84fa30
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/templates/deployment.yaml
@@ -0,0 +1,87 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: 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:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ name: {{ include "common.name" . }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/sms/bin/sms"]
+ workingDir: /sms/
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ httpGet:
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTPS
+ path: /v1/sms/quorum/status
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ httpGet:
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTPS
+ path: /v1/sms/quorum/status
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /sms/smsconfig.json
+ name: {{ include "common.name" .}}
+ subPath: smsconfig.json
+ - mountPath: /sms/auth
+ name: {{ include "common.fullname" . }}-auth
+ 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 : {{ include "common.name" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-auth
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/aaf-sms/templates/pv.yaml b/kubernetes/aaf/charts/aaf-sms/templates/pv.yaml
new file mode 100644
index 0000000000..37ed28ee9d
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/templates/pv.yaml
@@ -0,0 +1,37 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- 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/aaf/charts/aaf-sms/templates/pvc.yaml b/kubernetes/aaf/charts/aaf-sms/templates/pvc.yaml
new file mode 100644
index 0000000000..e6aacd1b96
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/templates/pvc.yaml
@@ -0,0 +1,48 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- 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/aaf/charts/aaf-sms/templates/service.yaml b/kubernetes/aaf/charts/aaf-sms/templates/service.yaml
new file mode 100644
index 0000000000..18334a301c
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/templates/service.yaml
@@ -0,0 +1,39 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - 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 }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ protocol: TCP
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/aaf/charts/aaf-sms/values.yaml b/kubernetes/aaf/charts/aaf-sms/values.yaml
new file mode 100644
index 0000000000..df2b6ab640
--- /dev/null
+++ b/kubernetes/aaf/charts/aaf-sms/values.yaml
@@ -0,0 +1,104 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/sms:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+ smsdbaddress: "http://aaf-sms-db:8200"
+ cafile: "/sms/certs/aaf_root_ca.cer"
+ servercert: "/sms/certs/aaf-sms.pub"
+ serverkey: "/sms/certs/aaf-sms.pr"
+ password: "c2VjcmV0bWFuYWdlbWVudHNlcnZpY2VzZWNyZXRwYXNzd29yZA=="
+
+# subchart configuration
+vault:
+ nameOverride: smsdb
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 30
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 30
+
+service:
+ type: NodePort
+ name: aaf-sms
+ portName: aaf-sms
+ internalPort: 10443
+ nodePort: 43
+
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sms/auth
+
+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/aaf/requirements.yaml b/kubernetes/aaf/requirements.yaml
new file mode 100644
index 0000000000..1e8f788318
--- /dev/null
+++ b/kubernetes/aaf/requirements.yaml
@@ -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' \ No newline at end of file
diff --git a/kubernetes/aaf/resources/config/aaf-cs-data/ecomp.cql b/kubernetes/aaf/resources/config/aaf-cs-data/ecomp.cql
deleted file mode 100644
index 6fddf65001..0000000000
--- a/kubernetes/aaf/resources/config/aaf-cs-data/ecomp.cql
+++ /dev/null
@@ -1,169 +0,0 @@
-USE authz;
-
-// Create Root pass
-INSERT INTO cred (id,ns,type,cred,expires)
- VALUES ('dgl@openecomp.org','org.openecomp',1,0xab3831f27b39d7a039f9a92aa2bbfe51,'2020-12-31');
-
-INSERT INTO cred (id,ns,type,cred,expires)
- VALUES ('m99751@dmaapBC.openecomp.org','org.openecomp.dmaapBC',1,0xab3831f27b39d7a039f9a92aa2bbfe51,'2020-12-31');
-
-INSERT INTO cred (id,ns,type,cred,expires)
- VALUES ('m99501@dmaapBC.openecomp.org','org.openecomp.dmaapBC',1,0xab3831f27b39d7a039f9a92aa2bbfe51,'2020-12-31');
-
-
-// Create 'com' root NS
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('com',1,'Root Namespace',null,1);
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('com','admin',{'com.access|*|*'},'Com Admins');
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('com','owner',{'com.access|*|read'},'Com Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('com','access','*','read',{'com.owner'},'Com Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('com','access','*','*',{'com.admin'},'Com Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.owner','2020-12-31','com','owner');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.admin','2020-12-31','com','admin');
-
-// Create org root NS
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org',1,'Root Namespace Org',null,1);
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org.openecomp.dcae',3,'DCAE Namespace Org','org.openecomp',3);
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org.openecomp.dmaapBC',3,'DMaaP BC Namespace Org','org.openecomp',3);
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org','admin',{'org.access|*|*'},'Com Admins');
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org','owner',{'org.access|*|read'},'Com Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org','access','*','read',{'org.owner'},'Com Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org','access','*','*',{'org.admin'},'Com Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.owner','2020-12-31','org','owner');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.admin','2020-12-31','org','admin');
-
-
-// Create com.att
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('com.att',2,'AT&T Namespace','com',2);
-
-INSERT INTO role(ns, name, perms,description)
- VALUES('com.att','admin',{'com.att.access|*|*'},'AT&T Admins');
-
-INSERT INTO role(ns, name, perms,description)
- VALUES('com.att','owner',{'com.att.access|*|read'},'AT&T Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles,description)
- VALUES ('com.att','access','*','read',{'com.att.owner'},'AT&T Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles,description)
- VALUES ('com.att','access','*','*',{'com.att.admin'},'AT&T Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.att.owner','2020-12-31','com.att','owner');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.att.admin','2020-12-31','com.att','admin');
-
-// Create com.att.aaf
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('com.att.aaf',3,'Application Authorization Framework','com.att',3);
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('com.att.aaf','admin',{'com.att.aaf.access|*|*'},'AAF Admins');
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('com.att.aaf','owner',{'com.att.aaf.access|*|read'},'AAF Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('com.att.aaf','access','*','read',{'com.att.aaf.owner'},'AAF Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('com.att.aaf','access','*','*',{'com.att.aaf.admin'},'AAF Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.att.aaf.admin','2020-12-31','com.att.aaf','admin');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','com.att.aaf.owner','2020-12-31','com.att.aaf','owner');
-
-
-// Create org.openecomp
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org.openecomp',2,'Open EComp NS','com.att',2);
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org.openecomp','admin',{'org.openecomp.access|*|*'},'OpenEcomp Admins');
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org.openecomp','owner',{'org.openecomp.access|*|read'},'OpenEcomp Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org.openecomp','access','*','read',{'org.openecomp.owner'},'OpenEcomp Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org.openecomp','access','*','*',{'org.openecomp.admin'},'OpenEcomp Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.openecomp.admin','2020-12-31','org.openecomp','admin');
-
-// Create org.openecomp.dmaapBC
-
-INSERT INTO ns (name,scope,description,parent,type)
- VALUES('org.openecomp.dmaapBC',3,'Application Authorization Framework','org.openecomp',3);
-
-//INSERT INTO role(ns, name, perms, description)
-// VALUES('org.openecomp.dmaapBC','admin',{'org.openecomp.dmaapBC.access|*|*'},'AAF Admins');
-
-INSERT INTO role(ns, name, perms, description)
-VALUES('org.openecomp.dmaapBC','admin',{'org.openecomp.dmaapBC.access|*|*','org.openecomp.dmaapBC.topicFactory|:org.openecomp.dmaapBC.topic:org.openecomp.dmaapBC|create','org.openecomp.dmaapBC.mr.topic|:topic.org.openecomp.dmaapBC.newtopic|sub','org.openecomp.dmaapBC.mr.topic|:topic.org.openecomp.dmaapBC.newtopic|pub'},'AAF Admins');
-
-//INSERT INTO role(ns, name, perms, description)
-//VALUES('org.openecomp.dmaapBC','admin',{'org.openecomp.dmaapBC.access|*|*','org.openecomp.dmaapBC.mr.topic|:topic.org.openecomp.dmaapBC.newtopic|sub'},'AAF Admins');
-
-//INSERT INTO role(ns, name, perms, description)
-//VALUES('org.openecomp.dmaapBC','admin',{'org.openecomp.dmaapBC.access|*|*','org.openecomp.dmaapBC.mr.topic|:topic.org.openecomp.dmaapBC.newtopic|pub'},'AAF Admins');
-
-
-
-INSERT INTO role(ns, name, perms, description)
- VALUES('org.openecomp.dmaapBC','owner',{'org.openecomp.dmaapBC.access|*|read'},'AAF Owners');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org.openecomp.dmaapBC','access','*','read',{'org.openecomp.dmaapBC.owner'},'AAF Read Access');
-
-INSERT INTO perm(ns, type, instance, action, roles, description)
- VALUES ('org.openecomp.dmaapBC','access','*','*',{'org.openecomp.dmaapBC.admin'},'AAF Write Access');
-
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.openecomp.dmaapBC.admin','2020-12-31','org.openecomp.dmaapBC','admin');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('dgl@openecomp.org','org.openecomp.dmaapBC.owner','2020-12-31','org.openecomp.dmaapBC','owner');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('m99751@dmaapBC.openecomp.org','org.openecomp.dmaapBC.admin','2020-12-31','org.openecomp.dmaapBC','admin');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('m99751@dmaapBC.openecomp.org','org.openecomp.dmaapBC.owner','2020-12-31','org.openecomp.dmaapBC','owner');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('m99501@dmaapBC.openecomp.org','org.openecomp.dmaapBC.admin','2020-12-31','org.openecomp.dmaapBC','admin');
-INSERT INTO user_role(user,role,expires,ns,rname)
- VALUES ('m99501@dmaapBC.openecomp.org','org.openecomp.dmaapBC.owner','2020-12-31','org.openecomp.dmaapBC','owner');
diff --git a/kubernetes/aaf/resources/config/aaf-cs-data/identities.dat b/kubernetes/aaf/resources/config/aaf-cs-data/identities.dat
deleted file mode 100644
index 98bf99a3d1..0000000000
--- a/kubernetes/aaf/resources/config/aaf-cs-data/identities.dat
+++ /dev/null
@@ -1,7 +0,0 @@
-iowna|Ima D. Owner|Ima|Owner|314-123-2000|ima.d.owner@osaaf.com|e|
-mmanager|Mark D. Manager|Mark|Manager|314-123-1234|mark.d.manager@osaaf.com|e|iowna
-bdevl|Robert D. Developer|Bob|Developer|314-123-1235|bob.d.develper@osaaf.com|e|mmanager
-mmarket|Mary D. Marketer|Mary|Marketer|314-123-1236|mary.d.marketer@osaaf.com|e|mmanager
-ccontra|Clarice D. Contractor|Clarice|Contractor|314-123-1237|clarice.d.contractor@osaaf.com|c|mmanager
-iretired|Ira Lee M. Retired|Ira|Retired|314-123-1238|clarice.d.contractor@osaaf.com|n|mmanager
-osaaf|ID of AAF|||||a|bdevl
diff --git a/kubernetes/aaf/resources/config/aaf-cs-data/identities.idx b/kubernetes/aaf/resources/config/aaf-cs-data/identities.idx
deleted file mode 100644
index 78fc0a5693..0000000000
--- a/kubernetes/aaf/resources/config/aaf-cs-data/identities.idx
+++ /dev/null
Binary files differ
diff --git a/kubernetes/aaf/resources/config/aaf-data/identities.dat b/kubernetes/aaf/resources/config/aaf-data/identities.dat
deleted file mode 100644
index 95eb51d1be..0000000000
--- a/kubernetes/aaf/resources/config/aaf-data/identities.dat
+++ /dev/null
@@ -1,9 +0,0 @@
-iowna|Ima D. Owner|Ima|Owner|314-123-2000|ima.d.owner@osaaf.com|e|
-mmanager|Mark D. Manager|Mark|Manager|314-123-1234|mark.d.manager@osaaf.com|e|iowna
-bdevl|Robert D. Developer|Bob|Developer|314-123-1235|bob.d.develper@osaaf.com|e|mmanager
-mmarket|Mary D. Marketer|Mary|Marketer|314-123-1236|mary.d.marketer@osaaf.com|e|mmanager
-ccontra|Clarice D. Contractor|Clarice|Contractor|314-123-1237|clarice.d.contractor@osaaf.com|c|mmanager
-iretired|Ira Lee M. Retired|Ira|Retired|314-123-1238|clarice.d.contractor@osaaf.com|n|mmanager
-osaaf|ID of AAF|||||a|bdevl
-m99751|ID of AAF|||||a|bdevl
-m99501|ID of AAF|||||a|bdevl
diff --git a/kubernetes/aaf/resources/config/backup/backup.sh b/kubernetes/aaf/resources/config/backup/backup.sh
new file mode 100644
index 0000000000..1359d3de83
--- /dev/null
+++ b/kubernetes/aaf/resources/config/backup/backup.sh
@@ -0,0 +1,32 @@
+# BEGIN Store prev
+BD=/opt/app/osaaf/backup
+if [ -e "$BD/6day" ]; then
+ rm -Rf $BD/6day
+fi
+
+PREV=$BD/6day
+for D in $BD/5day $BD/4day $BD/3day $BD/2day $BD/yesterday; do
+ if [ -e "$D" ]; then
+ mv "$D" "$PREV"
+ fi
+ PREV="$D"
+done
+
+if [ -e "$BD/today" ]; then
+ if [ -e "$BD/backup.log" ]; then
+ mv $BD/backup.log $BD/today
+ fi
+ gzip $BD/today/*
+ mv $BD/today $BD/yesterday
+fi
+
+mkdir $BD/today
+
+# END Store prev
+date
+docker exec -t aaf_cass bash -c "mkdir -p /opt/app/cass_backup"
+docker container cp $BD/cbackup.sh aaf_cass:/opt/app/cass_backup/backup.sh
+# echo "login as Root, then run \nbash /opt/app/cass_backup/backup.sh"
+docker exec -t aaf_cass bash /opt/app/cass_backup/backup.sh
+docker container cp aaf_cass:/opt/app/cass_backup/. $BD/today
+date
diff --git a/kubernetes/aaf/resources/config/backup/cbackup.sh b/kubernetes/aaf/resources/config/backup/cbackup.sh
new file mode 100644
index 0000000000..9c91d0c670
--- /dev/null
+++ b/kubernetes/aaf/resources/config/backup/cbackup.sh
@@ -0,0 +1,8 @@
+cd /opt/app/cass_backup
+DATA="ns role perm ns_attrib user_role cred cert x509 delegate approval approved future notify artifact health history"
+PWD=cassandra
+CQLSH="cqlsh -u cassandra -k authz -p $PWD"
+for T in $DATA ; do
+ echo "Creating $T.dat"
+ $CQLSH -e "COPY authz.$T TO '$T.dat' WITH DELIMITER='|'"
+done
diff --git a/kubernetes/aaf/resources/config/data/identities.dat b/kubernetes/aaf/resources/config/data/identities.dat
new file mode 100644
index 0000000000..39d18a12b9
--- /dev/null
+++ b/kubernetes/aaf/resources/config/data/identities.dat
@@ -0,0 +1,27 @@
+#
+# Sample Identities.dat
+# This file is for use with the "Default Organization". It is a simple mechanism to have a basic ILM structure to use with
+# out-of-the-box tire-kicking, or even for Small companies
+#
+# For Larger Companies, you will want to create a new class implementing the "Organization" interface, making calls to your ILM, or utilizing
+# batch feeds, as is appropriate for your company.
+#
+# Example Field Layout. note, in this example, Application IDs and People IDs are mixed. You may want to split
+# out AppIDs, choose your own status indicators, or whatever you use.
+# 0 - unique ID
+# 1 - full name
+# 2 - first name
+# 3 - last name
+# 4 - phone
+# 5 - official email
+# 6 - employment status e=employee, c=contractor, a=application, n=no longer with company
+# 7 - responsible to (i.e Supervisor for People, or AppOwner, if it's an App ID)
+#
+
+iowna|Ima D. Owner|Ima|Owner|314-123-2000|ima.d.owner@osaaf.com|e|
+mmanager|Mark D. Manager|Mark|Manager|314-123-1234|mark.d.manager@osaaf.com|e|iowna
+bdevl|Robert D. Developer|Bob|Developer|314-123-1235|bob.d.develper@osaaf.com|e|mmanager
+mmarket|Mary D. Marketer|Mary|Marketer|314-123-1236|mary.d.marketer@osaaf.com|e|mmanager
+ccontra|Clarice D. Contractor|Clarice|Contractor|314-123-1237|clarice.d.contractor@osaaf.com|c|mmanager
+iretired|Ira Lee M. Retired|Ira|Retired|314-123-1238|clarice.d.contractor@osaaf.com|n|mmanager
+osaaf|ID of AAF|||||a|bdevl
diff --git a/kubernetes/aaf/resources/config/data/sample.identities.dat b/kubernetes/aaf/resources/config/data/sample.identities.dat
new file mode 100644
index 0000000000..39d18a12b9
--- /dev/null
+++ b/kubernetes/aaf/resources/config/data/sample.identities.dat
@@ -0,0 +1,27 @@
+#
+# Sample Identities.dat
+# This file is for use with the "Default Organization". It is a simple mechanism to have a basic ILM structure to use with
+# out-of-the-box tire-kicking, or even for Small companies
+#
+# For Larger Companies, you will want to create a new class implementing the "Organization" interface, making calls to your ILM, or utilizing
+# batch feeds, as is appropriate for your company.
+#
+# Example Field Layout. note, in this example, Application IDs and People IDs are mixed. You may want to split
+# out AppIDs, choose your own status indicators, or whatever you use.
+# 0 - unique ID
+# 1 - full name
+# 2 - first name
+# 3 - last name
+# 4 - phone
+# 5 - official email
+# 6 - employment status e=employee, c=contractor, a=application, n=no longer with company
+# 7 - responsible to (i.e Supervisor for People, or AppOwner, if it's an App ID)
+#
+
+iowna|Ima D. Owner|Ima|Owner|314-123-2000|ima.d.owner@osaaf.com|e|
+mmanager|Mark D. Manager|Mark|Manager|314-123-1234|mark.d.manager@osaaf.com|e|iowna
+bdevl|Robert D. Developer|Bob|Developer|314-123-1235|bob.d.develper@osaaf.com|e|mmanager
+mmarket|Mary D. Marketer|Mary|Marketer|314-123-1236|mary.d.marketer@osaaf.com|e|mmanager
+ccontra|Clarice D. Contractor|Clarice|Contractor|314-123-1237|clarice.d.contractor@osaaf.com|c|mmanager
+iretired|Ira Lee M. Retired|Ira|Retired|314-123-1238|clarice.d.contractor@osaaf.com|n|mmanager
+osaaf|ID of AAF|||||a|bdevl
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.cm.props b/kubernetes/aaf/resources/config/etc/org.osaaf.cm.props
new file mode 100644
index 0000000000..d634cfeb37
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.cm.props
@@ -0,0 +1,14 @@
+##
+## org.osaaf.cm.props
+## AAF Certificate Manager properties
+## Note: Link to CA Properties in "local" dir
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/local/org.osaaf.cassandra.props:/opt/app/osaaf/local/org.osaaf.cm.ca.props
+aaf_component=AAF_NS.cm:2.1.0.0
+port=8150
+cadi_registration_hostname={{.Values.config.cmServiceName}}
+#Certman
+cm_public_dir=/opt/app/osaaf/public
+cm_trust_cas=AAF_RootCA.cer
+
+
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.common.props b/kubernetes/aaf/resources/config/etc/org.osaaf.common.props
new file mode 100644
index 0000000000..8b75e709d4
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.common.props
@@ -0,0 +1,29 @@
+############################################################
+# Common properties for all AAF Components
+# on 2018-03-02 06:59.628-0500
+############################################################
+# Pull in Global Coordinates and Certificate Information
+aaf_root_ns=org.osaaf.aaf
+aaf_trust_perm=org.osaaf.aaf|org.onap|trust
+
+cadi_prop_files=/opt/app/osaaf/local/org.osaaf.location.props:/opt/app/osaaf/local/org.osaaf.aaf.props
+cadi_protocols=TLSv1.1,TLSv1.2
+
+aaf_url=https://AAF_LOCATE_URL/AAF_NS.service:2.0
+cadi_loginpage_url=https://AAF_LOCATE_URL/AAF_NS.gui:2.0/login
+
+# Standard for this App/Machine
+aaf_env=DEV
+aaf_data_dir=/opt/app/osaaf/data
+cadi_loglevel=DEBUG
+
+# Domain Support (which will accept)
+aaf_domain_support=.com:.org
+
+# Basic Auth
+aaf_default_realm=people.osaaf.org
+
+# 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/aaf/resources/config/etc/org.osaaf.fs.props b/kubernetes/aaf/resources/config/etc/org.osaaf.fs.props
new file mode 100644
index 0000000000..d499f97f56
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.fs.props
@@ -0,0 +1,10 @@
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props
+aaf_component=AAF_NS.fs:2.1.0.0
+port=8096
+cadi_registration_hostname={{.Values.config.fsServiceName}}
+
+aaf_public_dir=/opt/app/osaaf/public
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.gui.props b/kubernetes/aaf/resources/config/etc/org.osaaf.gui.props
new file mode 100644
index 0000000000..86b3aa6467
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.gui.props
@@ -0,0 +1,31 @@
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/etc/org.osaaf.orgs.props
+aaf_component=AAF_NS.gui:2.1.0.0
+port=8200
+cadi_registration_hostname={{.Values.config.guiServiceName}}
+
+aaf_gui_title=AAF
+aaf_gui_copyright=(c) 2018 AT&T Intellectual Property. All rights reserved.
+aaf_gui_theme=theme/onap
+cadi_loginpage_url=https://AAF_LOCATE_URL/com.att.aaf.gui:2.0/login
+
+# GUI URLS and Help URLS
+cm_url=https://{{.Values.config.cmServiceName}}:8150
+gw_url=https://{{.Values.config.locateServiceName}}:8095
+fs_url=http://{{.Values.config.fsServiceName}}:8096
+
+aaf_url.gui_onboard=https://wiki.web.att.com/display/aaf/OnBoarding
+aaf_url.cuigui=https://wiki.web.att.com/display/aaf/Using+the+Command+Prompt
+
+aaf_url.aaf_help=https://wiki.onap.org/display/DW/Application+Authorization+Framework+Documentation
+aaf_url.aaf_help.sub=Bootstrapping+AAF,Installation+Guide
+aaf_url.aaf_help.sub.Bootstrapping+AAF=https://wiki.onap.org/display/DW/Bootstrapping+AAF
+aaf_url.aaf_help.sub.Installation+Guide=https://wiki.onap.org/display/DW/AAF+Installation+Guide
+#aaf_url.cadi_help=
+aaf_url.tools=AAF+Projects,AAF+Jira,AAF+Calendar
+aaf_url.tool=AAF+Jira=https://jira.onap.org/secure/RapidBoard.jspa?rapidView=69&projectKey=AAF&view=detail&selectedIssue=AAF-134
+aaf_url.tool.AAF+Projects=https://gerrit.onap.org/r/#/admin/projects/?filter=aaf%2F
+aaf_url.tool.AAF+Calendar=https://wiki.onap.org/pages/viewpage.action?pageId=6587439
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.hello.props b/kubernetes/aaf/resources/config/etc/org.osaaf.hello.props
new file mode 100644
index 0000000000..d832aaf7e0
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.hello.props
@@ -0,0 +1,8 @@
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props
+aaf_component=AAF_NS.hello:2.1.0.0
+port=8130
+cadi_registration_hostname={{.Values.config.helloServiceName}}
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.locate.props b/kubernetes/aaf/resources/config/etc/org.osaaf.locate.props
new file mode 100644
index 0000000000..47a174ed44
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.locate.props
@@ -0,0 +1,8 @@
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/local/org.osaaf.cassandra.props
+aaf_component=AAF_NS.locator:2.1.0.0
+port=8095
+cadi_registration_hostname={{.Values.config.locateServiceName}}
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.log4j.props b/kubernetes/aaf/resources/config/etc/org.osaaf.log4j.props
new file mode 100644
index 0000000000..9f10802821
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.log4j.props
@@ -0,0 +1,51 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+log4j.appender.INIT=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.INIT.File=${LOG4J_FILENAME_init}
+log4j.appender.INIT.DatePattern='.'yyyy-MM-dd
+log4j.appender.INIT.layout=org.apache.log4j.PatternLayout
+log4j.appender.INIT.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSSZ} %m %n
+
+log4j.appender.SRVR=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.SRVR.File=${LOG4J_FILENAME_service}
+log4j.appender.SRVR.DatePattern='.'yyyy-MM-dd
+log4j.appender.SRVR.layout=org.apache.log4j.PatternLayout
+log4j.appender.SRVR.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSSZ} %p [%c] %m %n
+
+log4j.appender.AUDIT=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.AUDIT.File=${LOG4J_FILENAME_audit}
+log4j.appender.AUDIT.DatePattern='.'yyyy-MM-dd
+log4j.appender.AUDIT.layout=org.apache.log4j.PatternLayout
+log4j.appender.AUDIT.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSSZ} %m %n
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] %m %n
+
+# General Apache libraries
+log4j.rootLogger=WARN.SRVR
+log4j.logger.org.apache=WARN,SRVR
+log4j.logger.com.datastax=WARN,SRVR
+log4j.logger.init=INFO,INIT
+log4j.logger.service=${LOGGING_LEVEL},SRVR
+log4j.logger.audit=INFO,AUDIT
+# Additional configs, not cauth with Root Logger
+log4j.logger.io.netty=INFO,SRVR
+log4j.logger.org.eclipse=INFO,SRVR
+
+
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.oauth.props b/kubernetes/aaf/resources/config/etc/org.osaaf.oauth.props
new file mode 100644
index 0000000000..82e80c716a
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.oauth.props
@@ -0,0 +1,8 @@
+##
+## org.osaaf.locator
+## AAF Locator Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/local/org.osaaf.cassandra.props
+aaf_component=AAF_NS.oauth:2.1.0.0
+port=8140
+cadi_registration_hostname={{.Values.config.oauthServiceName}}
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.orgs.props b/kubernetes/aaf/resources/config/etc/org.osaaf.orgs.props
new file mode 100644
index 0000000000..66bfd2fad3
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.orgs.props
@@ -0,0 +1,11 @@
+#
+# Define Organizations for use in some of the components. Not all use them
+#
+Organization.org.osaaf=org.onap.aaf.org.DefaultOrg
+org.osaaf.mailHost=smtp.mail.att.com
+org.osaaf.mailFrom=DL-aaf-support@aaf.att.com
+org.osaaf.default=true
+org.osaaf.also_supports=org.osaaf.people
+
+
+
diff --git a/kubernetes/aaf/resources/config/etc/org.osaaf.service.props b/kubernetes/aaf/resources/config/etc/org.osaaf.service.props
new file mode 100644
index 0000000000..ff3e0b5c33
--- /dev/null
+++ b/kubernetes/aaf/resources/config/etc/org.osaaf.service.props
@@ -0,0 +1,8 @@
+##
+## org.osaaf.service
+## AAF Service Properties
+##
+cadi_prop_files=/opt/app/osaaf/etc/org.osaaf.common.props:/opt/app/osaaf/local/org.osaaf.cassandra.props:/opt/app/osaaf/etc/org.osaaf.orgs.props
+aaf_component=AAF_NS.service:2.1.0.0
+port=8100
+cadi_registration_hostname={{.Values.config.serviceServiceName}}
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.aaf.cm.p12 b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.cm.p12
new file mode 100644
index 0000000000..63aedd2560
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.cm.p12
Binary files differ
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.aaf.keyfile b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.keyfile
new file mode 100644
index 0000000000..7206ad9325
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.keyfile
@@ -0,0 +1,27 @@
+rmaOaytuFLnhz07oilUO0nO_mZ18XInIi56OoezdUTR5f1GR45lp_nX7marcYv7j2ZS-dpWOSur0
+sK5M-ByrgxfUPyk749Ex4nGSMLnAq-nFMaREpGZPmNP-ul_vCxCmaHUnWKPJB4jx_K_osKPb0-ng
+tqX0hnpbmcq4okV94MUdUs084ymM5LU-qVU_oYbLUM4dXatobe1go8eX2umrutZbQTjz75i4UEcF
+Dv9nDwVqHRGUFMU0NeJlrSlRSO-eiDgVtoSCBGtIkDdKPBTUT3wachHmUBiSBJ3GF05yQP1CwWzz
+AQRSwphP11xKI7tSViT5RoxjxfQZiVEbeyg9g9BROe_pLyIDskoW_ujdnPOWRcSIx6Q4J0eew3kb
+yqcWUPf1K2nSyBSshlsQ6A9NSOLz_KhyIvP_1OG82m1gir3I77Usl7QqMF8IBXCjJ-H_qqR1u-By
+qm_AFjagYA2TgF2YQN-fcneom_5_cA74_xwJ41juhOP72ZWGkX1bAdbiKf85uYo2H3g5HeNWijQL
+y4wJ4qFrSptQRyV2Ntf9OLgpOsKsPPiLlNBugmCjHBMaPMbQAYRbsyCH2nKdjjTG3c6iF5Cj9Jco
+6McvcrYYuq3ynH-2HoL-T-Zgl2AXLxqK4_dl_H243H-GutoJsmIkELLGS_pCpSt4t7xaDvzqxrTj
+4qZ1OjozcpnsqM8HebS28IgoqFaOmrCMqO1MLM_CjAyliTy31P28XEbcYvjEY-FWmnJRSpMLc1Pz
+-KOH-2V8uTqn5YlUsFt2TNnc8lEwMH6GSV1vkgxwPQaMUgWV2svc0FfBmTLZI4zNmpMu4cGjaG-f
+Z8r_hX7pDPANBTaqFxTp999dnaS3lLdZMNbJNEKFF0xxdRuBzsPKDiLa7ItixInZlUcEnwJVWOhC
+kcI2J0cEFGxHxWYmYdqyJIvQzjebk6iDqB-mLi0ai-_XYm1niCxZizT_XJADo9LQtTzq1V6pMgYR
+PPfbDKoiYRK6D8nbWsGNOh6xOS7zs8qrnTPxwu5CuZX_EFoejmooHTrXEqw2RzRFw9XqXM8p50C3
+YrwI2lA6kTQItGm0yftAxqfbhbjJp_K1P91ckOYL3ZSYze_hXRmguwYuT5NWlKhBtm5aawuDjXEg
+yn7PnRTT0smW40hbYbks5L-2VVxTd3tith6Ltqh95miL6vpG5ByDDQlZCWwkq7XH7iScejDvT6UN
+jF1K86mNa8CLXuuSzGl1li1CMxoVzW55G3s0-ICDHqjytiUkiUen2V9VzGT9h4BgDfzbShf31M4_
+biO4NL-mkqlDBbh-KcrYjvNj5qQwHSiLSLuQQBoBtJ3hG9jCu4YBYVWJYctV8r3Js_sGDH4rl5w1
+ujEF6QHWZIF73-u53G_LtvoXBnQcrBW8oLpqP-1Pz5d1bio--bRsNa5qAAilNbYmttiKYOYJn4My
+c6QvzF81SqTRZy0Fd0NK_hMCglPkH7sd32UX-LBquvQ_yDqB_ml_pADJhWcfuD4iPAQjR2Vgclxf
+GPCDva6YpJDzjjnaExDYmGFVFpbIPLfvGUCit_9zAycx0nW1J_cVT1BWFHijjAh_gnIpa6MtY3BE
+G3d8ee6_LAQvvVdBwZ955UwyRd-C7Buc7Xcccw-8hcNBKqOCDlE9j4tie2SdO9m53vZRzcLY6Aiw
+BiulIAllqHZQYs0OBcaYgbNgJU-gn9ZMWgS9i3ijPvTTBSNX7y7k4L1a4QOceyuOtt7nkv024YUS
+acTRmaGotRBuVfI-C0L4Q9NL56_nUATB5ca2GqgLEKnWKsiN3T9cBg4Ji88E8OdiVcoO8segB-0d
+QwWCqCZ8_z_R7zBMlDqpfu5wbvoVx0w9JhLgO9f7eoRozqA3qGLv94i1pN6LuU-Q7YPz4jVxmbb_
+2CHyP1n-o1ZWHfWdz6aByXEzrAZdvjfEWwwMYV5l5jFilTXaCNOCjr9S4YjNn0HITdl7E64C06Im
+3QWOsnDv9z1APjnFo12KH_1yWscU0t9gx7FG210Ug6C-G3Bko_tm_YOp0Lkum4qrnxgHMf_a \ No newline at end of file
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.aaf.p12 b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.p12
new file mode 100644
index 0000000000..f40a7556da
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.p12
Binary files differ
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.aaf.props b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.props
new file mode 100644
index 0000000000..37a9d62711
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.props
@@ -0,0 +1,17 @@
+############################################################
+# Properties Generated by AT&T Certificate Manager
+# by jg1555
+# on 2018-02-21T10:28:08.909-0600
+# @copyright 2016, AT&T
+############################################################
+cm_url=https://{{.Values.config.cmServiceName}}:8150
+#hostname=aaf.osaaf.org
+aaf_env=DEV
+cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US
+cadi_keyfile=/opt/app/osaaf/local/org.osaaf.aaf.keyfile
+cadi_keystore=/opt/app/osaaf/local/org.osaaf.aaf.p12
+cadi_keystore_password=enc:fDY3WPPqHCMQaZdox2UfpRoEq6b9wUqS-aepo0NiqEFa2t7uYHBdxfQAuEwj9Lwb
+#cadi_key_password=enc:<KEY PASSWORD (optional if the same as KEYSTORE PASSWORD)>
+cadi_alias=aaf-authz@aaf.osaaf.org
+cadi_truststore=/opt/app/osaaf/local/org.osaaf.aaf.trust.p12
+cadi_truststore_password=enc:5nzj6v3Rb0oZPV1zCxg8EJFfkFvWFGJflLB0i_FN0Np
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.aaf.trust.p12 b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.trust.p12
new file mode 100644
index 0000000000..d01e8569ab
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.aaf.trust.p12
Binary files differ
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.aaf_new-24e41f2f436018568cbdecdc1edbd605.p12 b/kubernetes/aaf/resources/config/local/org.osaaf.aaf_new-24e41f2f436018568cbdecdc1edbd605.p12
new file mode 100644
index 0000000000..f40a7556da
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.aaf_new-24e41f2f436018568cbdecdc1edbd605.p12
Binary files differ
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.cassandra.props b/kubernetes/aaf/resources/config/local/org.osaaf.cassandra.props
new file mode 100644
index 0000000000..17f238b851
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.cassandra.props
@@ -0,0 +1,29 @@
+############################################################
+# Cassandra properties for AAF Components needing
+# on 2018-03-02 06:59.628-0500
+############################################################
+# LOCAL Cassandra
+cassandra.clusters={{.Values.config.csServiceName}}
+cassandra.clusters.port=9042
+#need this to be fully qualified name when REAL AAF integration
+cassandra.clusters.user=cassandra
+cassandra.clusters.password=enc:gF_I93pTRMIvj3rof-dx-yK84XYT1UKGf98s1LAJyWV
+
+# Name for exception that has happened in the past
+cassandra.reset.exceptions=com.datastax.driver.core.exceptions.NoHostAvailableException:"no host was tried":"Connection has been closed"
+
+# Example Consistency Settings for Clusters with at least instances
+#cassandra.writeConsistency.ns=LOCAL_QUORUM
+#cassandra.writeConsistency.perm=LOCAL_QUORUM
+#cassandra.writeConsistency.role=LOCAL_QUORUM
+#cassandra.writeConsistency.user_role=LOCAL_QUORUM
+#cassandra.writeConsistency.cred=LOCAL_QUORUM
+#cassandra.writeConsistency.ns_attrib=LOCAL_QUORUM
+
+# Consistency Settings when Single Instance
+cassandra.writeConsistency.ns=ONE
+cassandra.writeConsistency.perm=ONE
+cassandra.writeConsistency.role=ONE
+cassandra.writeConsistency.user_role=ONE
+cassandra.writeConsistency.cred=ONE
+cassandra.writeConsistency.ns_attrib=ONE
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.cm.ca.props b/kubernetes/aaf/resources/config/local/org.osaaf.cm.ca.props
new file mode 100644
index 0000000000..8843705cbb
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.cm.ca.props
@@ -0,0 +1,11 @@
+##
+## org.osaaf.cm.ca.props
+## Properties to access Certifiate Authority
+##
+
+#Certman
+cm_ca.local=org.onap.aaf.auth.cm.ca.LocalCA,/opt/app/osaaf/local/org.osaaf.aaf.cm.p12;aaf_cm_ca;enc:asFEWMNqjH7GktBLb9EGl6L1zfS2qMH5ZS5Zd90KVT5B9ZyRsqx7Gb73YllO8Hyw
+cm_ca.local.idDomains=org.osaaf
+cm_ca.local.baseSubject=/OU=OSAAF/O=ONAP/C=US
+cm_ca.local.perm_type=org.osaaf.aaf.ca
+
diff --git a/kubernetes/aaf/resources/config/local/org.osaaf.location.props b/kubernetes/aaf/resources/config/local/org.osaaf.location.props
new file mode 100644
index 0000000000..fd52d6db11
--- /dev/null
+++ b/kubernetes/aaf/resources/config/local/org.osaaf.location.props
@@ -0,0 +1,12 @@
+##
+## org.osaaf.location.props
+##
+## Localized Machine Information
+##
+# Almeda California
+cadi_latitude=37.78187
+cadi_longitude=-122.26147
+
+#cadi_registration_hostname=aaf-onap-beijing-test.osaaf.org
+cadi_trust_masks=10.12.6/24
+aaf_locate_url=https://{{.Values.config.locateServiceName}}:8095
diff --git a/kubernetes/aaf/resources/config/public/README.txt b/kubernetes/aaf/resources/config/public/README.txt
new file mode 100644
index 0000000000..48aaa96feb
--- /dev/null
+++ b/kubernetes/aaf/resources/config/public/README.txt
@@ -0,0 +1 @@
+Public directory left empty on purpose. Content of https://gerrit.onap.org/r/gitweb?p=aaf/authz.git;a=tree;f=auth/sample/public;h=1b387b7858134f80446f006b6d570fa534da3153;hb=refs/heads/master is cloned and mounted into AAF container volume via init container. This is done to dramatically reduce the size of configuration that was being put into a configmap that was exceeding helm configmap limit of 1MB per deployment.
diff --git a/kubernetes/aaf/templates/aaf-cs-deployment.yaml b/kubernetes/aaf/templates/aaf-cs-deployment.yaml
deleted file mode 100644
index 7f8cdb6f26..0000000000
--- a/kubernetes/aaf/templates/aaf-cs-deployment.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableAafAafCs }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: aaf-cs
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.aafcsReplicas }}
- selector:
- matchLabels:
- app: aaf-cs
- template:
- metadata:
- labels:
- app: aaf-cs
- name: aaf-cs
- spec:
- hostname: aaf-cs
- containers:
- - args:
- image: {{ .Values.image.csImage }}:{{ .Values.image.csVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "aaf-cs"
- volumeMounts:
- - mountPath: /data
- name: aaf-cs-data
- readinessProbe:
- tcpSocket:
- port: 7000
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: aaf-cs-data
- secret:
- secretName: aaf-cs-data-secret
- imagePullSecrets:
- - name: {{ .Values.nsPrefix }}-docker-registry-key
-#{{ end }}
diff --git a/kubernetes/aaf/templates/aaf-deployment.yaml b/kubernetes/aaf/templates/aaf-deployment.yaml
deleted file mode 100644
index 0341344383..0000000000
--- a/kubernetes/aaf/templates/aaf-deployment.yaml
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableAafAaf }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: aaf
- name: aaf
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.aafReplicas }}
- selector:
- matchLabels:
- app: aaf
- template:
- metadata:
- labels:
- app: aaf
- name: aaf
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - aaf-cs
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: aaf-readiness
- containers:
- - env:
- - name: CASSANDRA_CLUSTER
- value: cassandra_container
- image: {{ .Values.image.aafImage }}:{{ .Values.image.aafVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /data
- name: aaf-data
- name: aaf
- readinessProbe:
- tcpSocket:
- port: 8101
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: aaf-data
- configMap:
- name: aaf-data-configmap
- imagePullSecrets:
- - name: {{ .Values.nsPrefix }}-docker-registry-key
-#{{ end }}
diff --git a/kubernetes/aaf/templates/all-services.yaml b/kubernetes/aaf/templates/all-services.yaml
deleted file mode 100644
index 5ccbd252c8..0000000000
--- a/kubernetes/aaf/templates/all-services.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableAafAafCs }}
-apiVersion: v1
-kind: Service
-metadata:
- name: aaf-cs
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: aaf-cs
-spec:
- ports:
- - name: aaf-cs-port-7000
- port: 7000
- - name: aaf-cs-port-7001
- port: 7001
- - name: aaf-cs-port-9042
- port: 9042
- - name: aaf-cs-port-9160
- port: 9160
- selector:
- app: aaf-cs
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableAafAaf }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: aaf-authz-service
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: aaf-authz-service
-spec:
- ports:
- - name: aaf-authz-service
- port: 8101
- nodePort: {{ .Values.nodePortPrefix }}99
- selector:
- app: clamp
- type: NodePort
-#{{ end }} \ No newline at end of file
diff --git a/kubernetes/aaf/templates/configmap.yaml b/kubernetes/aaf/templates/configmap.yaml
new file mode 100644
index 0000000000..9d21e057d6
--- /dev/null
+++ b/kubernetes/aaf/templates/configmap.yaml
@@ -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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-aaf-backup
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/backup/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-aaf-local
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/local/org.osaaf.location.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/local/org.osaaf.cm.ca.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/local/org.osaaf.cassandra.props").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/local/org.osaaf.aaf.props").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-aaf-etc
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/etc/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-aaf-data
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/data/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/aaf/templates/job.yaml b/kubernetes/aaf/templates/job.yaml
new file mode 100644
index 0000000000..85c09402a2
--- /dev/null
+++ b/kubernetes/aaf/templates/job.yaml
@@ -0,0 +1,145 @@
+# 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" . }}-create-config
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ template:
+ metadata:
+ labels:
+ app: aaf-init-job
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-inject-config
+ command:
+ - /bin/bash
+ - -c
+ - >
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/ to /public";
+ cp -rf /tmp/gerrit/auth/sample/public/* /public;
+ echo "Done.";
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.global.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: aaf-public
+ mountPath: "/public"
+ containers:
+ - command: ["/bin/bash","-c","if [ ! -d /data/backup ]; then mkdir /data/data && cp -Ra /data1/data/..data/* /data/data/ && mkdir /data/etc && cp -Ra /data1/etc/..data/* data/etc/ && mkdir /data/backup && cp -Ra /data1/backup/..data/* /data/backup/ && cp -Ra /data1/public /data/ && cp -Ra /data1/local /data && mkdir -p /data/logs/oauth && mkdir -p /data/logs/hello && mkdir -p /data/logs/fs && mkdir -p /data/logs/gui && mkdir -p /data/logs/locate && mkdir -p /data/logs/cm && mkdir -p /data/logs/service; fi; exit 0"]
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: aaf-init-job
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /data
+ name: aaf-persistent-data
+ - mountPath: /data1/etc
+ name: aaf-etc
+ - mountPath: /data1/data
+ name: aaf-data
+ - mountPath: /data1/public/iframe_denied_test.html
+ name: aaf-public
+ subPath: iframe_denied_test.html
+ - mountPath: /data1/public/aaf_2_0.xsd
+ name: aaf-public
+ subPath: aaf_2_0.xsd
+ - mountPath: /data1/public/truststoreONAP.p12
+ name: aaf-public
+ subPath: truststoreONAP.p12
+ - mountPath: /data1/public/AAF_RootCA.cer
+ name: aaf-public
+ subPath: AAF_RootCA.cer
+ - mountPath: /data1/public/truststoreONAPall.jks
+ name: aaf-public
+ subPath: truststoreONAPall.jks
+ - mountPath: /data1/local/org.osaaf.location.props
+ name: aaf-local
+ subPath: org.osaaf.location.props
+ - mountPath: /data1/local/org.osaaf.cm.ca.props
+ name: aaf-local
+ subPath: org.osaaf.cm.ca.props
+ - mountPath: /data1/local/org.osaaf.cassandra.props
+ name: aaf-local
+ subPath: org.osaaf.cassandra.props
+ - mountPath: /data1/local/org.osaaf.aaf.props
+ name: aaf-local
+ subPath: org.osaaf.aaf.props
+ - mountPath: /data1/local/org.osaaf.aaf.trust.p12
+ name: aaf-local-secret
+ subPath: org.osaaf.aaf.trust.p12
+ - mountPath: /data1/local/org.osaaf.aaf.p12
+ name: aaf-local-secret
+ subPath: org.osaaf.aaf.p12
+ - mountPath: /data1/local/org.osaaf.aaf.keyfile
+ name: aaf-local-secret
+ subPath: org.osaaf.aaf.keyfile
+ - mountPath: /data1/local/org.osaaf.aaf.cm.p12
+ name: aaf-local-secret
+ subPath: org.osaaf.aaf.cm.p12
+ - mountPath: /data1/backup
+ name: aaf-backup
+ - mountPath: /share
+ name: aaf-public
+ 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: aaf-local-secret
+ secret:
+ secretName: {{ .Release.Name }}-aaf-local-secret
+ - name: aaf-etc
+ configMap:
+ name: {{ .Release.Name }}-aaf-etc
+ - name: aaf-local
+ configMap:
+ name: {{ .Release.Name }}-aaf-local
+ - name: aaf-backup
+ configMap:
+ name: {{ .Release.Name }}-aaf-backup
+ - name: aaf-data
+ configMap:
+ name: {{ .Release.Name }}-aaf-data
+ - name: aaf-persistent-data
+ {{- if .Values.global.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ .Release.Name }}-aaf-pvc
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: aaf-public
+ emptyDir: {}
+ restartPolicy: OnFailure
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/templates/pv.yaml b/kubernetes/aaf/templates/pv.yaml
new file mode 100644
index 0000000000..d9b58f62ad
--- /dev/null
+++ b/kubernetes/aaf/templates/pv.yaml
@@ -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.global.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/aaf/templates/pvc.yaml b/kubernetes/aaf/templates/pvc.yaml
new file mode 100644
index 0000000000..255c27751c
--- /dev/null
+++ b/kubernetes/aaf/templates/pvc.yaml
@@ -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.global.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ .Release.Name }}-aaf-pvc
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ 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/aaf/templates/secrets.yaml b/kubernetes/aaf/templates/secrets.yaml
new file mode 100644
index 0000000000..fe876e1c6c
--- /dev/null
+++ b/kubernetes/aaf/templates/secrets.yaml
@@ -0,0 +1,30 @@
+# 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: {{ .Release.Name}}-aaf-local-secret
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ (.Files.Glob "resources/config/local/org.osaaf.aaf.trust.p12").AsSecrets | indent 2 }}
+{{ (.Files.Glob "resources/config/local/org.osaaf.aaf.p12").AsSecrets | indent 2 }}
+{{ (.Files.Glob "resources/config/local/org.osaaf.aaf.keyfile").AsSecrets | indent 2 }}
+{{ (.Files.Glob "resources/config/local/org.osaaf.aaf.cm.p12").AsSecrets | indent 2 }}
+type: Opaque
diff --git a/kubernetes/aaf/values.yaml b/kubernetes/aaf/values.yaml
index 088adfe6a6..19250d8f69 100644
--- a/kubernetes/aaf/values.yaml
+++ b/kubernetes/aaf/values.yaml
@@ -12,14 +12,92 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-aafcsReplicas: 1
-aafReplicas: 1
-image:
- readiness: oomk8s/readiness-check:1.1.0
- aafImage: nexus3.onap.org:10001/onap/aaf/authz-service
- aafVersion: latest
- csImage: nexus3.onap.org:10001/library/cassandra
- csVersion: 2.1.17
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ ubuntuInitRepository: registry.hub.docker.com
+ ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+ persistence:
+ enabled: true
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+config:
+ serviceServiceName: aaf-service
+ locateServiceName: aaf-locate
+ cmServiceName: aaf-cm
+ fsServiceName: aaf-fs
+ guiServiceName: aaf-gui
+ helloServiceName: aaf-hello
+ oauthServiceName: aaf-oauth
+ csServiceName: aaf-cass
+ # gerrit branch where the latest aaf/auth/sample/public code exists
+ gerritProject: http://gerrit.onap.org/r/aaf/authz.git
+ gerritBranch: master
+
+# 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
+
+ingress:
+ enabled: false
+
+## Persist data to a persitent volume
+persistence:
+ ## 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: aaf/data
+
+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-babel/.helmignore b/kubernetes/aai/charts/aai-babel/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/aai/charts/aai-babel/Chart.yaml b/kubernetes/aai/charts/aai-babel/Chart.yaml
new file mode 100644
index 0000000000..3b0e33f1c9
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/Chart.yaml
@@ -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: Babel microservice
+name: aai-babel
+version: 2.0.0
diff --git a/kubernetes/aai/charts/aai-babel/requirements.yaml b/kubernetes/aai/charts/aai-babel/requirements.yaml
new file mode 100644
index 0000000000..9552dfd9e0
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/requirements.yaml
@@ -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-babel/resources/config/artifact-generator.properties b/kubernetes/aai/charts/aai-babel/resources/config/artifact-generator.properties
new file mode 100644
index 0000000000..1d7e5fa01a
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/resources/config/artifact-generator.properties
@@ -0,0 +1,264 @@
+#action widget details
+AAI.model-version-id.action=fd7fb09e-d930-41b9-b83f-cfde9df48640
+AAI.model-invariant-id.action=af593b4b-490e-4665-ad74-2f6351c0a7ce
+#action-data widget details
+AAI.model-invariant-id.action-data=9551346c-7d8b-4daf-9926-b93e96e2344a
+AAI.model-version-id.action-data=2f80c596-27e5-4ca9-b5bb-e03a7fd4c0fd
+#allotted-resource widget details
+AAI.model-invariant-id.allotted-resource=f6d6a23d-a1a9-48ff-8419-b6530da2d381
+AAI.model-version-id.allotted-resource=7ad0915f-25c0-4a70-b9bc-185a75f87564
+#availability-zone widget details
+AAI.model-version-id.availability-zone=6c092fb1-21b2-456b-9e01-67fb4de1896e
+AAI.model-invariant-id.availability-zone=61b88c01-d819-41c0-8e21-7fd7ba47148e
+#az-and-dvs-switches widget details
+AAI.model-version-id.az-and-dvs-switches=b2dea88d-78a0-49bf-95c9-5819df08e966
+AAI.model-invariant-id.az-and-dvs-switches=53dc00d4-e6d9-48ec-b6cc-3d3797e9b896
+#class-of-service widget details
+AAI.model-version-id.class-of-service=d2fb27cc-15eb-4c4e-828e-71d41aaecc5b
+AAI.model-invariant-id.class-of-service=18094b19-d16d-4822-8acf-e92c6aefa178
+#cloud-region widget details
+AAI.model-version-id.cloud-region=2a160989-b202-47dd-874b-4a0f275998f7
+AAI.model-invariant-id.cloud-region=425b2158-e51d-4509-9945-dad4556474a3
+#complex widget details
+AAI.model-invariant-id.complex=af91c2f7-35fc-43cf-a13d-443f385b2353
+AAI.model-version-id.complex=3a8ab1ee-9220-4fe8-b89c-9251d160ddc2
+#connector widget details
+AAI.model-version-id.connector=22104c9f-29fd-462f-be07-96cd6b46dd33
+AAI.model-invariant-id.connector=4c01c948-7607-4d66-8a6c-99c2c2717936
+#constrained-element-set widget details
+AAI.model-invariant-id.constrained-element-set=c0292b4f-ee97-40cc-8c2e-f967c48f5701
+AAI.model-version-id.constrained-element-set=01102126-9c04-4a89-945b-b131e61e95d7
+#ctag-assignment widget details
+AAI.model-version-id.ctag-assignment=44e5cb1f-0938-41aa-b766-d4595109fe89
+AAI.model-invariant-id.ctag-assignment=fcb8d46b-b656-4ad6-8fa4-22cef74b443f
+#ctag-pool widget details
+AAI.model-invariant-id.ctag-pool=46c51d4e-d67e-4a9c-b1f5-49b1e9c6fcaa
+AAI.model-version-id.ctag-pool=2056c41f-23b9-4de7-9f50-819adad37d76
+#customer widget details
+AAI.model-invariant-id.customer=c1d4305f-cdbd-4bbe-9069-a2f4978fd89e
+AAI.model-version-id.customer=d4df5c27-98a1-4812-a8aa-c17f055b7a3f
+#cvlan-tag-entry widget details
+AAI.model-version-id.cvlan-tag-entry=c3878ffb-8d85-4114-bee6-e4074a9db10b
+AAI.model-invariant-id.cvlan-tag-entry=245cf4b0-7cc5-4eea-bbd9-753e939adcab
+#dvs-switch widget details
+AAI.model-invariant-id.dvs-switch=98fbb471-1f86-428e-bd8a-c8a25de6fa23
+AAI.model-version-id.dvs-switch=4cb44ae8-e3ab-452a-9f95-bcc8a44c55ea
+#edge-prop-names widget details
+AAI.model-invariant-id.edge-prop-names=7a08cad4-8759-46a5-8245-095d1ba57ac6
+AAI.model-version-id.edge-prop-names=f0442326-8201-4d0e-857c-74b4ddcbfc9f
+#element-choice-set widget details
+AAI.model-invariant-id.element-choice-set=9a011958-7165-47a3-b872-00951d1f09ae
+AAI.model-version-id.element-choice-set=af27fbfd-598d-44da-aeae-0f9d3a5fcd6a
+#entitlement widget details
+AAI.model-version-id.entitlement=7e27ba2e-b7db-4e13-9fae-d142152ef98a
+AAI.model-invariant-id.entitlement=ae75b5a0-d5e1-4f3a-b8fb-37626a753da3
+#flavor widget details
+AAI.model-invariant-id.flavor=bace8d1c-a261-4041-9e37-823117415d0f
+AAI.model-version-id.flavor=36200fb5-f251-4f5d-a520-7c5ad5c2cd4b
+#generic-vnf widget details
+AAI.model-version-id.generic-vnf=93a6166f-b3d5-4f06-b4ba-aed48d009ad9
+AAI.model-invariant-id.generic-vnf=acc6edd8-a8d4-4b93-afaa-0994068be14c
+#group-assignment widget details
+AAI.model-invariant-id.group-assignment=7cc05f25-7ba2-42b7-a237-c5662a1689e1
+AAI.model-version-id.group-assignment=fe578080-ce19-4604-8760-fc264fbb2565
+#image widget details
+AAI.model-version-id.image=f6a038c2-820c-42ba-8c2b-375e24e8f932
+AAI.model-invariant-id.image=3f4c7204-739b-4bbb-87a7-8a6856439c90
+#include-node-filter widget details
+AAI.model-invariant-id.include-node-filter=2a2d8ad2-af0a-4e1f-9982-0c899e7dc827
+AAI.model-version-id.include-node-filter=f05f804d-7057-4ffe-bdc5-39f2f0c9c9fd
+#instance-group widget details
+AAI.model-version-id.instance-group=8e6ee9dc-9017-444a-83b3-219edb018128
+AAI.model-invariant-id.instance-group=3bf1e610-45f7-4ad6-b833-ca4c5ee6a3fd
+#inventory-item widget details
+AAI.model-invariant-id.inventory-item=cd57d844-9017-4078-aa19-926935a3d77c
+AAI.model-version-id.inventory-item=69957f4a-2155-4b95-8d72-d6dd9b88b27b
+#inventory-item-data widget details
+AAI.model-version-id.inventory-item-data=0e54bb87-bd6e-4a2b-ad1c-6d935b87ae51
+AAI.model-invariant-id.inventory-item-data=87a383ae-cf03-432e-a9de-04e6a622d0fd
+#ipsec-configuration widget details
+AAI.model-invariant-id.ipsec-configuration=aca4c310-cb45-42bd-9f88-73e40ba7b962
+AAI.model-version-id.ipsec-configuration=d949fd10-36bf-408a-ac7a-cad5004d2e0d
+#key-data widget details
+AAI.model-version-id.key-data=c23ea04d-1a3b-453d-bc49-a6c783a5e92b
+AAI.model-invariant-id.key-data=f5faa464-c2f2-4cc3-89d2-a90452dc3a07
+#l3-interface-ipv4-address-list widget details
+AAI.model-version-id.l3-interface-ipv4-address-list=41e76b6f-1e06-4fd4-82cd-81c50fc4574b
+AAI.model-invariant-id.l3-interface-ipv4-address-list=aad85df2-09be-40fa-b867-16415e4e10e2
+#l3-interface-ipv6-address-list widget details
+AAI.model-invariant-id.l3-interface-ipv6-address-list=82966045-43ee-4982-8307-7e9610866140
+AAI.model-version-id.l3-interface-ipv6-address-list=d040621d-541a-477b-bb1b-a2b61b14e295
+#l3-network widget details
+AAI.model-version-id.l3-network=9111f20f-e680-4001-b83f-19a2fc23bfc1
+AAI.model-invariant-id.l3-network=3d560d81-57d0-438b-a2a1-5334dba0651a
+#lag-interface widget details
+AAI.model-version-id.lag-interface=ce95f7c3-b61b-4758-ae9e-7e943b1c103d
+AAI.model-invariant-id.lag-interface=e0ee9bde-c1fc-4651-a95d-8e0597bf7d70
+#lag-link widget details
+AAI.model-version-id.lag-link=d29a087a-af59-4053-a3f8-0f95a92faa75
+AAI.model-invariant-id.lag-link=86ffe6e5-4d0e-4cec-80b5-5c38aa3eff98
+#license widget details
+AAI.model-invariant-id.license=b9a9b337-1f86-42d3-b9f9-f987a089507c
+AAI.model-version-id.license=6889274b-a1dc-40ab-9090-93677e13e2e6
+#license-key-resource widget details
+AAI.model-invariant-id.license-key-resource=9022ebfe-b54f-4911-a6b2-8c3f5ec189b7
+AAI.model-version-id.license-key-resource=24b25f8c-b8bd-4c62-9421-87c12667aac9
+#l-interface widget details
+AAI.model-version-id.l-interface=a32613fd-18b9-459e-aab8-fffb3912966a
+AAI.model-invariant-id.l-interface=cea0a982-8d55-4093-921e-418fbccf7060
+#logical-link widget details
+AAI.model-version-id.logical-link=a1481a38-f8ba-4ae4-bdf1-06c2c6af4c54
+AAI.model-invariant-id.logical-link=fe012535-2c31-4a39-a739-612374c638a0
+#metadatum widget details
+AAI.model-invariant-id.metadatum=86dbb63a-265e-4614-993f-6771c30b56a5
+AAI.model-version-id.metadatum=6bae950e-8939-41d3-a6a7-251b03e4c1fc
+#model widget details
+AAI.model-invariant-id.model=06d1418a-5faa-452d-a94b-a2829df5f67b
+AAI.model-version-id.model=1f51c05c-b164-4c27-9c03-5cbb239fd6be
+#model-constraint widget details
+AAI.model-invariant-id.model-constraint=c28966f3-e758-4483-b37b-a90b05d3dd33
+AAI.model-version-id.model-constraint=ad70dd19-f156-4fb5-a865-97b5563b0d37
+#model-element widget details
+AAI.model-invariant-id.model-element=2076e726-3577-477a-a300-7fa65cd4df11
+AAI.model-version-id.model-element=753e813a-ba9e-4a1d-ab34-b2f6dc6eec0c
+#multicast-configuration widget details
+AAI.model-invariant-id.multicast-configuration=ea78c9e3-514d-4a0a-9162-13837fa54c35
+AAI.model-version-id.multicast-configuration=666a06ee-4b57-46df-bacf-908da8f10c3f
+#named-query widget details
+AAI.model-version-id.named-query=5c3b7c33-afa3-4be5-8da7-1a5ac6f99896
+AAI.model-invariant-id.named-query=80b712fd-0ad3-4180-a99c-8c995cf1cc32
+#named-query-element widget details
+AAI.model-version-id.named-query-element=204c641a-3494-48c8-979a-86856f5fd32a
+AAI.model-invariant-id.named-query-element=3c504d40-b847-424c-9d25-4fb7e0a3e994
+#network-policy widget details
+AAI.model-invariant-id.network-policy=6aa05779-94d7-4d8b-9bee-59ef2ab0c246
+AAI.model-version-id.network-policy=a0ccd9dc-7062-4940-9bcc-e91dd28af510
+#network-profile widget details
+AAI.model-version-id.network-profile=01f45471-4240-498c-a9e1-235dc0b8b4a6
+AAI.model-invariant-id.network-profile=2734b44a-b8a2-40f6-957d-6256589e5d00
+#newvce widget details
+AAI.model-version-id.newvce=7c79e11f-a408-4593-aa86-ba948a1236af
+AAI.model-invariant-id.newvce=4b05ec9c-c55d-4987-83ff-e08d6ddb694f
+#oam-network widget details
+AAI.model-invariant-id.oam-network=2851cf01-9c40-4064-87d4-6184a6fcff35
+AAI.model-version-id.oam-network=f4fb34f3-fd6e-4a8f-a3fb-4ab61a343b79
+#physical-link widget details
+AAI.model-invariant-id.physical-link=c822d81f-822f-4304-9623-1025b53da568
+AAI.model-version-id.physical-link=9c523936-95b4-4d7f-9f53-6bdfe0cf2c05
+#p-interface widget details
+AAI.model-invariant-id.p-interface=94043c37-4e73-439c-a790-0fdd697924cd
+AAI.model-version-id.p-interface=d2cdb2d0-fc1f-4a57-a89e-591b1c4e3754
+#pnf widget details
+AAI.model-version-id.pnf=e9f1fa7d-c839-418a-9601-03dc0d2ad687
+AAI.model-invariant-id.pnf=862b25a1-262a-4961-bdaa-cdc55d69785a
+#port-group widget details
+AAI.model-version-id.port-group=03e8bb6b-b48a-46ae-b5d4-e5af577e6844
+AAI.model-invariant-id.port-group=8ce940fb-55d7-4230-9e7f-a56cc2741f77
+#property-constraint widget details
+AAI.model-version-id.property-constraint=81706bbd-981e-4362-ae20-995cbcb2d995
+AAI.model-invariant-id.property-constraint=f4a863c3-6886-470a-a6ae-05723837ea45
+#pserver widget details
+AAI.model-invariant-id.pserver=6d932c8f-463b-4e76-83fb-87acfbaa2e2d
+AAI.model-version-id.pserver=72f0d495-bc27-4653-9e1a-eef76bd34bc9
+#related-lookup widget details
+AAI.model-invariant-id.related-lookup=468f6f5b-2996-41bb-b2a3-7cf9613ebb9b
+AAI.model-version-id.related-lookup=0988bab5-bf4f-4938-a419-ab249867d12a
+#reserved-prop-names widget details
+AAI.model-invariant-id.reserved-prop-names=0c3e0ba3-618c-498d-9127-c8d42b00170f
+AAI.model-version-id.reserved-prop-names=ac49d26d-9163-430e-934a-13b738a04f5c
+#result-data widget details
+AAI.model-version-id.result-data=4e9b50aa-5227-4f6f-b489-62e6bbc03c79
+AAI.model-invariant-id.result-data=ff656f23-6185-406f-9006-4b26834f3e1c
+#route-table-reference widget details
+AAI.model-version-id.route-table-reference=fed7e326-03a7-45ff-a3f2-471470d268c4
+AAI.model-invariant-id.route-table-reference=a8614b63-2636-4c4f-98df-fd448c4241db
+#routing-instance widget details
+AAI.model-invariant-id.routing-instance=1c2ded4f-8b01-4193-829c-966847dfec3e
+AAI.model-version-id.routing-instance=3ccbcbc7-d19e-44d5-a52f-7e18aa8d69fa
+#secondary-filter widget details
+AAI.model-version-id.secondary-filter=1380619d-dd1a-4cec-b755-c6407833e065
+AAI.model-invariant-id.secondary-filter=738ff299-6290-4c00-8998-bd0e96a07b93
+#segmentation-assignment widget details
+AAI.model-invariant-id.segmentation-assignment=6e814aee-46e1-4583-a9d4-0049bfd2b59b
+AAI.model-version-id.segmentation-assignment=c5171ae0-44fb-4c04-b482-d56702241a44
+#service widget details
+AAI.model-version-id.service=ecce2c42-3957-4ae0-9442-54bc6afe27b6
+AAI.model-invariant-id.service=07a3a60b-1b6c-4367-8173-8014386f89e3
+#service-capability widget details
+AAI.model-invariant-id.service-capability=b1a7cc05-d19d-443b-a5d1-733e325c4232
+AAI.model-version-id.service-capability=f9cfec1b-18da-4bba-bd83-4b26cca115cd
+#service-instance widget details
+AAI.model-invariant-id.service-instance=82194af1-3c2c-485a-8f44-420e22a9eaa4
+AAI.model-version-id.service-instance=46b92144-923a-4d20-b85a-3cbd847668a9
+#service-subscription widget details
+AAI.model-invariant-id.service-subscription=2e1a602a-acd8-4f78-94ff-618b802a303b
+AAI.model-version-id.service-subscription=5e68299a-79f2-4bfb-8fbc-2bae877a2459
+#site-pair widget details
+AAI.model-version-id.site-pair=7106bc02-6552-4fc3-8a56-4f3df9034531
+AAI.model-invariant-id.site-pair=db63f3e6-f8d1-484e-8d5e-191600b7914b
+#site-pair-set widget details
+AAI.model-invariant-id.site-pair-set=5d4dae3e-b402-4bfd-909e-ece12ff75d26
+AAI.model-version-id.site-pair-set=a5c6c1bc-dc38-468e-9459-bb08f87247df
+#snapshot widget details
+AAI.model-version-id.snapshot=962a7c8b-687f-4d32-a775-fe098e214bcd
+AAI.model-invariant-id.snapshot=24de00ef-aead-4b52-995b-0adf8d4bd90d
+#sriov-vf widget details
+AAI.model-version-id.sriov-vf=1e8b331f-3d4a-4160-b7aa-f4d5a8916625
+AAI.model-invariant-id.sriov-vf=04b2935f-33c4-40a9-8af0-8b52690042dc
+#start-node-filter widget details
+AAI.model-version-id.start-node-filter=aad96fd3-e75f-42fc-9777-3450c36f1168
+AAI.model-invariant-id.start-node-filter=083093a3-e407-447a-ba5d-7583e4d23e1d
+#subnet widget details
+AAI.model-version-id.subnet=f902a6bc-6be4-4fe5-8458-a6ec0056b374
+AAI.model-invariant-id.subnet=1b2c9ba7-e449-4831-ba15-3073672f5ef2
+#tagged-inventory-item-list widget details
+AAI.model-invariant-id.tagged-inventory-item-list=e78a7eaa-f65d-4919-9c2b-5b258c8c4d7e
+AAI.model-version-id.tagged-inventory-item-list=c246f6e2-e3a1-4697-94c0-5672a7fbbf04
+#tenant widget details
+AAI.model-invariant-id.tenant=97c26c99-6870-44c1-8a07-1d900d3f4ce6
+AAI.model-version-id.tenant=abcc54bc-bb74-49dc-9043-7f7171707545
+#tunnel-xconnect widget details
+AAI.model-invariant-id.tunnel-xconnect=50b9e2fa-005c-4bbe-b651-3251dece4cd8
+AAI.model-version-id.tunnel-xconnect=e7cb4ca8-e1a5-4487-a716-4ae0bcd8aef5
+#update-node-key widget details
+AAI.model-version-id.update-node-key=6004cfa6-eb6d-4062-971f-b1fde6b74aa0
+AAI.model-invariant-id.update-node-key=fe81c801-f65d-408a-b2b7-a729a18f8154
+#vce widget details
+AAI.model-version-id.vce=b6cf54b5-ec45-43e1-be64-97b4e1513333
+AAI.model-invariant-id.vce=bab6dceb-e7e6-4301-a5e0-a7399b48d792
+#vf-module widget details
+AAI.model-invariant-id.vf-module=ef86f9c5-2165-44f3-8fc3-96018b609ea5
+AAI.model-version-id.vf-module=c00563ae-812b-4e62-8330-7c4d0f47088a
+#vig-server widget details
+AAI.model-version-id.vig-server=8e8c22f1-fbdf-48ea-844c-8bdeb44e7b16
+AAI.model-invariant-id.vig-server=bed7c3b7-35d0-4cd9-abde-41b20e68b28e
+#virtual-data-center widget details
+AAI.model-invariant-id.virtual-data-center=5150abcf-0c5f-4593-9afe-a19c48fc4824
+AAI.model-version-id.virtual-data-center=6dd43ced-d789-47af-a759-d3abc14e3ac1
+#vlan widget details
+AAI.model-version-id.vlan=257d88a5-a269-4c35-944f-aca04fbdb791
+AAI.model-invariant-id.vlan=d2b1eaf1-ae59-4116-9ee4-aa0179faa4f8
+#vnfc widget details
+AAI.model-invariant-id.vnfc=96129eb9-f0de-4e05-8af2-73146473f766
+AAI.model-version-id.vnfc=5761e0a7-c6df-4d8a-9ebd-b8f445054dec
+#vnf-image widget details
+AAI.model-invariant-id.vnf-image=f9a628ff-7aa0-40e2-a93d-02d91c950982
+AAI.model-version-id.vnf-image=c4d3e747-ba4a-4b17-9896-94c6f18c19d3
+#volume widget details
+AAI.model-version-id.volume=0fbe2e8f-4d91-4415-a772-88387049b38d
+AAI.model-invariant-id.volume=ddd739b4-2b25-46c4-affc-41a32af5cc42
+#volume-group widget details
+AAI.model-invariant-id.volume-group=fcec1b02-b2d0-4834-aef8-d71be04717dd
+AAI.model-version-id.volume-group=99d44c90-1f61-4418-b9a6-56586bf38c79
+#vpe widget details
+AAI.model-invariant-id.vpe=053ec3a7-5b72-492d-b54d-123805a9b967
+AAI.model-version-id.vpe=203817d3-829c-42d4-942d-2a935478e993
+#vpls-pe widget details
+AAI.model-version-id.vpls-pe=b1566228-6785-4ce1-aea2-053736f80341
+AAI.model-invariant-id.vpls-pe=457ba89b-334c-4fbd-acc4-160ac0e0cdc0
+#vpn-binding widget details
+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
diff --git a/kubernetes/aai/charts/aai-babel/resources/config/auth/auth_policy.json b/kubernetes/aai/charts/aai-babel/resources/config/auth/auth_policy.json
new file mode 100644
index 0000000000..e7c6459f65
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/resources/config/auth/auth_policy.json
@@ -0,0 +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"
+ }]
+ }
+]}
diff --git a/kubernetes/aai/charts/aai-babel/resources/config/auth/tomcat_keystore b/kubernetes/aai/charts/aai-babel/resources/config/auth/tomcat_keystore
new file mode 100644
index 0000000000..9eec841aa2
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/resources/config/auth/tomcat_keystore
Binary files differ
diff --git a/kubernetes/aai/charts/aai-babel/resources/config/babel-auth.properties b/kubernetes/aai/charts/aai-babel/resources/config/babel-auth.properties
new file mode 100644
index 0000000000..e7dfda081f
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/resources/config/babel-auth.properties
@@ -0,0 +1,2 @@
+auth.policy.file=/auth/auth_policy.json
+auth.authentication.disable=true
diff --git a/kubernetes/aai/charts/aai-babel/resources/config/logback.xml b/kubernetes/aai/charts/aai-babel/resources/config/logback.xml
new file mode 100644
index 0000000000..f406dc8581
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/resources/config/logback.xml
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xml>
+<configuration scan="true" scanPeriod="30 seconds" debug="true">
+ <include resource="org/springframework/boot/logging/logback/base.xml" />
+
+ <property name="componentName" value="AAI-BAS" />
+ <property name="logDirectory" value="/var/log/onap/${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|%mdc{ServiceName}|%mdc{PartnerName}|%mdc{TargetEntity}|%mdc{TargetServiceName}|%.-5level|%logger|%mdc{ClassName}|%msg%n" />
+
+ <property name="auditLogPattern"
+ value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{BeginTimestamp}|%mdc{EndTimestamp}|%mdc{RequestId}|%mdc{ServiceInstanceId}|%thread|%mdc{ServerFQDN}|%mdc{ServiceName}|%mdc{PartnerName}|%mdc{StatusCode}|%mdc{ResponseCode}|%mdc{ResponseDescription}|%logger|%.-5level|||%mdc{ElapsedTime}|%mdc{RemoteHost}|%mdc{ClientAddress}|%mdc{ClassName}|||%msg%n" />
+
+ <property name="metricsLogPattern"
+ value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%mdc{BeginTimestamp}|%mdc{EndTimestamp}|%mdc{RequestId}|%mdc{ServiceInstanceId}|%thread|%mdc{ServerFQDN}|%mdc{ServiceName}|%mdc{PartnerName}|%mdc{TargetEntity}|%mdc{TargetServiceName}|%mdc{StatusCode}|%mdc{ResponseCode}|%mdc{ResponseDescription}|%logger|%.-5level|||%mdc{ElapsedTime}|%mdc{RemoteHost}|%mdc{ClientAddress}|%mdc{ClassName}|||%msg%n" />
+
+ <!-- ============================================================================ -->
+ <!-- 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>
+
+ <!-- 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>${auditLogPattern}</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>${metricsLogPattern}</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">
+ <!-- allow only events with a level below INFO, that is TRACE and DEBUG -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt; INFO.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>false</includeCallerData>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <!-- Default / root appenders -->
+ <!-- This determines the logging level for 3rd party code -->
+ <!-- ============================================================================ -->
+
+ <root level="INFO">
+ <appender-ref ref="asyncEELF" />
+ <appender-ref ref="asyncEELFDebug" />
+</root>
+
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+
+ <logger name="com.att.eelf" level="INFO" additivity="false">
+ <appender-ref ref="asyncEELF" />
+</logger>
+
+ <!-- The level of this logger determines the contents of the debug log -->
+ <logger name="com.att.eelf.debug" level="INFO" additivity="false">
+ <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>
+
+ <!-- ============================================================================ -->
+ <!-- Non-EELF loggers -->
+ <!-- ============================================================================ -->
+
+ <!-- ATT packages including DMAAP message routing -->
+ <logger name="com.att" level="INFO" />
+
+ <!-- Spring related loggers -->
+ <logger name="org.springframework" level="WARN" />
+ <logger name="org.springframework.beans" level="WARN" />
+ <logger name="org.springframework.web" level="WARN" />
+
+ <!-- Other Loggers that may help troubleshoot -->
+ <logger name="org.apache" level="WARN" />
+ <logger name="org.apache.commons" 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" />
+
+</configuration>
diff --git a/kubernetes/aai/charts/aai-babel/templates/configmap.yaml b/kubernetes/aai/charts/aai-babel/templates/configmap.yaml
new file mode 100644
index 0000000000..ea304dc5e2
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/templates/configmap.yaml
@@ -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.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/aai/charts/aai-babel/templates/deployment.yaml b/kubernetes/aai/charts/aai-babel/templates/deployment.yaml
new file mode 100644
index 0000000000..2aac029a9f
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/templates/deployment.yaml
@@ -0,0 +1,132 @@
+# 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:
+ 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:
+ - name: CONFIG_HOME
+ value: /opt/app/babel/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
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/babel/config/artifact-generator.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: artifact-generator.properties
+ - mountPath: /opt/app/babel/config/babel-auth.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: babel-auth.properties
+ - mountPath: /opt/app/babel/config/auth
+ name: {{ include "common.fullname" . }}-secrets
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/babel/config/logback.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: logback.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
+ 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" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: artifact-generator.properties
+ path: artifact-generator.properties
+ - key: babel-auth.properties
+ path: babel-auth.properties
+ - key: logback.xml
+ path: logback.xml
+ - name: {{ include "common.fullname" . }}-secrets
+ secret:
+ secretName: {{ include "common.fullname" . }}-babel-secrets
+ - 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-babel/templates/secrets.yaml b/kubernetes/aai/charts/aai-babel/templates/secrets.yaml
new file mode 100644
index 0000000000..9875e573e1
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/templates/secrets.yaml
@@ -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" . }}-babel-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-babel/templates/service.yaml b/kubernetes/aai/charts/aai-babel/templates/service.yaml
new file mode 100644
index 0000000000..745c73b0e1
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/templates/service.yaml
@@ -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-babel/values.yaml b/kubernetes/aai/charts/aai-babel/values.yaml
new file mode 100644
index 0000000000..1e74e35cf9
--- /dev/null
+++ b/kubernetes/aai/charts/aai-babel/values.yaml
@@ -0,0 +1,63 @@
+# 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/babel:1.2-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: babel
+ externalPort: 79
+ internalPort: 9516
+ nodePort: 79
+
+ingress:
+ enabled: false
+
+resources: {}
diff --git a/kubernetes/aai/charts/aai-cassandra/.helmignore b/kubernetes/aai/charts/aai-cassandra/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aai/charts/aai-cassandra/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/aai/charts/aai-cassandra/Chart.yaml b/kubernetes/aai/charts/aai-cassandra/Chart.yaml
new file mode 100644
index 0000000000..17694cbfff
--- /dev/null
+++ b/kubernetes/aai/charts/aai-cassandra/Chart.yaml
@@ -0,0 +1,4 @@
+apiVersion: v1
+description: ONAP AAI Cassandra
+name: aai-cassandra
+version: 2.0.0
diff --git a/kubernetes/aai/charts/aai-cassandra/templates/service.yaml b/kubernetes/aai/charts/aai-cassandra/templates/service.yaml
new file mode 100644
index 0000000000..1aded3c09c
--- /dev/null
+++ b/kubernetes/aai/charts/aai-cassandra/templates/service.yaml
@@ -0,0 +1,39 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+spec:
+ type: {{ .Values.service.type }}
+# Not working, open k8s bug: https://github.com/kubernetes/kubernetes/issues/58662
+ publishNotReadyAddresses: true
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName3 }}
+ - port: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName3 }}
+ {{- else -}}
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName2 }}
+ - port: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName3 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
diff --git a/kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml b/kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml
new file mode 100644
index 0000000000..1a00b3c1d7
--- /dev/null
+++ b/kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml
@@ -0,0 +1,114 @@
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ podManagementPolicy: {{ .Values.podManagementPolicy }}
+ updateStrategy:
+ type: {{ .Values.updateStrategy.type }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: {{ .Values.image }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ timeoutSeconds: {{ .Values.liveness.periodSeconds }}
+ lifecycle:
+ preStop:
+ exec:
+ command: ["/bin/sh", "-c", "PID=$(pidof java) && kill $PID && while ps -p $PID > /dev/null; do sleep 1; done"]
+ env:
+ {{- $seed_size := default 1 .Values.replicaCount | int -}}
+ {{- $global := . }}
+ - name: MAX_HEAP_SIZE
+ value: {{ .Values.config.heap.max }}
+ - name: HEAP_NEWSIZE
+ value: {{ .Values.config.heap.min }}
+ - name: CASSANDRA_SEEDS
+ value: "{{- range $i, $e := until $seed_size }}{{ template "common.fullname" $global }}-{{ $i }}.{{ include "common.servicename" $global }},{{- end }}"
+ - name: JVM_OPTS
+ value: {{ .Values.config.jvmOpts | quote }}
+ - name: CASSANDRA_CLUSTER_NAME
+ value: {{ .Values.config.clusterName | quote }}
+ - name: CASSANDRA_DC
+ value: {{ .Values.config.dataCenter | quote }}
+ - name: CASSANDRA_RACK
+ value: {{ .Values.config.rackName | quote }}
+ - name: CASSANDRA_AUTO_BOOTSTRAP
+ value: {{ .Values.config.autoBootstrap | quote }}
+ - name: POD_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - name: cassandra-data
+ mountPath: /var/lib/cassandra
+ 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
+ {{- if not .Values.persistence.enabled }}
+ - name: cassandra-data
+ emptyDir: {}
+ {{- else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: cassandra-data
+ labels:
+ app: {{ template "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ annotations:
+ volume.beta.kubernetes.io/storage-class: {{ .Values.persistence.storageClass }}
+ spec:
+ accessModes:
+ - {{ .Values.persistence.accessMode | quote }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size | quote }}
+ {{- end }}
diff --git a/kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml b/kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml
new file mode 100644
index 0000000000..f45a4504b3
--- /dev/null
+++ b/kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml
@@ -0,0 +1,25 @@
+#{{ if .Values.persistence.enabled }}
+{{- $root := . -}}
+{{ range $i, $e := until (atoi (quote $root.Values.replicaCount) | default 3) }}
+---
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+ name: {{ $root.Release.Name }}-{{ $root.Values.service.name }}-{{ $i }}
+ namespace: {{ $root.Release.Namespace }}
+ labels:
+ type: {{ $root.Values.persistence.storageType }}
+ app: {{ $root.Values.service.name }}
+ chart: {{ $root.Chart.Name }}-{{ $root.Chart.Version | replace "+" "_" }}
+ release: {{ $root.Release.Name }}
+ heritage: {{ $root.Release.Service }}
+spec:
+ capacity:
+ storage: {{ $root.Values.persistence.size }}
+ accessModes:
+ - {{ $root.Values.persistence.accessMode }}
+ hostPath:
+ path: {{ $root.Values.persistence.mountPath }}/{{ $root.Release.Name }}/{{ $root.Values.persistence.mountSubPath }}-{{ $i }}
+ persistentVolumeReclaimPolicy: {{ $root.Values.persistence.volumeReclaimPolicy }}
+{{ end }}
+#{{ end }}
diff --git a/kubernetes/aai/charts/aai-cassandra/values.yaml b/kubernetes/aai/charts/aai-cassandra/values.yaml
new file mode 100644
index 0000000000..05f2d08800
--- /dev/null
+++ b/kubernetes/aai/charts/aai-cassandra/values.yaml
@@ -0,0 +1,107 @@
+# Default values for cassandra.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global: # global defaults
+ nodePortPrefix: 302
+
+
+# application image
+dockerhubRepository: registry.hub.docker.com
+image: cassandra:2.1
+pullPolicy: Always
+
+# application configuration
+config:
+ heap:
+ max: 512M
+ min: 100M
+ jvmOpts: -Dcassandra.consistent.rangemovement=false
+ clusterName: aai-cluster
+ dataCenter: Pod lab
+ rackName: Rack1
+ autoBootstrap: true
+ ports:
+ cql: 9042
+ thrift: 9160
+ # If a JVM Agent is in place
+ # agent: 61621
+
+# default number of instances
+replicaCount: 3
+
+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: ClusterIP
+ name: aai-cassandra
+ internalPort: 9042
+ portName: cql
+ internalPort2: 9160
+ portName2: thrift
+ internalPort3: 61621
+ portName3: agent
+
+podManagementPolicy: OrderedReady
+updateStrategy:
+ type: OnDelete
+
+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: ReadWriteOnce
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: aai/cassandra
+ storageType: local
+ storageClass: ""
+
+
+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-champ/Chart.yaml b/kubernetes/aai/charts/aai-champ/Chart.yaml
new file mode 100644
index 0000000000..1704337efa
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/Chart.yaml
@@ -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 Champ microservice
+name: aai-champ
+version: 2.0.0
diff --git a/kubernetes/aai/charts/aai-champ/requirements.yaml b/kubernetes/aai/charts/aai-champ/requirements.yaml
new file mode 100644
index 0000000000..9552dfd9e0
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/requirements.yaml
@@ -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-champ/resources/config/appconfig/auth/champ_policy.json b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/champ_policy.json
new file mode 100644
index 0000000000..ee04a714be
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/champ_policy.json
@@ -0,0 +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"
+ }
+ ]
+ }
+ ]
+}
+
diff --git a/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore
new file mode 100644
index 0000000000..9eec841aa2
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore
Binary files differ
diff --git a/kubernetes/aai/charts/aai-champ/resources/config/appconfig/champ-api.properties b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/champ-api.properties
new file mode 100644
index 0000000000..3b90c5522f
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/champ-api.properties
@@ -0,0 +1,6 @@
+keyName=aai-uuid
+sourceOfTruthName=source-of-truth
+createdTsName=aai-created-ts
+lastModTsName=aai-last-mod-ts
+collectionPropertiesKey=properties
+
diff --git a/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml b/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
new file mode 100644
index 0000000000..b3d7bc22b8
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
@@ -0,0 +1,66 @@
+<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
+ ">
+
+ <!-- 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>
+
+ <!-- Graph Implementation Configuration-->
+ <util:map id="props" map-class="java.util.HashMap" key-type="java.lang.String" value-type="java.lang.Object">
+ <entry key="champcore.event.stream.buffer.capacity" value="50" value-type="java.lang.Integer"/>
+ <entry key="champcore.event.stream.publisher-pool-size" value="10" value-type="java.lang.Integer"/>
+ <entry key="champcore.event.stream.publisher" value-ref="champEventPublisher"/>
+
+ <entry key="graph.name" value="aaigraph"/>
+ <entry key="storage.backend" value="cassandra"/>
+ <entry key="storage.cassandra.read-consistency-level" value="LOCAL_QUORUM"/>
+ <entry key="storage.cassandra.write-consistency-level" value="LOCAL_QUORUM"/>
+ <entry key="storage.cassandra.replication-factor" value="3"/>
+ <entry key="storage.cassandra.replication-strategy-class" value="org.apache.cassandra.locator.SimpleStrategy"/>
+
+ {{- $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"/>
+ </util:map>
+
+ <!-- Janus Implementation -->
+ <bean id="graphBuilder" class="org.onap.aai.champjanus.graph.impl.JanusChampGraphImpl$Builder">
+ <constructor-arg value="aaigraph"/>
+ <constructor-arg ref="props" />
+ </bean>
+
+ <bean id="graphImpl" class="org.onap.aai.champjanus.graph.impl.JanusChampGraphImpl">
+ <constructor-arg ref="graphBuilder" />
+ </bean>
+
+ <bean id="champUUIDService" class="org.onap.champ.service.ChampUUIDService" >
+ <constructor-arg name="graphImpl" ref="graphImpl" />
+ </bean>
+
+ <bean id="cache" class="org.onap.champ.service.ChampTransactionCache" >
+ <constructor-arg name="txTimeOutInSec" value="600" />
+ <constructor-arg name="graphImpl" ref="graphImpl" />
+ </bean>
+
+ <bean id="champDataService" class="org.onap.champ.service.ChampDataService" >
+ <constructor-arg name="champUUIDService" ref="champUUIDService" />
+ <constructor-arg name="graphImpl" ref="graphImpl" />
+ <constructor-arg name="cache" ref="cache" />
+ </bean>
+
+ <bean id="champRestService" class="org.onap.champ.ChampRESTAPI" >
+ <constructor-arg name="champDataService" ref="champDataService" />
+ <constructor-arg name="champAsyncRequestProcessor"><null/></constructor-arg>
+ </bean>
+</beans>
diff --git a/kubernetes/aai/charts/aai-champ/templates/configmap.yaml b/kubernetes/aai/charts/aai-champ/templates/configmap.yaml
new file mode 100644
index 0000000000..a085839cc1
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/templates/configmap.yaml
@@ -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" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/appconfig/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dynamic
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/dynamic/conf/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/aai/charts/aai-champ/templates/deployment.yaml b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
new file mode 100644
index 0000000000..0941f44be4
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
@@ -0,0 +1,134 @@
+# 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
+ - 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 }}"
+ 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/champ-service/appconfig"
+ - name: GRAPHIMPL
+ value: "janus-deps"
+ - 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/champ-service/dynamic/conf"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/champ-service/appconfig/champ-api.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: champ-api.properties
+ - mountPath: /opt/app/champ-service/appconfig/auth
+ name: {{ include "common.fullname" . }}-secrets
+ - mountPath: /opt/app/champ-service/dynamic/conf/champ-beans.xml
+ name: {{ include "common.fullname" . }}-dynamic-config
+ subPath: champ-beans.xml
+ - mountPath: /logs
+ 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 }}
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: champ-api.properties
+ path: champ-api.properties
+ - name: {{ include "common.fullname" . }}-secrets
+ secret:
+ secretName: {{ include "common.fullname" . }}-champ
+ - name: {{ include "common.fullname" . }}-dynamic-config
+ configMap:
+ name: {{ include "common.fullname" . }}-dynamic
+ items:
+ - key: champ-beans.xml
+ path: champ-beans.xml
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-champ/templates/secrets.yaml b/kubernetes/aai/charts/aai-champ/templates/secrets.yaml
new file mode 100644
index 0000000000..c0e2559db9
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/templates/secrets.yaml
@@ -0,0 +1,38 @@
+# 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" . }}-champ
+ namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/appconfig/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-champ/templates/service.yaml b/kubernetes/aai/charts/aai-champ/templates/service.yaml
new file mode 100644
index 0000000000..745c73b0e1
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/templates/service.yaml
@@ -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-champ/values.yaml b/kubernetes/aai/charts/aai-champ/values.yaml
new file mode 100644
index 0000000000..7849418ccd
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/values.yaml
@@ -0,0 +1,63 @@
+# 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/champ:1.2-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
+ name: champ
+ portName: champ
+ internalPort: 9522
+ nodePort: 78
+
+ingress:
+ enabled: false
+
+resources: {}
diff --git a/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v10.xml b/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v10.xml
deleted file mode 100644
index 7eddd10179..0000000000
--- a/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v10.xml
+++ /dev/null
@@ -1,5558 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ============LICENSE_START=======================================================
- org.openecomp.aai
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.openecomp.org.v10" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v10" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.openecomp.org.v10.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.openecomp.org.v10.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.openecomp.org.v10.CloudInfrastructure" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.openecomp.org.v10.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.openecomp.org.v10.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.openecomp.org.v10.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.openecomp.org.v10.AaiInternal" />
- <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.openecomp.org.v10.Nodes"/>
- </java-attributes>
- </java-type>
-
- <java-type name="Nodes">
- <xml-root-element name="nodes" />
- </java-type>
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.openecomp.org.v10.EdgeTagQueryResult" />
- <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.openecomp.org.v10.EdgeTagQueryRequest" />
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.openecomp.org.v10.SearchResults" />
- <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.openecomp.org.v10.SdnZoneResponse" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryResult">
- <xml-root-element name="edge-tag-query-result" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v10.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.openecomp.org.v10.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.openecomp.org.v10.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v10.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryRequest">
- <xml-root-element name="edge-tag-query-request" />
- <java-attributes>
- <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
- <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
- <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.openecomp.org.v10.StartNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.openecomp.org.v10.IncludeNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.openecomp.org.v10.SecondaryFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.openecomp.org.v10.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the A&amp;AI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="SdnZoneResponse">
- <xml-root-element name="sdn-zone-response" />
- <java-attributes>
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.openecomp.org.v10.OamNetworks" />
- <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.openecomp.org.v10.AzAndDvsSwitches" />
- </java-attributes>
- </java-type>
-
- <java-type name="AzAndDvsSwitches">
- <xml-root-element name="az-and-dvs-switches" />
- <java-attributes>
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.openecomp.org.v10.DvsSwitches" />
- <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v10.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.openecomp.org.v10.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.openecomp.org.v10.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control. Clear each usage with AAI team." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.openecomp.org.v10.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.openecomp.org.v10.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.openecomp.org.v10.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.openecomp.org.v10.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.openecomp.org.v10.Complexes" />
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.openecomp.org.v10.CloudRegions" />
- <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.openecomp.org.v10.NetworkProfiles" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.openecomp.org.v10.Pservers" />
- <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.openecomp.org.v10.VirtualDataCenters" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.openecomp.org.v10.CloudRegion" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site. NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.openecomp.org.v10.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.openecomp.org.v10.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.openecomp.org.v10.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.openecomp.org.v10.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.openecomp.org.v10.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.openecomp.org.v10.Images" />
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.openecomp.org.v10.DvsSwitches" />
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.openecomp.org.v10.OamNetworks" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.openecomp.org.v10.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&amp;Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&amp;T's AIC." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.openecomp.org.v10.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleModelCustomizationId" name="vf-module-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="searchable" value="volume-group-id,volume-group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.openecomp.org.v10.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&amp;AI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in A&amp;AI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.openecomp.org.v10.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.openecomp.org.v10.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&amp;AI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Complexes">
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- </xml-properties>
- <xml-root-element name="complexes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.openecomp.org.v10.Complex" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Complex">
- <xml-root-element name="complex" />
- <java-attributes>
- <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gamma complex name for LCP instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type, e.g., central office, data center." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
- <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
- <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
- <xml-element java-attribute="state" name="state" type="java.lang.String" />
- <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
- <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
- <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
- <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
- <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
- <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
- <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
- <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.openecomp.org.v10.CtagPools" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
- <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
- <xml-property name="uniqueProps" value="physical-location-id" />
- <xml-property name="container" value="complexes" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagPools">
- <xml-root-element name="ctag-pools" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.openecomp.org.v10.CtagPool" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagPool">
- <xml-root-element name="ctag-pool" />
- <java-attributes>
- <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="The Target provider edge router" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Describes what the intended purpose of this pool is." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Comma separated list of ctags" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="complex" />
- <xml-property name="container" value="ctag-pools" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.openecomp.org.v10.Tenant" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.openecomp.org.v10.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id" />
- <xml-property name="searchable" value="tenant-id,tenant-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.openecomp.org.v10.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.openecomp.org.v10.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.openecomp.org.v10.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether A&amp;AI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isPortMirrored" name="is-port-mirrored" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not port is a mirrored." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.openecomp.org.v10.Vlans" />
- <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.openecomp.org.v10.SriovVfs" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v10.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v10.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,newvce,vpe,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovVfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
- </xml-properties>
- <xml-root-element name="sriov-vfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.openecomp.org.v10.SriovVf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovVf">
- <xml-root-element name="sriov-vf" />
- <java-attributes>
- <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option is used to set the link status. Valid values as of 1607 are on, off, and auto." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
- <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="sriov-vfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.openecomp.org.v10.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnId" name="vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- <xml-property name="dbAlias" value="vpn-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v10.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v10.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-id" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.openecomp.org.v10.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.openecomp.org.v10.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.openecomp.org.v10.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.openecomp.org.v10.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.openecomp.org.v10.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v10.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.openecomp.org.v10.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="DvsSwitches">
- <xml-properties>
- <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and VPEs." />
- </xml-properties>
- <xml-root-element name="dvs-switches" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.openecomp.org.v10.DvsSwitch" />
- </java-attributes>
- </java-type>
-
- <java-type name="DvsSwitch">
- <xml-root-element name="dvs-switch" />
- <java-attributes>
- <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="DVS switch name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL used to reach the vcenter" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs. A&amp;AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&amp;AI. " />
- <xml-property name="indexedProps" value="vcenter-url,switch-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="dvs-switches" />
- </xml-properties>
- </java-type>
-
- <java-type name="NetworkProfiles">
- <xml-properties>
- <xml-property name="description" value="Collection of network profiles" />
- </xml-properties>
- <xml-root-element name="network-profiles" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.openecomp.org.v10.NetworkProfile" />
- </java-attributes>
- </java-type>
-
- <java-type name="NetworkProfile">
- <xml-root-element name="network-profile" />
- <java-attributes>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique name of network profile." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted SNMP community string" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
- <xml-property name="indexedProps" value="nm-profile-name" />
- <xml-property name="container" value="network-profiles" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.openecomp.org.v10.Pserver" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v10.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.openecomp.org.v10.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name,prov-status" />
- <xml-property name="nameProps" value="prov-status" />
- <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.openecomp.org.v10.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,vpe,vpls-pe,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="OamNetworks">
- <xml-properties>
- <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. " />
- </xml-properties>
- <xml-root-element name="oam-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.openecomp.org.v10.OamNetwork" />
- </java-attributes>
- </java-type>
-
- <java-type name="OamNetwork">
- <xml-root-element name="oam-network" />
- <java-attributes>
- <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="cvlan-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="OAM network, to be deprecated shortly. Do not use for new purposes. " />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="oam-networks" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v10.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="VirtualDataCenters">
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- </xml-properties>
- <xml-root-element name="virtual-data-centers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.openecomp.org.v10.VirtualDataCenter" />
- </java-attributes>
- </java-type>
-
- <java-type name="VirtualDataCenter">
- <xml-root-element name="virtual-data-center" />
- <java-attributes>
- <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the vdc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the virtual data center" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- <xml-property name="nameProps" value="vdc-name" />
- <xml-property name="indexedProps" value="vdc-name,vdc-id" />
- <xml-property name="container" value="virtual-data-centers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
-
-
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.openecomp.org.v10.Connectors" />
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.openecomp.org.v10.Customers" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connectors">
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- </xml-properties>
- <xml-root-element name="connectors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.openecomp.org.v10.Connector" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connector">
- <xml-root-element name="connector" />
- <java-attributes>
- <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of resource instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v10.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- <xml-property name="indexedProps" value="resource-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version" />
- <xml-property name="container" value="connectors" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.openecomp.org.v10.Customer" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.openecomp.org.v10.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="global-customer-id,subscriber-name" />
- <xml-property name="uniqueProps" value="global-customer-id" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.openecomp.org.v10.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from A&amp;AI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.openecomp.org.v10.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- <xml-property name="crossEntityReference" value="service-instance,service-type" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.openecomp.org.v10.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v10.Metadata" />
- <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.openecomp.org.v10.AllottedResources" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id,service-instance-name" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by ASDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.openecomp.org.v10.VnfImages" />
- <xml-element java-attribute="services" name="services" type="inventory.aai.openecomp.org.v10.Services" />
- <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.openecomp.org.v10.ServiceCapabilities" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.openecomp.org.v10.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.openecomp.org.v10.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImages">
- <xml-properties>
- <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- </xml-properties>
- <xml-root-element name="vnf-images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.openecomp.org.v10.VnfImage" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImage">
- <xml-root-element name="vnf-image" />
- <java-attributes>
- <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of this asset" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
- <xml-property name="uniqueProps" value="vnf-image-uuid" />
- <xml-property name="container" value="vnf-images" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from ASDC." />
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.openecomp.org.v10.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from ASDC. Does not strictly map to ASDC services." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceCapabilities">
- <xml-properties>
- <xml-property name="description" value="Collection of service capabilities." />
- </xml-properties>
- <xml-root-element name="service-capabilities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.openecomp.org.v10.ServiceCapability" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceCapability">
- <xml-root-element name="service-capability" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models. No new use should be made of this." />
- <xml-property name="indexedProps" value="service-type,vnf-type" />
- <xml-property name="container" value="service-capabilities" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.openecomp.org.v10.LogicalLinks" />
- <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.openecomp.org.v10.SitePairSets" />
- <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.openecomp.org.v10.VpnBindings" />
- <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.openecomp.org.v10.VplsPes" />
- <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.openecomp.org.v10.MulticastConfigurations" />
- <xml-element java-attribute="vces" name="vces" type="inventory.aai.openecomp.org.v10.Vces" />
- <xml-element java-attribute="vpes" name="vpes" type="inventory.aai.openecomp.org.v10.Vpes" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.openecomp.org.v10.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.openecomp.org.v10.L3Networks" />
- <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.openecomp.org.v10.NetworkPolicies" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.openecomp.org.v10.GenericVnfs" />
- <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.openecomp.org.v10.LagLinks" />
- <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.openecomp.org.v10.Newvces" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.openecomp.org.v10.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.openecomp.org.v10.PhysicalLinks" />
- <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.openecomp.org.v10.IpsecConfigurations" />
- <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.openecomp.org.v10.RouteTableReferences" />
- <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.openecomp.org.v10.InstanceGroups" />
- <xml-element java-attribute="zones" name="zones" type="inventory.aai.openecomp.org.v10.Zones" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.openecomp.org.v10.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Reason for this entity, role it is playing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairSets">
- <xml-properties>
- <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
- </xml-properties>
- <xml-root-element name="site-pair-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.openecomp.org.v10.SitePairSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePairSet">
- <xml-root-element name="site-pair-set" />
- <java-attributes>
- <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of site pair set." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingInstances" name="routing-instances" type="inventory.aai.openecomp.org.v10.RoutingInstances" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
- <xml-property name="indexedProps" value="site-pair-set-id" />
- <xml-property name="uniqueProps" value="site-pair-set-id" />
- <xml-property name="container" value="site-pair-sets" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="RoutingInstances">
- <xml-properties>
- <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
- </xml-properties>
- <xml-root-element name="routing-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.openecomp.org.v10.RoutingInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="RoutingInstance">
- <xml-root-element name="routing-instance" />
- <java-attributes>
- <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of routing instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rpm owner" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sitePairs" name="site-pairs" type="inventory.aai.openecomp.org.v10.SitePairs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="routing-instance-id" />
- <xml-property name="uniqueProps" value="routing-instance-id" />
- <xml-property name="dependentOn" value="site-pair-set" />
- <xml-property name="container" value="routing-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairs">
- <xml-properties>
- <xml-property name="description" value="probe within a set" />
- </xml-properties>
- <xml-root-element name="site-pairs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.openecomp.org.v10.SitePair" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePair">
- <xml-root-element name="site-pair" />
- <java-attributes>
- <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version, v4, v6" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The type of destinatination equipment. Could be Router, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="classesOfService" name="classes-of-service" type="inventory.aai.openecomp.org.v10.ClassesOfService" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="site-pair-id" />
- <xml-property name="uniqueProps" value="site-pair-id" />
- <xml-property name="dependentOn" value="routing-instance" />
- <xml-property name="container" value="site-pairs" />
- </xml-properties>
- </java-type>
-
- <java-type name="ClassesOfService">
- <xml-properties>
- <xml-property name="description" value="class-of-service of probe" />
- </xml-properties>
- <xml-root-element name="classes-of-service" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.openecomp.org.v10.ClassOfService" />
- </java-attributes>
- </java-type>
-
- <java-type name="ClassOfService">
- <xml-root-element name="class-of-service" />
- <java-attributes>
- <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="cos" />
- <xml-property name="dependentOn" value="site-pair" />
- <xml-property name="container" value="classes-of-service" />
- </xml-properties>
- </java-type>
-
- <java-type name="VpnBindings">
- <xml-root-element name="vpn-bindings" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.openecomp.org.v10.VpnBinding" />
- </java-attributes>
- </java-type>
-
- <java-type name="VpnBinding">
- <xml-root-element name="vpn-binding" />
- <java-attributes>
- <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="VPN ID, globally unique within A&amp;AI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="VPN Name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargets" name="route-targets" type="inventory.aai.openecomp.org.v10.RouteTargets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList">
- <xml-properties>
- <xml-property name="description" value="l3-networks relate to vpn-bindings" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPN binding" />
- <xml-property name="nameProps" value="vpn-name,vpn-type" />
- <xml-property name="indexedProps" value="vpn-name,vpn-id,vpn-type" />
- <xml-property name="searchable" value="vpn-id,vpn-name" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="container" value="vpn-bindings" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="VplsPes">
- <xml-properties>
- <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
- </xml-properties>
- <xml-root-element name="vpls-pes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.openecomp.org.v10.VplsPe" />
- </java-attributes>
- </java-type>
-
- <java-type name="VplsPe">
- <xml-root-element name="vpls-pe" />
- <java-attributes>
- <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v10.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPLS Provider Edge routers." />
- <xml-property name="indexedProps" value="prov-status,equipment-name" />
- <xml-property name="container" value="vpls-pes" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="MulticastConfigurations">
- <xml-properties>
- <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
- </xml-properties>
- <xml-root-element name="multicast-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.openecomp.org.v10.MulticastConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="MulticastConfiguration">
- <xml-root-element name="multicast-configuration" />
- <java-attributes>
- <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of multicast configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rp type of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="multicast-configuration-id" />
- <xml-property name="uniqueProps" value="multicast-configuration-id" />
- <xml-property name="container" value="multicast-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vces">
- <xml-properties>
- <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma. This object is deprecated." />
- </xml-properties>
- <xml-root-element name="vces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.openecomp.org.v10.Vce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vce">
- <xml-root-element name="vce" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network role being played by this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router. Implied length of /64." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - see child relationships" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.openecomp.org.v10.PortGroups" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v10.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v10.Entitlements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma. This object is deprecated." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vces" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="PortGroups">
- <xml-root-element name="port-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.openecomp.org.v10.PortGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="PortGroup">
- <xml-root-element name="port-group" />
- <java-attributes>
- <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network name of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupId" name="port-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID for port group in vmware" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Likely to duplicate value of neutron network name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.openecomp.org.v10.CvlanTags" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
- <xml-property name="nameProps" value="port-group-name" />
- <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
- <xml-property name="dependentOn" value="vce" />
- <xml-property name="container" value="port-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="CvlanTags">
- <xml-root-element name="cvlan-tags" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.openecomp.org.v10.CvlanTagEntry" />
- </java-attributes>
- </java-type>
-
- <java-type name="CvlanTagEntry">
- <xml-root-element name="cvlan-tag-entry" />
- <java-attributes>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="dependentOn" value="port-group" />
- <xml-property name="indexedProps" value="cvlan-tag" />
- <xml-property name="container" value="cvlan-tags" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vpes">
- <xml-properties>
- <xml-property name="description" value="Virtual provider edge router. In 1504, A&amp;AI will populate this object through an M&amp;P and tool provided to operations." />
- </xml-properties>
- <xml-root-element name="vpes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpe" name="vpe" type="inventory.aai.openecomp.org.v10.Vpe" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vpe">
- <xml-root-element name="vpe" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service. Does not map strictly to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use. See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Prefix length for oam-address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gateway address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v4Loopback0IpAddress" name="v4-loopback0-ip-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the vpe operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether vpe access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v10.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v10.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Relationship-list must include related to info for complex." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,regional-resource-zone,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vpes" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.openecomp.org.v10.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcFunctionCode" name="vnfc-function-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="function code" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcType" name="vnfc-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation" />
- <xml-property name="searchable" value="vnfc-name" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.openecomp.org.v10.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across A&amp;AI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC. Does not strictly map to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.openecomp.org.v10.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.openecomp.org.v10.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.openecomp.org.v10.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
- <xml-property name="searchable" value="network-id,network-name" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="NetworkPolicies">
- <xml-root-element name="network-policies" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.openecomp.org.v10.NetworkPolicy" />
- </java-attributes>
- </java-type>
- <java-type name="NetworkPolicy">
- <xml-root-element name="network-policy" />
- <java-attributes>
- <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID representing unique key to this instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the policy" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID for the openStack Heat instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="network-policy-fqdn" />
- <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="uniqueProps" value="network-policy-id" />
- <xml-property name="container" value="network-policies" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.openecomp.org.v10.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.openecomp.org.v10.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.openecomp.org.v10.GenericVnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by company or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs, OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the specific entitlement resource. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the license assignment group. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the actual license resource. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfType" name="nf-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Generic description of the type of NF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfFunction" name="nf-function" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English description of Network function that the specific VNF deployment is providing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role in the network that this model will be providing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfNamingCode" name="nf-naming-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="string assigned to this model used for naming purposes" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.openecomp.org.v10.VfModules" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v10.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v10.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,nf-type,nf-function,nf-naming-code,nf-role" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- <xml-property name="containsSuggestibleProps" value="true"/>
- <xml-property name="suggestionAliases" value="VNFs"/>
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.openecomp.org.v10.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="searchable" value="vf-module-id,vf-module-name" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="LagLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregation connections" />
- </xml-properties>
- <xml-root-element name="lag-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.openecomp.org.v10.LagLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagLink">
- <xml-root-element name="lag-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="LAG links can connect lag-interfaces" />
- <xml-property name="indexedProps" value="link-name" />
- <xml-property name="container" value="lag-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Newvces">
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- </xml-properties>
- <xml-root-element name="newvces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.openecomp.org.v10.Newvce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Newvce">
- <xml-root-element name="newvce" />
- <java-attributes>
- <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v10.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
- <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id2" />
- <xml-property name="container" value="newvces" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.openecomp.org.v10.Pnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by company or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number of the device" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v10.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v10.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status,inv-status" />
- <xml-property name="searchable" value="pnf-name" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.openecomp.org.v10.PhysicalLink" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. A&amp;AI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name,circuit-id" />
- </xml-properties>
- </java-type>
-
- <java-type name="VigServers">
- <xml-root-element name="vig-servers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.openecomp.org.v10.VigServer" />
- </java-attributes>
- </java-type>
-
- <java-type name="VigServer">
- <xml-root-element name="vig-server" />
- <java-attributes>
- <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v4 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v6 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
- <xml-property name="indexedProps" value="vig-address-type" />
- <xml-property name="dependentOn" value="ipsec-configuration" />
- <xml-property name="container" value="vig-servers" />
- </xml-properties>
- </java-type>
-
- <java-type name="IpsecConfigurations">
- <xml-root-element name="ipsec-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.openecomp.org.v10.IpsecConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="IpsecConfiguration">
- <xml-root-element name="ipsec-configuration" />
- <java-attributes>
- <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of this configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can offer a shared DMZ or a DMZ specific to a customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network address of shared DMZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can be 1 or 2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="pre-shared key for the above group name " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Lifetime for IKEv1 SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Life time for IPSec SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="enable PFS or not" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="user ID for xAuth, sm-user,nmteHostName" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The time between DPD probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.openecomp.org.v10.VigServers" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
- <xml-property name="indexedProps" value="ipsec-configuration-id" />
- <xml-property name="uniqueProps" value="ipsec-configuration-id" />
- <xml-property name="container" value="ipsec-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.openecomp.org.v10.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.openecomp.org.v10.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.openecomp.org.v10.EdgePropNames" />
- </java-attributes>
- </java-type>
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="isParent" name="isParent" type="java.lang.Boolean" />
- <xml-element java-attribute="usesResource" name="usesResource" type="java.lang.Boolean" />
- <xml-element java-attribute="hasDelTarget" name="hasDelTarget" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA" name="SVC-INFRA" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA-REV" name="SVC-INFRA-REV" type="java.lang.Boolean" />
- </java-attributes>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.openecomp.org.v10.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-root-element name="model" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
- <xml-property name="nameProps" value="model-type" />
- <xml-property name="indexedProps" value="model-invariant-id,model-type" />
- <xml-property name="uniqueProps" value="model-invariant-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.openecomp.org.v10.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="ModelVers">
- <xml-root-element name="model-vers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.openecomp.org.v10.ModelVer" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelVer">
- <xml-root-element name="model-ver" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
- <xml-property name="nameProps" value="model-name" />
- <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
- <xml-property name="uniqueProps" value="model-version-id" />
- <xml-property name="container" value="model-vers" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v10.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v10.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.openecomp.org.v10.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v10.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.openecomp.org.v10.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.openecomp.org.v10.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.openecomp.org.v10.ConstrainedElementSets" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.openecomp.org.v10.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.openecomp.org.v10.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.openecomp.org.v10.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v10.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v10.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v10.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.openecomp.org.v10.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v10.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.openecomp.org.v10.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.openecomp.org.v10.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.openecomp.org.v10.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.openecomp.org.v10.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.openecomp.org.v10.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.openecomp.org.v10.InstanceFilters" />
- <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.openecomp.org.v10.SecondaryFilts" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v10.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.openecomp.org.v10.OverloadedModel" />
- </java-attributes>
- </java-type>
-
- <java-type name="OverloadedModel">
- <xml-root-element name="overloaded-model" />
- <xml-properties>
- <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.openecomp.org.v10.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.openecomp.org.v10.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilts">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filts" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.openecomp.org.v10.SecondaryFilt" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilt">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filt" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v10.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.openecomp.org.v10.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.openecomp.org.v10.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v10.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.openecomp.org.v10.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-any-element java-attribute="propertyValue" lax="true" name="property-value" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReferences">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="route-table-references" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.openecomp.org.v10.RouteTableReference" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReference">
- <xml-root-element name="route-table-reference" />
- <java-attributes>
- <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="FQDN entry in the route table." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Openstack route table reference." />
- <xml-property name="nameProps" value="route-table-reference-fqdn" />
- <xml-property name="uniqueProps" value="route-table-reference-id" />
- <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
- <xml-property name="container" value="route-table-references" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="InstanceGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="instance-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.openecomp.org.v10.InstanceGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceGroup">
- <xml-root-element name="instance-group" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subType" name="sub-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="General mechanism for grouping instances" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,description,type,sub-type" />
- <xml-property name="container" value="instance-groups" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.openecomp.org.v10.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="AllottedResources">
- <xml-properties>
- <xml-property name="description" value="This object is used to store slices of services being offered" />
- </xml-properties>
- <xml-root-element name="allotted-resources" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.openecomp.org.v10.AllottedResource" />
- </java-attributes>
- </java-type>
-
- <java-type name="AllottedResource">
- <xml-root-element name="allotted-resource" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Link back to more information in the controller" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Generic description of the type of allotted resource." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="role" name="role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role in the network that this resource will be providing." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.openecomp.org.v10.TunnelXconnects" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,model-invariant-id,model-version-id,type,role" />
- <xml-property name="dependentOn" value="service-instance" />
- <xml-property name="container" value="allotted-resources" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="TunnelXconnects">
- <xml-properties>
- <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
- </xml-properties>
- <xml-root-element name="tunnel-xconnects" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.openecomp.org.v10.TunnelXconnect" />
- </java-attributes>
- </java-type>
-
- <java-type name="TunnelXconnect">
- <xml-root-element name="tunnel-xconnect" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id" />
- <xml-property name="dependentOn" value="allotted-resource" />
- <xml-property name="container" value="tunnel-xconnects" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="Entitlements">
- <xml-properties>
- <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="entitlements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.openecomp.org.v10.Entitlement" />
- </java-attributes>
- </java-type>
-
- <java-type name="Entitlement">
- <xml-root-element name="entitlement" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of an entitlement resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for entitlement group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce,vpe" />
- <xml-property name="container" value="entitlements" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="Licenses">
- <xml-properties>
- <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="licenses" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.openecomp.org.v10.License" />
- </java-attributes>
- </java-type>
-
- <java-type name="License">
- <xml-root-element name="license" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of a license resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for license group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce,vpe" />
- <xml-property name="container" value="licenses" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnf">
- <xml-root-element name="vnf"/>
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Abstract vnf class" />
- <xml-property name="indexedProps" value="vnf-id" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="inheritors" value="vce,vpe,generic-vnf" />
- <xml-property name="abstract" value="true" />
- </xml-properties>
- </java-type>
-
- <java-type name="Zones">
- <xml-properties>
- <xml-property name="description" value="Collection of zones" />
- </xml-properties>
- <xml-root-element name="zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.openecomp.org.v10.Zone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Zone">
- <xml-root-element name="zone" />
- <java-attributes>
- <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Code assigned by AIC to the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English name associated with the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Design of zone [Medium/Large…]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Context of zone [production/test]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="status" name="status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a zone." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A zone is a grouping of assets in a location homing to the same connections into the CBB" />
- <xml-property name="nameProps" value="zone-name" />
- <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
- <xml-property name="uniqueProps" value="zone-id" />
- <xml-property name="container" value="zones" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="RouteTargets">
- <xml-properties>
- <xml-property name="description" value="Collection of route target information" />
- </xml-properties>
- <xml-root-element name="route-targets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTarget" name="route-target" type="inventory.aai.openecomp.org.v10.RouteTarget" />
- </java-attributes>
- </java-type>
- <java-type name="RouteTarget">
- <xml-root-element name="route-target" />
- <java-attributes>
- <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" xml-key="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Number used to identify an RT, globally unique in the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" xml-key="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this route target" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v10.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Route target information" />
- <xml-property name="container" value="route-targets" />
- <xml-property name="dependentOn" value="vpn-binding" />
- <xml-property name="canBeLinked" value="true" />
- </xml-properties>
- </java-type>
- </java-types>
-</xml-bindings>
diff --git a/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v11.xml b/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v11.xml
deleted file mode 100644
index ecf163e097..0000000000
--- a/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v11.xml
+++ /dev/null
@@ -1,6307 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ============LICENSE_START=======================================================
- org.openecomp.aai
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.onap.org.v11" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v11" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.onap.org.v11.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.onap.org.v11.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.onap.org.v11.CloudInfrastructure" />
- <xml-element java-attribute="externalSystem" name="external-system" type="inventory.aai.onap.org.v11.ExternalSystem" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.onap.org.v11.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.onap.org.v11.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.onap.org.v11.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.onap.org.v11.AaiInternal" />
- <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.onap.org.v11.Nodes"/>
- </java-attributes>
- </java-type>
-
- <java-type name="Nodes">
- <xml-root-element name="nodes" />
- </java-type>
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.onap.org.v11.EdgeTagQueryResult" />
- <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.onap.org.v11.EdgeTagQueryRequest" />
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.onap.org.v11.SearchResults" />
- <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.onap.org.v11.SdnZoneResponse" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryResult">
- <xml-root-element name="edge-tag-query-result" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.onap.org.v11.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.onap.org.v11.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryRequest">
- <xml-root-element name="edge-tag-query-request" />
- <java-attributes>
- <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
- <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
- <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.onap.org.v11.StartNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.onap.org.v11.IncludeNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.onap.org.v11.SecondaryFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.onap.org.v11.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the A&amp;AI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="SdnZoneResponse">
- <xml-root-element name="sdn-zone-response" />
- <java-attributes>
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
- <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.onap.org.v11.AzAndDvsSwitches" />
- </java-attributes>
- </java-type>
-
- <java-type name="AzAndDvsSwitches">
- <xml-root-element name="az-and-dvs-switches" />
- <java-attributes>
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
- <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.onap.org.v11.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.onap.org.v11.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control. Clear each usage with AAI team." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.onap.org.v11.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.onap.org.v11.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.onap.org.v11.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.onap.org.v11.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExternalSystem">
- <xml-properties>
- <xml-property name="description" value="Namespace for external system." />
- </xml-properties>
- <xml-root-element name="external-system" />
- <java-attributes>
- <xml-element java-attribute="esrEmsList" name="esr-ems-list" type="inventory.aai.onap.org.v11.EsrEmsList" />
- <xml-element java-attribute="esrVnfmList" name="esr-vnfm-list" type="inventory.aai.onap.org.v11.EsrVnfmList" />
- <xml-element java-attribute="esrThirdpartySdncList" name="esr-thirdparty-sdnc-list" type="inventory.aai.onap.org.v11.EsrThirdpartySdncList" />
- </java-attributes>
- </java-type>
-
- <java-type name="EsrEmsList">
- <xml-root-element name="esr-ems-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="esrEms" name="esr-ems" type="inventory.aai.onap.org.v11.EsrEms" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrEms">
- <xml-root-element name="esr-ems" />
- <java-attributes>
- <xml-element java-attribute="emsId" name="ems-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of EMS." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persist EMS address information used by EMS driver." />
- <xml-property name="indexedProps" value="ems-id" />
- <xml-property name="searchable" value="ems-id" />
- <xml-property name="container" value="esr-ems-list" />
- <xml-property name="namespace" value="external-system" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrVnfmList">
- <xml-root-element name="esr-vnfm-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="esrVnfm" name="esr-vnfm" type="inventory.aai.onap.org.v11.EsrVnfm" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrVnfm">
- <xml-root-element name="esr-vnfm" />
- <java-attributes>
- <xml-element java-attribute="vnfmId" name="vnfm-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VNFM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vimId" name="vim-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indecate the VIM to deploy VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="certificateUrl" name="certificate-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="certificate url of VNFM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persist VNFM address information used by VF-C." />
- <xml-property name="indexedProps" value="vnfm-id" />
- <xml-property name="searchable" value="vnfm-id" />
- <xml-property name="container" value="esr-vnfm-list" />
- <xml-property name="namespace" value="external-system" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrThirdpartySdncList">
- <xml-root-element name="esr-thirdparty-sdnc-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="esrThirdpartySdnc" name="esr-thirdparty-sdnc" type="inventory.aai.onap.org.v11.EsrThirdpartySdnc" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrThirdpartySdnc">
- <xml-root-element name="esr-thirdparty-sdnc" />
- <java-attributes>
- <xml-element java-attribute="thirdpartySdncId" name="thirdparty-sdnc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of SDNC." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="location" name="location" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="used for DC type to indicate the location of SDNC, such as Core or Edge." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="productName" name="product-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="password used to access SDNC server." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persist SDNC address information used by ONAP SDNC." />
- <xml-property name="indexedProps" value="sdnc-id" />
- <xml-property name="searchable" value="sdnc-id" />
- <xml-property name="container" value="esr-thirdparty-sdnc-list" />
- <xml-property name="namespace" value="external-system" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrSystemInfoList">
- <xml-root-element name="esr-system-info-list" />
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level external system auth info." />
- </xml-properties>
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="esrSystemInfo" name="esr-system-info" type="inventory.aai.onap.org.v11.EsrSystemInfo" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="EsrSystemInfo">
- <xml-root-element name="esr-system-info" />
- <java-attributes>
- <xml-element java-attribute="esrSystemInfoId" name="esr-system-info-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of esr system info." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="systemName" name="system-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of external system." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vendor" name="vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="vendor of external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="version" name="version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="version of external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceUrl" name="service-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="url used to access external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="userName" name="user-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="username used to access external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="password" name="password" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="password used to access external systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="systemType" name="system-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="protocol" name="protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of third party SDNC, for example netconf/snmp." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sslCacert" name="ssl-cacert" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ca file content if enabled ssl on auth-url." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="sslInsecure" name="ssl-insecure" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Whether to verify VIM's certificate." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipAddress" name="ip-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service IP of ftp server." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="port" name="port" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service port of ftp server." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudDomain" name="cloud-domain" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="domain info for authentication." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="defaultTenant" name="default-tenant" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="default tenant of VIM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="passive" name="passive" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="ftp passive mode or not." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="remotepath" name="remote-path" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="resource or performance data file path." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="systemStatus" name="system-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the status of external system." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persist common address information of external systems." />
- <xml-property name="indexedProps" value="esr-system-info-id,system-name,system-type" />
- <xml-property name="searchable" value="esr-system-info-id,system-name,system-type" />
- <xml-property name="container" value="esr-system-info-list" />
- <xml-property name="dependentOn" value="cloud-region,esr-ems,esr-vnfm,esr-thirdparty-sdnc" />
- </xml-properties>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.onap.org.v11.Complexes" />
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.onap.org.v11.CloudRegions" />
- <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.onap.org.v11.NetworkProfiles" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.onap.org.v11.Pservers" />
- <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.onap.org.v11.VirtualDataCenters" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.onap.org.v11.CloudRegion" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site. NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="sriovAutomation" name="sriov-automation" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Whether the cloud region supports (true) or does not support (false) SR-IOV automation." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudExtraInfo" name="cloud-extra-info" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ESR inputs extra information about the VIM or Cloud which will be decoded by MultiVIM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudEpaCaps" name="cloud-epa-caps" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MultiVIM will discover and expose EPA capabilities." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.onap.org.v11.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.onap.org.v11.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.onap.org.v11.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.onap.org.v11.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.onap.org.v11.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.onap.org.v11.Images" />
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.onap.org.v11.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v11.VipIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v11.VipIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.onap.org.v11.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleModelCustomizationId" name="vf-module-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="searchable" value="volume-group-id,volume-group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.onap.org.v11.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&amp;AI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in A&amp;AI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.onap.org.v11.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.onap.org.v11.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&amp;AI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Complexes">
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- </xml-properties>
- <xml-root-element name="complexes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.onap.org.v11.Complex" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Complex">
- <xml-root-element name="complex" />
- <java-attributes>
- <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gamma complex name for LCP instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type, e.g., central office, data center." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
- <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
- <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
- <xml-element java-attribute="state" name="state" type="java.lang.String" />
- <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
- <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
- <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
- <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
- <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
- <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
- <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
- <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.onap.org.v11.CtagPools" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
- <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
- <xml-property name="uniqueProps" value="physical-location-id" />
- <xml-property name="container" value="complexes" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagPools">
- <xml-root-element name="ctag-pools" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.onap.org.v11.CtagPool" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagPool">
- <xml-root-element name="ctag-pool" />
- <java-attributes>
- <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="The Target provider edge router" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Describes what the intended purpose of this pool is." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Comma separated list of ctags" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="complex" />
- <xml-property name="container" value="ctag-pools" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.onap.org.v11.Tenant" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantContext" name="tenant-context" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store the tenant context." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.onap.org.v11.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id,tenant-context" />
- <xml-property name="searchable" value="tenant-id,tenant-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.onap.org.v11.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.onap.org.v11.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.onap.org.v11.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether A&amp;AI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isPortMirrored" name="is-port-mirrored" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not port is a mirrored." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of the logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="allowedAddressPairs" name="allowed-address-pairs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Freeform field for storing an ip address, list of ip addresses or a subnet block." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.onap.org.v11.Vlans" />
- <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.onap.org.v11.SriovVfs" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,newvce,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovVfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
- </xml-properties>
- <xml-root-element name="sriov-vfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.onap.org.v11.SriovVf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovVf">
- <xml-root-element name="sriov-vf" />
- <java-attributes>
- <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option is used to set the link status. Valid values as of 1607 are on, off, and auto." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
- <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="sriov-vfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface,vnfc" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.onap.org.v11.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnKey" name="vpn-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of the VLAN configuration related to a logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-key" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface,vnfc" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.onap.org.v11.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.onap.org.v11.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.onap.org.v11.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.onap.org.v11.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="searchable" value="group-id,group-name"/>
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.onap.org.v11.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.onap.org.v11.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="DvsSwitches">
- <xml-properties>
- <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and GenericVnfs." />
- </xml-properties>
- <xml-root-element name="dvs-switches" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.onap.org.v11.DvsSwitch" />
- </java-attributes>
- </java-type>
-
- <java-type name="DvsSwitch">
- <xml-root-element name="dvs-switch" />
- <java-attributes>
- <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="DVS switch name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL used to reach the vcenter" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs. A&amp;AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&amp;AI. " />
- <xml-property name="indexedProps" value="vcenter-url,switch-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="dvs-switches" />
- </xml-properties>
- </java-type>
-
- <java-type name="NetworkProfiles">
- <xml-properties>
- <xml-property name="description" value="Collection of network profiles" />
- </xml-properties>
- <xml-root-element name="network-profiles" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.onap.org.v11.NetworkProfile" />
- </java-attributes>
- </java-type>
-
- <java-type name="NetworkProfile">
- <xml-root-element name="network-profile" />
- <java-attributes>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique name of network profile." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted SNMP community string" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
- <xml-property name="indexedProps" value="nm-profile-name" />
- <xml-property name="container" value="network-profiles" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.onap.org.v11.Pserver" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates who owns and or manages the device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hostProfile" name="host-profile" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The host profile that defines the configuration of the pserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.onap.org.v11.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macAddress" name="mac-addresss" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC Address of the p-interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="inventory status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="sriovPfs" name="sriov-pfs" type="inventory.aai.onap.org.v11.SriovPfs" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name,prov-status" />
- <xml-property name="nameProps" value="prov-status" />
- <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.onap.org.v11.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,vpls-pe,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="OamNetworks">
- <xml-properties>
- <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. " />
- </xml-properties>
- <xml-root-element name="oam-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.onap.org.v11.OamNetwork" />
- </java-attributes>
- </java-type>
-
- <java-type name="OamNetwork">
- <xml-root-element name="oam-network" />
- <java-attributes>
- <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="cvlan-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="OAM network, to be deprecated shortly. Do not use for new purposes. " />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="oam-networks" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="VirtualDataCenters">
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- </xml-properties>
- <xml-root-element name="virtual-data-centers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.onap.org.v11.VirtualDataCenter" />
- </java-attributes>
- </java-type>
-
- <java-type name="VirtualDataCenter">
- <xml-root-element name="virtual-data-center" />
- <java-attributes>
- <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the vdc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the virtual data center" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- <xml-property name="nameProps" value="vdc-name" />
- <xml-property name="indexedProps" value="vdc-name,vdc-id" />
- <xml-property name="container" value="virtual-data-centers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.onap.org.v11.Connectors" />
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.onap.org.v11.Customers" />
- <xml-element java-attribute="linesOfBusiness" name="lines-of-business" type="inventory.aai.onap.org.v11.LinesOfBusiness" />
- <xml-element java-attribute="owningEntities" name="owning-entities" type="inventory.aai.onap.org.v11.OwningEntities" />
- <xml-element java-attribute="platforms" name="platforms" type="inventory.aai.onap.org.v11.Platforms" />
- <xml-element java-attribute="projects" name="projects" type="inventory.aai.onap.org.v11.Projects" />
- </java-attributes>
- </java-type>
-
- <java-type name="Projects">
- <xml-properties>
- <xml-property name="description" value="Collection of projects" />
- </xml-properties>
- <xml-root-element name="projects" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="project" name="project" type="inventory.aai.onap.org.v11.Project" />
- </java-attributes>
- </java-type>
-
- <java-type name="Project">
- <xml-root-element name="project" />
- <java-attributes>
- <xml-element java-attribute="projectName" name="project-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the project deploying a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="describes the project" />
- <xml-property name="indexedProps" value="project-name" />
- <xml-property name="uniqueProps" value="project-name" />
- <xml-property name="container" value="projects" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Connectors">
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- </xml-properties>
- <xml-root-element name="connectors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.onap.org.v11.Connector" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connector">
- <xml-root-element name="connector" />
- <java-attributes>
- <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of resource instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- <xml-property name="indexedProps" value="resource-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version" />
- <xml-property name="container" value="connectors" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.onap.org.v11.Customer" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.onap.org.v11.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="global-customer-id,subscriber-name" />
- <xml-property name="uniqueProps" value="global-customer-id" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="LinesOfBusiness">
- <xml-properties>
- <xml-property name="description" value="Collection of lines-of-business" />
- </xml-properties>
- <xml-root-element name="lines-of-business" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lineOfBusiness" name="line-of-business" type="inventory.aai.onap.org.v11.LineOfBusiness" />
- </java-attributes>
- </java-type>
-
- <java-type name="LineOfBusiness">
- <xml-root-element name="line-of-business" />
- <java-attributes>
- <xml-element java-attribute="lineOfBusinessName" name="line-of-business-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the line-of-business (product)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="describes a line-of-business" />
- <xml-property name="indexedProps" value="line-of-business-name" />
- <xml-property name="uniqueProps" value="line-of-business-name" />
- <xml-property name="container" value="lines-of-business" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="OwningEntities">
- <xml-properties>
- <xml-property name="description" value="Collection of owning-entities" />
- </xml-properties>
- <xml-root-element name="owning-entities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="owningEntity" name="owning-entity" type="inventory.aai.onap.org.v11.OwningEntity" />
- </java-attributes>
- </java-type>
-
- <java-type name="OwningEntity">
- <xml-root-element name="owning-entity" />
- <java-attributes>
- <xml-element java-attribute="owningEntityId" name="owning-entity-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of an owning entity" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="owningEntityName" name="owning-entity-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Owning entity name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="describes an owning-entity" />
- <xml-property name="indexedProps" value="owning-entity-id, owning-entity-name" />
- <xml-property name="searchable" value="owning-entity-id" />
- <xml-property name="uniqueProps" value="owning-entity-id, owning-entity-name" />
- <xml-property name="container" value="owning-entities" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Platforms">
- <xml-properties>
- <xml-property name="description" value="Collection of platforms" />
- </xml-properties>
- <xml-root-element name="platforms" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="platform" name="platform" type="inventory.aai.onap.org.v11.Platform" />
- </java-attributes>
- </java-type>
-
- <java-type name="Platform">
- <xml-root-element name="platform" />
- <java-attributes>
- <xml-element java-attribute="platformName" name="platform-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the platform" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="describes a platform" />
- <xml-property name="indexedProps" value="platform-name" />
- <xml-property name="uniqueProps" value="platform-name" />
- <xml-property name="container" value="platforms" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.onap.org.v11.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from A&amp;AI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.onap.org.v11.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- <xml-property name="crossEntityReference" value="service-instance,service-type" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.onap.org.v11.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceType" name="service-type" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceRole" name="service-role" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing the service role." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="environmentContext" name="environment-context" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store the environment context assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="workloadContext" name="workload-context" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store the workload context assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.onap.org.v11.AllottedResources" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status,environment-context,workload-context" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id,service-instance-name" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by ASDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.onap.org.v11.VnfImages" />
- <xml-element java-attribute="services" name="services" type="inventory.aai.onap.org.v11.Services" />
- <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.onap.org.v11.ServiceCapabilities" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.onap.org.v11.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.onap.org.v11.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImages">
- <xml-properties>
- <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- </xml-properties>
- <xml-root-element name="vnf-images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.onap.org.v11.VnfImage" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImage">
- <xml-root-element name="vnf-image" />
- <java-attributes>
- <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of this asset" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
- <xml-property name="uniqueProps" value="vnf-image-uuid" />
- <xml-property name="container" value="vnf-images" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from ASDC." />
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.onap.org.v11.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from ASDC. Does not strictly map to ASDC services." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceCapabilities">
- <xml-properties>
- <xml-property name="description" value="Collection of service capabilities." />
- </xml-properties>
- <xml-root-element name="service-capabilities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.onap.org.v11.ServiceCapability" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceCapability">
- <xml-root-element name="service-capability" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models. No new use should be made of this." />
- <xml-property name="indexedProps" value="service-type,vnf-type" />
- <xml-property name="container" value="service-capabilities" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.onap.org.v11.LogicalLinks" />
- <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.onap.org.v11.SitePairSets" />
- <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.onap.org.v11.VpnBindings" />
- <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.onap.org.v11.VplsPes" />
- <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.onap.org.v11.MulticastConfigurations" />
- <xml-element java-attribute="vces" name="vces" type="inventory.aai.onap.org.v11.Vces" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.onap.org.v11.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.onap.org.v11.L3Networks" />
- <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.onap.org.v11.NetworkPolicies" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.onap.org.v11.GenericVnfs" />
- <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.onap.org.v11.LagLinks" />
- <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.onap.org.v11.Newvces" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.onap.org.v11.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.onap.org.v11.PhysicalLinks" />
- <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.onap.org.v11.IpsecConfigurations" />
- <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.onap.org.v11.RouteTableReferences" />
- <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.onap.org.v11.InstanceGroups" />
- <xml-element java-attribute="zones" name="zones" type="inventory.aai.onap.org.v11.Zones" />
- </java-attributes>
- </java-type>
- <java-type name="Configurations">
- <xml-properties>
- <xml-property name="description" value="Collection of configurations" />
- </xml-properties>
- <xml-root-element name="configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="configuration" name="configurations" type="inventory.aai.onap.org.v11.Configuration" />
- </java-attributes>
- </java-type>
-
- <java-type name="Configuration">
- <xml-root-element name="configuration" />
- <java-attributes>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the entity that will manage this feature. Could be an organization or the name of the application as well." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationId" name="configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID assigned to configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationName" name="configuration-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationType" name="configuration-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="port-mirroring-configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationSubType" name="configuration-sub-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="vprobe, pprobe." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of the configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="configurationSelflink" name="configuration-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details from SDN-GC." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of the configuration used to customize the resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Port Mirror Configuration." />
- <xml-property name="indexedProps" value="configuration-id,model-invariant-id,model-version-id" />
- <xml-property name="uniqueProps" value="configuration-id" />
- <xml-property name="container" value="configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.onap.org.v11.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Reason for this entity, role it is playing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairSets">
- <xml-properties>
- <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
- </xml-properties>
- <xml-root-element name="site-pair-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.onap.org.v11.SitePairSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePairSet">
- <xml-root-element name="site-pair-set" />
- <java-attributes>
- <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of site pair set." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingInstances" name="routing-instances" type="inventory.aai.onap.org.v11.RoutingInstances" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
- <xml-property name="indexedProps" value="site-pair-set-id" />
- <xml-property name="uniqueProps" value="site-pair-set-id" />
- <xml-property name="container" value="site-pair-sets" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="RoutingInstances">
- <xml-properties>
- <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
- </xml-properties>
- <xml-root-element name="routing-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.onap.org.v11.RoutingInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="RoutingInstance">
- <xml-root-element name="routing-instance" />
- <java-attributes>
- <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of routing instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rpm owner" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sitePairs" name="site-pairs" type="inventory.aai.onap.org.v11.SitePairs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="routing-instance-id" />
- <xml-property name="dependentOn" value="site-pair-set" />
- <xml-property name="container" value="routing-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairs">
- <xml-properties>
- <xml-property name="description" value="probe within a set" />
- </xml-properties>
- <xml-root-element name="site-pairs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.onap.org.v11.SitePair" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePair">
- <xml-root-element name="site-pair" />
- <java-attributes>
- <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version, v4, v6" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The type of destinatination equipment. Could be Router, UCPE, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="classesOfService" name="classes-of-service" type="inventory.aai.onap.org.v11.ClassesOfService" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="site-pair-id" />
- <xml-property name="uniqueProps" value="site-pair-id" />
- <xml-property name="dependentOn" value="routing-instance" />
- <xml-property name="container" value="site-pairs" />
- </xml-properties>
- </java-type>
-
- <java-type name="ClassesOfService">
- <xml-properties>
- <xml-property name="description" value="class-of-service of probe" />
- </xml-properties>
- <xml-root-element name="classes-of-service" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.onap.org.v11.ClassOfService" />
- </java-attributes>
- </java-type>
-
- <java-type name="ClassOfService">
- <xml-root-element name="class-of-service" />
- <java-attributes>
- <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="cos" />
- <xml-property name="dependentOn" value="site-pair" />
- <xml-property name="container" value="classes-of-service" />
- </xml-properties>
- </java-type>
-
- <java-type name="VpnBindings">
- <xml-root-element name="vpn-bindings" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.onap.org.v11.VpnBinding" />
- </java-attributes>
- </java-type>
-
- <java-type name="VpnBinding">
- <xml-root-element name="vpn-binding" />
- <java-attributes>
- <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="VPN ID, globally unique within A&amp;AI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="VPN Name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnRegion" name="vpn-region" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="region of customer vpn" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="customerVpnId" name="customer-vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id for this customer vpn" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargets" name="route-targets" type="inventory.aai.onap.org.v11.RouteTargets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList">
- <xml-properties>
- <xml-property name="description" value="l3-networks relate to vpn-bindings" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPN binding" />
- <xml-property name="nameProps" value="vpn-name,vpn-type" />
- <xml-property name="indexedProps" value="vpn-name,vpn-id,vpn-type" />
- <xml-property name="searchable" value="vpn-id,vpn-name" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="container" value="vpn-bindings" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="VplsPes">
- <xml-properties>
- <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
- </xml-properties>
- <xml-root-element name="vpls-pes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.onap.org.v11.VplsPe" />
- </java-attributes>
- </java-type>
-
- <java-type name="VplsPe">
- <xml-root-element name="vpls-pe" />
- <java-attributes>
- <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPLS Provider Edge routers." />
- <xml-property name="indexedProps" value="prov-status,equipment-name" />
- <xml-property name="container" value="vpls-pes" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="MulticastConfigurations">
- <xml-properties>
- <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
- </xml-properties>
- <xml-root-element name="multicast-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.onap.org.v11.MulticastConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="MulticastConfiguration">
- <xml-root-element name="multicast-configuration" />
- <java-attributes>
- <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of multicast configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rp type of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="multicast-configuration-id" />
- <xml-property name="uniqueProps" value="multicast-configuration-id" />
- <xml-property name="container" value="multicast-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vces">
- <xml-properties>
- <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma. This object is deprecated." />
- </xml-properties>
- <xml-root-element name="vces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.onap.org.v11.Vce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vce">
- <xml-root-element name="vce" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network role being played by this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router. Implied length of /64." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - see child relationships" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.onap.org.v11.PortGroups" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma. This object is deprecated." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vces" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="PortGroups">
- <xml-root-element name="port-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.onap.org.v11.PortGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="PortGroup">
- <xml-root-element name="port-group" />
- <java-attributes>
- <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network name of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupId" name="port-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID for port group in vmware" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Likely to duplicate value of neutron network name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.onap.org.v11.CvlanTags" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
- <xml-property name="nameProps" value="port-group-name" />
- <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
- <xml-property name="dependentOn" value="vce" />
- <xml-property name="container" value="port-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="CvlanTags">
- <xml-root-element name="cvlan-tags" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.onap.org.v11.CvlanTagEntry" />
- </java-attributes>
- </java-type>
-
- <java-type name="CvlanTagEntry">
- <xml-root-element name="cvlan-tag-entry" />
- <java-attributes>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="dependentOn" value="port-group" />
- <xml-property name="indexedProps" value="cvlan-tag" />
- <xml-property name="container" value="cvlan-tags" />
- </xml-properties>
- </java-type>
-
-
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.onap.org.v11.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfcNamingCode" name="nfc-naming-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Short code that is used in naming instances of the item being modeled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfcFunction" name="nfc-function" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,nfc-function,nfc-naming-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation,model-invariant-id,model-version-id" />
- <xml-property name="searchable" value="vnfc-name" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.onap.org.v11.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across A&amp;AI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC. Does not strictly map to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.onap.org.v11.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.onap.org.v11.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.onap.org.v11.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
- <xml-property name="searchable" value="network-id,network-name" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="NetworkPolicies">
- <xml-root-element name="network-policies" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.onap.org.v11.NetworkPolicy" />
- </java-attributes>
- </java-type>
- <java-type name="NetworkPolicy">
- <xml-root-element name="network-policy" />
- <java-attributes>
- <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID representing unique key to this instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the policy" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID for the openStack Heat instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="network-policy-fqdn" />
- <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="uniqueProps" value="network-policy-id" />
- <xml-property name="container" value="network-policies" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.onap.org.v11.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.onap.org.v11.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetRole" name="subnet-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role of the subnet, referenced when assigning IPs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipAssignmentDirection" name="ip-assignment-direction" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip address assignment direction of the subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetSequence" name="subnet-sequence" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="sequence of the subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hostRoutes" name="host-routes" type="inventory.aai.onap.org.v11.HostRoutes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.onap.org.v11.GenericVnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by ATT or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs, OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the specific entitlement resource. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the license assignment group. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the actual license resource. OBSOLETE - See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfType" name="nf-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Generic description of the type of NF" />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfFunction" name="nf-function" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English description of Network function that the specific VNF deployment is providing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role in the network that this model will be providing" />
- <xml-property name="suggestibleOnSearch" value="true"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfNamingCode" name="nf-naming-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="string assigned to this model used for naming purposes" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gateway address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Prefix length for oam-address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for S-TAG to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network Management profile of this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.onap.org.v11.VfModules" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,nf-type,nf-function,nf-naming-code,nf-role" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- <xml-property name="containsSuggestibleProps" value="true"/>
- <xml-property name="suggestionAliases" value="VNFs"/>
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.onap.org.v11.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="searchable" value="vf-module-id,vf-module-name" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="LagLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregation connections" />
- </xml-properties>
- <xml-root-element name="lag-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.onap.org.v11.LagLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagLink">
- <xml-root-element name="lag-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="LAG links can connect lag-interfaces" />
- <xml-property name="indexedProps" value="link-name" />
- <xml-property name="container" value="lag-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Newvces">
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- </xml-properties>
- <xml-root-element name="newvces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.onap.org.v11.Newvce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Newvce">
- <xml-root-element name="newvce" />
- <java-attributes>
- <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
- <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id2" />
- <xml-property name="container" value="newvces" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.onap.org.v11.Pnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by ATT or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number of the device" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status,inv-status" />
- <xml-property name="searchable" value="pnf-name" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.onap.org.v11.PhysicalLink" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. A&amp;AI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderBandwidthUpValue" name="service-provider-bandwidth-up-value" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Upstream Bandwidth value agreed with the service provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderBandwidthUpUnits" name="service-provider-bandwidth-up-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Units for the upstream BW value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderBandwidthDownValue" name="service-provider-bandwidth-down-value" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Downstream Bandwidth value agreed with the service provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderBandwidthDownUnits" name="service-provider-bandwidth-down-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Units for downstream BW value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name,circuit-id" />
- </xml-properties>
- </java-type>
-
- <java-type name="VigServers">
- <xml-root-element name="vig-servers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.onap.org.v11.VigServer" />
- </java-attributes>
- </java-type>
-
- <java-type name="VigServer">
- <xml-root-element name="vig-server" />
- <java-attributes>
- <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v4 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v6 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
- <xml-property name="indexedProps" value="vig-address-type" />
- <xml-property name="dependentOn" value="ipsec-configuration" />
- <xml-property name="container" value="vig-servers" />
- </xml-properties>
- </java-type>
-
- <java-type name="IpsecConfigurations">
- <xml-root-element name="ipsec-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.onap.org.v11.IpsecConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="IpsecConfiguration">
- <xml-root-element name="ipsec-configuration" />
- <java-attributes>
- <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of this configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ATT can offer a shared DMZ or a DMZ specific to a customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network address of shared DMZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can be 1 or 2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="pre-shared key for the above group name " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Lifetime for IKEv1 SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Life time for IPSec SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="enable PFS or not" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="user ID for xAuth, sm-user,ucpeHostName,nmteHostName" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The time between DPD probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.onap.org.v11.VigServers" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
- <xml-property name="indexedProps" value="ipsec-configuration-id" />
- <xml-property name="uniqueProps" value="ipsec-configuration-id" />
- <xml-property name="container" value="ipsec-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.onap.org.v11.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.onap.org.v11.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.onap.org.v11.EdgePropNames" />
- </java-attributes>
- </java-type>
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="containsOtherV" name="contains-other-v" type="java.lang.String" />
- <xml-element java-attribute="deleteOtherV" name="delete-other-v" type="java.lang.String" />
- <xml-element java-attribute="svcinfra" name="SVC-INFRA" type="java.lang.String" />
- <xml-element java-attribute="preventDelete" name="prevent-delete" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.onap.org.v11.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-root-element name="model" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
- <xml-property name="nameProps" value="model-type" />
- <xml-property name="indexedProps" value="model-invariant-id,model-type" />
- <xml-property name="uniqueProps" value="model-invariant-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="ModelVers">
- <xml-root-element name="model-vers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.onap.org.v11.ModelVer" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelVer">
- <xml-root-element name="model-ver" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
- <xml-property name="nameProps" value="model-name" />
- <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
- <xml-property name="uniqueProps" value="model-version-id" />
- <xml-property name="container" value="model-vers" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.onap.org.v11.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.onap.org.v11.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.onap.org.v11.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.onap.org.v11.ConstrainedElementSets" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.onap.org.v11.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.onap.org.v11.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.onap.org.v11.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.onap.org.v11.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.onap.org.v11.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.onap.org.v11.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.onap.org.v11.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.onap.org.v11.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.onap.org.v11.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.onap.org.v11.InstanceFilters" />
- <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.onap.org.v11.SecondaryFilts" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.onap.org.v11.OverloadedModel" />
- </java-attributes>
- </java-type>
-
- <java-type name="OverloadedModel">
- <xml-root-element name="overloaded-model" />
- <xml-properties>
- <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.onap.org.v11.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilts">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filts" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.onap.org.v11.SecondaryFilt" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilt">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filt" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.onap.org.v11.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.onap.org.v11.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.onap.org.v11.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReferences">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="route-table-references" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.onap.org.v11.RouteTableReference" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReference">
- <xml-root-element name="route-table-reference" />
- <java-attributes>
- <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="FQDN entry in the route table." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Openstack route table reference." />
- <xml-property name="nameProps" value="route-table-reference-fqdn" />
- <xml-property name="uniqueProps" value="route-table-reference-id" />
- <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
- <xml-property name="container" value="route-table-references" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="InstanceGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="instance-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.onap.org.v11.InstanceGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceGroup">
- <xml-root-element name="instance-group" />
- <java-attributes>
- <xml-element java-attribute="instanceGroupRole" name="instance-group-role" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role of the instance group." />
- </xml-properties>
- </xml-element>
-
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
-
- <xml-element java-attribute="modelVersionId" name="model-version-id" required="false" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ASDC model version uid for this resource model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subType" name="sub-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="General mechanism for grouping instances" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="searchable" value="id,description"/>
- <xml-property name="indexedProps" value="id,description,type,sub-type" />
- <xml-property name="container" value="instance-groups" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.onap.org.v11.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="AllottedResources">
- <xml-properties>
- <xml-property name="description" value="This object is used to store slices of services being offered" />
- </xml-properties>
- <xml-root-element name="allotted-resources" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.onap.org.v11.AllottedResource" />
- </java-attributes>
- </java-type>
-
- <java-type name="AllottedResource">
- <xml-root-element name="allotted-resource" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Link back to more information in the controller" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-version-id" />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- <xml-property name="requires" value="model-invariant-id" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Generic description of the type of allotted resource." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="role" name="role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="role in the network that this resource will be providing." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.onap.org.v11.TunnelXconnects" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,model-invariant-id,model-version-id,type,role" />
- <xml-property name="dependentOn" value="service-instance" />
- <xml-property name="container" value="allotted-resources" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="TunnelXconnects">
- <xml-properties>
- <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
- </xml-properties>
- <xml-root-element name="tunnel-xconnects" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.onap.org.v11.TunnelXconnect" />
- </java-attributes>
- </java-type>
-
- <java-type name="TunnelXconnect">
- <xml-root-element name="tunnel-xconnect" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id" />
- <xml-property name="dependentOn" value="allotted-resource" />
- <xml-property name="container" value="tunnel-xconnects" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="Entitlements">
- <xml-properties>
- <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="entitlements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.onap.org.v11.Entitlement" />
- </java-attributes>
- </java-type>
-
- <java-type name="Entitlement">
- <xml-root-element name="entitlement" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of an entitlement resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for entitlement group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce" />
- <xml-property name="container" value="entitlements" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="Licenses">
- <xml-properties>
- <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="licenses" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.onap.org.v11.License" />
- </java-attributes>
- </java-type>
-
- <java-type name="License">
- <xml-root-element name="license" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of a license resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for license group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce" />
- <xml-property name="container" value="licenses" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnf">
- <xml-root-element name="vnf"/>
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Abstract vnf class" />
- <xml-property name="indexedProps" value="vnf-id" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="inheritors" value="vce,generic-vnf" />
- <xml-property name="abstract" value="true" />
- </xml-properties>
- </java-type>
-
- <java-type name="Zones">
- <xml-properties>
- <xml-property name="description" value="Collection of zones" />
- </xml-properties>
- <xml-root-element name="zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.onap.org.v11.Zone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Zone">
- <xml-root-element name="zone" />
- <java-attributes>
- <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Code assigned by AIC to the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English name associated with the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Design of zone [Medium/Large?]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Context of zone [production/test]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="status" name="status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a zone." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A zone is a grouping of assets in a location homing to the same connections into the CBB" />
- <xml-property name="nameProps" value="zone-name" />
- <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
- <xml-property name="uniqueProps" value="zone-id" />
- <xml-property name="container" value="zones" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="RouteTargets">
- <xml-properties>
- <xml-property name="description" value="Collection of route target information" />
- </xml-properties>
- <xml-root-element name="route-targets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTarget" name="route-target" type="inventory.aai.onap.org.v11.RouteTarget" />
- </java-attributes>
- </java-type>
- <java-type name="RouteTarget">
- <xml-root-element name="route-target" />
- <java-attributes>
- <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" xml-key="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Number used to identify an RT, globally unique in the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" xml-key="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this route target" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Route target information" />
- <xml-property name="container" value="route-targets" />
- <xml-property name="dependentOn" value="vpn-binding" />
- <xml-property name="canBeLinked" value="true" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovPfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Physical Functions." />
- </xml-properties>
- <xml-root-element name="sriov-pfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovPf" name="sriov-pf" type="inventory.aai.onap.org.v11.SriovPf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovPf">
- <xml-root-element name="sriov-pf" />
- <java-attributes>
- <xml-element java-attribute="pfPciId" name="pf-pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier for the sriov-pf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Physical Function" />
- <xml-property name="indexedProps" value="pf-pci-id" />
- <xml-property name="dependentOn" value="p-interface" />
- <xml-property name="container" value="sriov-pfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="HostRoutes">
- <xml-root-element name="host-routes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="hostRoute" name="host-route" type="inventory.aai.onap.org.v11.HostRoute" />
- </java-attributes>
- </java-type>
- <java-type name="HostRoute">
- <xml-root-element name="host-route" />
- <java-attributes>
- <xml-element java-attribute="hostRouteId" name="host-route-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="host-route id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routePrefix" name="route-prefix" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="subnet prefix" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nextHop" name="next-hop" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Could be ip-address, hostname, or service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nextHopType" name="next-hop-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Should be ip-address, hostname, or service-instance to match next-hop" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="host-route-id" />
- <xml-property name="dependentOn" value="subnet" />
- <xml-property name="container" value="host-routes" />
- </xml-properties>
- </java-type>
- <java-type name="VipIpv4AddressList">
- <xml-root-element name="vip-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="vipIpv4Address" name="vip-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vipIpv4PrefixLength" name="vip-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="vip-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- </xml-properties>
- </java-type>
-
- <java-type name="VipIpv6AddressList">
- <xml-root-element name="vip-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="vipIpv6Address" name="vip-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vipIpv6PrefixLength" name="vip-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="vip-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- </xml-properties>
- </java-type>
- </java-types>
-</xml-bindings>
diff --git a/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v8.xml b/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v8.xml
deleted file mode 100644
index 3ed2ea531f..0000000000
--- a/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v8.xml
+++ /dev/null
@@ -1,3076 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ============LICENSE_START=======================================================
- org.openecomp.aai
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.openecomp.org.v8" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v8" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.openecomp.org.v8.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.openecomp.org.v8.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.openecomp.org.v8.CloudInfrastructure" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.openecomp.org.v8.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.openecomp.org.v8.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.openecomp.org.v8.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.openecomp.org.v8.AaiInternal" />
- </java-attributes>
- </java-type>
-
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.openecomp.org.v8.SearchResults" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.openecomp.org.v8.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.openecomp.org.v8.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v8.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.openecomp.org.v8.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the AAI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.openecomp.org.v8.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.openecomp.org.v8.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.openecomp.org.v8.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.openecomp.org.v8.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.openecomp.org.v8.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.openecomp.org.v8.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.openecomp.org.v8.CloudRegions" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.openecomp.org.v8.Pservers" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.openecomp.org.v8.CloudRegion" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.openecomp.org.v8.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.openecomp.org.v8.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.openecomp.org.v8.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.openecomp.org.v8.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.openecomp.org.v8.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.openecomp.org.v8.Images" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.openecomp.org.v8.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.openecomp.org.v8.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the SDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as SDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.openecomp.org.v8.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by AAI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in AAI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.openecomp.org.v8.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.openecomp.org.v8.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by AAI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.openecomp.org.v8.Tenant" />
- </java-attributes>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.openecomp.org.v8.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.openecomp.org.v8.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.openecomp.org.v8.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v8.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-name,vserver-id,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.openecomp.org.v8.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether AAI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.openecomp.org.v8.Vlans" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v8.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v8.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.openecomp.org.v8.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnId" name="vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v8.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v8.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-id" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.openecomp.org.v8.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.openecomp.org.v8.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.openecomp.org.v8.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.openecomp.org.v8.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.openecomp.org.v8.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v8.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.openecomp.org.v8.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.openecomp.org.v8.Pserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v8.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v8.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.openecomp.org.v8.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v8.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name" />
- <xml-property name="dependentOn" value="pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.openecomp.org.v8.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v8.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v8.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.openecomp.org.v8.Customers" />
- </java-attributes>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.openecomp.org.v8.Customer" />
- </java-attributes>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across OpenECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.openecomp.org.v8.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="subscriber-name,global-customer-id" />
- <xml-property name="uniqueProps" value="global-customer-id,subscriber-name" />
- <xml-property name="alternateKeys1" value="subscriber-name" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.openecomp.org.v8.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across OpenECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from AAI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.openecomp.org.v8.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.openecomp.org.v8.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operational status of the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v8.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by SDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="services" name="services" type="inventory.aai.openecomp.org.v8.Services" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.openecomp.org.v8.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.openecomp.org.v8.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.openecomp.org.v8.LogicalLinks" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.openecomp.org.v8.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.openecomp.org.v8.L3Networks" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.openecomp.org.v8.GenericVnfs" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.openecomp.org.v8.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.openecomp.org.v8.PhysicalLinks" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.openecomp.org.v8.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack (should be ip-version)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,link-id" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.openecomp.org.v8.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcFunctionCode" name="vnfc-function-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="function code" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcType" name="vnfc-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.openecomp.org.v8.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across AAI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from SDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.openecomp.org.v8.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.openecomp.org.v8.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.openecomp.org.v8.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant)" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-network-fqdn" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.openecomp.org.v8.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.openecomp.org.v8.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.openecomp.org.v8.GenericVnf" />
- </java-attributes>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the SDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as SDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from SDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the specific entitlement resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the license assignment group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the actual license resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v8.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v8.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.openecomp.org.v8.VfModules" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.openecomp.org.v8.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary widget model. This maps directly to the AAI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the SDC data dictionary version of the widget model.This maps directly to the AAI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.openecomp.org.v8.Pnf" />
- </java-attributes>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration-status is the status of orchestration on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v8.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v8.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.openecomp.org.v8.PhysicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. AAI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.openecomp.org.v8.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.openecomp.org.v8.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.openecomp.org.v8.EdgePropNames" />
- </java-attributes>
- </java-type>
-
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="isParent" name="isParent" type="java.lang.Boolean" />
- <xml-element java-attribute="usesResource" name="usesResource" type="java.lang.Boolean" />
- <xml-element java-attribute="hasDelTarget" name="hasDelTarget" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA" name="SVC-INFRA" type="java.lang.String" />
- <xml-element java-attribute="SVC-INFRA-REV" name="SVC-INFRA-REV" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from SDC."/>
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.openecomp.org.v8.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from SDC." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by SDC to describe the inventory assets and their connections related to SDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.openecomp.org.v8.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by SDC to describe an inventory asset and its connections related to SDC models" />
- <xml-property name="nameProps" value="model-name,model-type" />
- <xml-property name="indexedProps" value="model-name-version-id,model-type,model-name,model-id,model-version" />
- <xml-property name="alternateKeys1" value="model-id,model-version" />
- <xml-property name="uniqueProps" value="model-name-version-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="model" />
- <java-attributes>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in SDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v8.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v8.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.openecomp.org.v8.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-point" type="java.lang.String">
- <xml-element-wrapper name="linkage-points" />
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v8.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.openecomp.org.v8.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.openecomp.org.v8.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.openecomp.org.v8.ConstrainedElementSets" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.openecomp.org.v8.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.openecomp.org.v8.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.openecomp.org.v8.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v8.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v8.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String">
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v8.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.openecomp.org.v8.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v8.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.openecomp.org.v8.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.openecomp.org.v8.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.openecomp.org.v8.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.openecomp.org.v8.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="property-name" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="property-value" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.openecomp.org.v8.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.openecomp.org.v8.InstanceFilters" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v8.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.openecomp.org.v8.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.openecomp.org.v8.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v8.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.openecomp.org.v8.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.openecomp.org.v8.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v8.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.openecomp.org.v8.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-any-element java-attribute="propertyValue" lax="true" name="property-value" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.openecomp.org.v8.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v8.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
-
- </java-types>
-</xml-bindings>
diff --git a/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v9.xml b/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v9.xml
deleted file mode 100644
index 87a3d656e5..0000000000
--- a/kubernetes/aai/charts/aai-data-router/resources/config/model/aai_oxm_v9.xml
+++ /dev/null
@@ -1,5451 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- ============LICENSE_START=======================================================
- org.openecomp.aai
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.openecomp.org.v9" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v9" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.openecomp.org.v9.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.openecomp.org.v9.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.openecomp.org.v9.CloudInfrastructure" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.openecomp.org.v9.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.openecomp.org.v9.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.openecomp.org.v9.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.openecomp.org.v9.AaiInternal" />
- <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.openecomp.org.v9.Nodes"/>
- </java-attributes>
- </java-type>
-
- <java-type name="Nodes">
- <xml-root-element name="nodes" />
- </java-type>
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.openecomp.org.v9.EdgeTagQueryResult" />
- <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.openecomp.org.v9.EdgeTagQueryRequest" />
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.openecomp.org.v9.SearchResults" />
- <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.openecomp.org.v9.SdnZoneResponse" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryResult">
- <xml-root-element name="edge-tag-query-result" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v9.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.openecomp.org.v9.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.openecomp.org.v9.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.openecomp.org.v9.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryRequest">
- <xml-root-element name="edge-tag-query-request" />
- <java-attributes>
- <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
- <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
- <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.openecomp.org.v9.StartNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.openecomp.org.v9.IncludeNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.openecomp.org.v9.SecondaryFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.openecomp.org.v9.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the A&amp;AI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="SdnZoneResponse">
- <xml-root-element name="sdn-zone-response" />
- <java-attributes>
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.openecomp.org.v9.OamNetworks" />
- <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.openecomp.org.v9.AzAndDvsSwitches" />
- </java-attributes>
- </java-type>
-
- <java-type name="AzAndDvsSwitches">
- <xml-root-element name="az-and-dvs-switches" />
- <java-attributes>
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.openecomp.org.v9.DvsSwitches" />
- <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v9.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.openecomp.org.v9.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.openecomp.org.v9.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control. Clear each usage with AAI team." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.openecomp.org.v9.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.openecomp.org.v9.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.openecomp.org.v9.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.openecomp.org.v9.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.openecomp.org.v9.Complexes" />
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.openecomp.org.v9.CloudRegions" />
- <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.openecomp.org.v9.NetworkProfiles" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.openecomp.org.v9.Pservers" />
- <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.openecomp.org.v9.VirtualDataCenters" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.openecomp.org.v9.CloudRegion" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site. NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance. NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.openecomp.org.v9.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.openecomp.org.v9.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.openecomp.org.v9.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.openecomp.org.v9.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.openecomp.org.v9.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.openecomp.org.v9.Images" />
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.openecomp.org.v9.DvsSwitches" />
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.openecomp.org.v9.OamNetworks" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.openecomp.org.v9.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&amp;Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&amp;T's AIC." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.openecomp.org.v9.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModulePersonaModelCustomizationId" name="vf-module-persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
- <xml-property name="dbAlias" value="vf-module-model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="searchable" value="volume-group-id,volume-group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.openecomp.org.v9.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&amp;AI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in A&amp;AI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.openecomp.org.v9.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.openecomp.org.v9.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&amp;AI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Complexes">
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- </xml-properties>
- <xml-root-element name="complexes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.openecomp.org.v9.Complex" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Complex">
- <xml-root-element name="complex" />
- <java-attributes>
- <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gamma complex name for LCP instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type, e.g., central office, data center." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
- <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
- <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
- <xml-element java-attribute="state" name="state" type="java.lang.String" />
- <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
- <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
- <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
- <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
- <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
- <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
- <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
- <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.openecomp.org.v9.CtagPools" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
- <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
- <xml-property name="uniqueProps" value="physical-location-id" />
- <xml-property name="container" value="complexes" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagPools">
- <xml-root-element name="ctag-pools" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.openecomp.org.v9.CtagPool" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagPool">
- <xml-root-element name="ctag-pool" />
- <java-attributes>
- <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="The Target provider edge router" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Describes what the intended purpose of this pool is." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Comma separated list of ctags" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="complex" />
- <xml-property name="container" value="ctag-pools" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.openecomp.org.v9.Tenant" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.openecomp.org.v9.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id" />
- <xml-property name="searchable" value="tenant-id,tenant-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.openecomp.org.v9.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.openecomp.org.v9.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.openecomp.org.v9.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether A&amp;AI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.openecomp.org.v9.Vlans" />
- <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.openecomp.org.v9.SriovVfs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v9.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v9.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,newvce,vpe,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovVfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
- </xml-properties>
- <xml-root-element name="sriov-vfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.openecomp.org.v9.SriovVf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovVf">
- <xml-root-element name="sriov-vf" />
- <java-attributes>
- <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option is used to set the link status. Valid values as of 1607 are on, off, and auto." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
- <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="sriov-vfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.openecomp.org.v9.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnId" name="vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- <xml-property name="dbAlias" value="vpn-id-local" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.openecomp.org.v9.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.openecomp.org.v9.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-id" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.openecomp.org.v9.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.openecomp.org.v9.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.openecomp.org.v9.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.openecomp.org.v9.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.openecomp.org.v9.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.openecomp.org.v9.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="DvsSwitches">
- <xml-properties>
- <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and VPEs." />
- </xml-properties>
- <xml-root-element name="dvs-switches" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.openecomp.org.v9.DvsSwitch" />
- </java-attributes>
- </java-type>
-
- <java-type name="DvsSwitch">
- <xml-root-element name="dvs-switch" />
- <java-attributes>
- <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="DVS switch name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL used to reach the vcenter" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs. A&amp;AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&amp;AI. " />
- <xml-property name="indexedProps" value="vcenter-url,switch-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="dvs-switches" />
- </xml-properties>
- </java-type>
-
- <java-type name="NetworkProfiles">
- <xml-properties>
- <xml-property name="description" value="Collection of network profiles" />
- </xml-properties>
- <xml-root-element name="network-profiles" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.openecomp.org.v9.NetworkProfile" />
- </java-attributes>
- </java-type>
-
- <java-type name="NetworkProfile">
- <xml-root-element name="network-profile" />
- <java-attributes>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique name of network profile." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted SNMP community string" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
- <xml-property name="indexedProps" value="nm-profile-name" />
- <xml-property name="container" value="network-profiles" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.openecomp.org.v9.Pserver" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.openecomp.org.v9.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name,prov-status" />
- <xml-property name="nameProps" value="prov-status" />
- <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.openecomp.org.v9.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Human friendly text regarding this interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,vpe,vpls-pe,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="OamNetworks">
- <xml-properties>
- <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. " />
- </xml-properties>
- <xml-root-element name="oam-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.openecomp.org.v9.OamNetwork" />
- </java-attributes>
- </java-type>
-
- <java-type name="OamNetwork">
- <xml-root-element name="oam-network" />
- <java-attributes>
- <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="cvlan-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="OAM network, to be deprecated shortly. Do not use for new purposes. " />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="oam-networks" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.openecomp.org.v9.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="VirtualDataCenters">
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- </xml-properties>
- <xml-root-element name="virtual-data-centers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.openecomp.org.v9.VirtualDataCenter" />
- </java-attributes>
- </java-type>
-
- <java-type name="VirtualDataCenter">
- <xml-root-element name="virtual-data-center" />
- <java-attributes>
- <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the vdc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the virtual data center" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- <xml-property name="nameProps" value="vdc-name" />
- <xml-property name="indexedProps" value="vdc-name,vdc-id" />
- <xml-property name="container" value="virtual-data-centers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
-
-
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.openecomp.org.v9.Connectors" />
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.openecomp.org.v9.Customers" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connectors">
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- </xml-properties>
- <xml-root-element name="connectors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.openecomp.org.v9.Connector" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connector">
- <xml-root-element name="connector" />
- <java-attributes>
- <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of resource instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- <xml-property name="indexedProps" value="resource-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="container" value="connectors" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.openecomp.org.v9.Customer" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.openecomp.org.v9.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="global-customer-id,subscriber-name" />
- <xml-property name="uniqueProps" value="global-customer-id" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.openecomp.org.v9.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from A&amp;AI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.openecomp.org.v9.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- <xml-property name="crossEntityReference" value="service-instance,service-type" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.openecomp.org.v9.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v9.Metadata" />
- <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.openecomp.org.v9.AllottedResources" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id,service-instance-name" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by ASDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.openecomp.org.v9.VnfImages" />
- <xml-element java-attribute="services" name="services" type="inventory.aai.openecomp.org.v9.Services" />
- <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.openecomp.org.v9.ServiceCapabilities" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.openecomp.org.v9.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.openecomp.org.v9.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImages">
- <xml-properties>
- <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- </xml-properties>
- <xml-root-element name="vnf-images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.openecomp.org.v9.VnfImage" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImage">
- <xml-root-element name="vnf-image" />
- <java-attributes>
- <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of this asset" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
- <xml-property name="uniqueProps" value="vnf-image-uuid" />
- <xml-property name="container" value="vnf-images" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from ASDC." />
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.openecomp.org.v9.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from ASDC. Does not strictly map to ASDC services." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceCapabilities">
- <xml-properties>
- <xml-property name="description" value="Collection of service capabilities." />
- </xml-properties>
- <xml-root-element name="service-capabilities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.openecomp.org.v9.ServiceCapability" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceCapability">
- <xml-root-element name="service-capability" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models. No new use should be made of this." />
- <xml-property name="indexedProps" value="service-type,vnf-type" />
- <xml-property name="container" value="service-capabilities" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.openecomp.org.v9.LogicalLinks" />
- <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.openecomp.org.v9.SitePairSets" />
- <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.openecomp.org.v9.VpnBindings" />
- <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.openecomp.org.v9.VplsPes" />
- <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.openecomp.org.v9.MulticastConfigurations" />
- <xml-element java-attribute="vces" name="vces" type="inventory.aai.openecomp.org.v9.Vces" />
- <xml-element java-attribute="vpes" name="vpes" type="inventory.aai.openecomp.org.v9.Vpes" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.openecomp.org.v9.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.openecomp.org.v9.L3Networks" />
- <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.openecomp.org.v9.NetworkPolicies" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.openecomp.org.v9.GenericVnfs" />
- <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.openecomp.org.v9.LagLinks" />
- <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.openecomp.org.v9.Newvces" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.openecomp.org.v9.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.openecomp.org.v9.PhysicalLinks" />
- <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.openecomp.org.v9.IpsecConfigurations" />
- <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.openecomp.org.v9.RouteTableReferences" />
- <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.openecomp.org.v9.InstanceGroups" />
- <xml-element java-attribute="zones" name="zones" type="inventory.aai.openecomp.org.v9.Zones" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.openecomp.org.v9.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Reason for this entity, role it is playing" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairSets">
- <xml-properties>
- <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
- </xml-properties>
- <xml-root-element name="site-pair-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.openecomp.org.v9.SitePairSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePairSet">
- <xml-root-element name="site-pair-set" />
- <java-attributes>
- <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of site pair set." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingInstances" name="routing-instances" type="inventory.aai.openecomp.org.v9.RoutingInstances" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
- <xml-property name="indexedProps" value="site-pair-set-id" />
- <xml-property name="uniqueProps" value="site-pair-set-id" />
- <xml-property name="container" value="site-pair-sets" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="RoutingInstances">
- <xml-properties>
- <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
- </xml-properties>
- <xml-root-element name="routing-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.openecomp.org.v9.RoutingInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="RoutingInstance">
- <xml-root-element name="routing-instance" />
- <java-attributes>
- <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of routing instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rpm owner" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sitePairs" name="site-pairs" type="inventory.aai.openecomp.org.v9.SitePairs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="routing-instance-id" />
- <xml-property name="uniqueProps" value="routing-instance-id" />
- <xml-property name="dependentOn" value="site-pair-set" />
- <xml-property name="container" value="routing-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairs">
- <xml-properties>
- <xml-property name="description" value="probe within a set" />
- </xml-properties>
- <xml-root-element name="site-pairs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.openecomp.org.v9.SitePair" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePair">
- <xml-root-element name="site-pair" />
- <java-attributes>
- <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version, v4, v6" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The type of destinatination equipment. Could be Router, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="classesOfService" name="classes-of-service" type="inventory.aai.openecomp.org.v9.ClassesOfService" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="site-pair-id" />
- <xml-property name="uniqueProps" value="site-pair-id" />
- <xml-property name="dependentOn" value="routing-instance" />
- <xml-property name="container" value="site-pairs" />
- </xml-properties>
- </java-type>
-
- <java-type name="ClassesOfService">
- <xml-properties>
- <xml-property name="description" value="class-of-service of probe" />
- </xml-properties>
- <xml-root-element name="classes-of-service" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.openecomp.org.v9.ClassOfService" />
- </java-attributes>
- </java-type>
-
- <java-type name="ClassOfService">
- <xml-root-element name="class-of-service" />
- <java-attributes>
- <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="cos" />
- <xml-property name="dependentOn" value="site-pair" />
- <xml-property name="container" value="classes-of-service" />
- </xml-properties>
- </java-type>
-
- <java-type name="VpnBindings">
- <xml-root-element name="vpn-bindings" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.openecomp.org.v9.VpnBinding" />
- </java-attributes>
- </java-type>
-
- <java-type name="VpnBinding">
- <xml-root-element name="vpn-binding" />
- <java-attributes>
- <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="VPN ID, globally unique within A&amp;AI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="VPN Name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Number used to identify a VPN, globally unique in the network" />
- <xml-property name="dataLink" value="./route-targets/route-target/{global-route-target}/{route-target-role}" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this route target" />
- <xml-property name="dataLink" value="./route-targets/route-target/{global-route-target}/{route-target-role}" />
- <xml-property name="defaultValue" value="BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList">
- <xml-properties>
- <xml-property name="description" value="l3-networks relate to vpn-bindings" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPN binding" />
- <xml-property name="nameProps" value="vpn-name,vpn-type" />
- <xml-property name="indexedProps" value="vpn-name,vpn-id,global-route-target,vpn-type" />
- <xml-property name="searchable" value="vpn-id,vpn-name" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="container" value="vpn-bindings" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="VplsPes">
- <xml-properties>
- <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
- </xml-properties>
- <xml-root-element name="vpls-pes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.openecomp.org.v9.VplsPe" />
- </java-attributes>
- </java-type>
-
- <java-type name="VplsPe">
- <xml-root-element name="vpls-pe" />
- <java-attributes>
- <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPLS Provider Edge routers." />
- <xml-property name="indexedProps" value="prov-status,equipment-name" />
- <xml-property name="container" value="vpls-pes" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="MulticastConfigurations">
- <xml-properties>
- <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
- </xml-properties>
- <xml-root-element name="multicast-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.openecomp.org.v9.MulticastConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="MulticastConfiguration">
- <xml-root-element name="multicast-configuration" />
- <java-attributes>
- <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of multicast configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rp type of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="multicast-configuration-id" />
- <xml-property name="uniqueProps" value="multicast-configuration-id" />
- <xml-property name="container" value="multicast-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vces">
- <xml-properties>
- <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma. This object is deprecated." />
- </xml-properties>
- <xml-root-element name="vces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.openecomp.org.v9.Vce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vce">
- <xml-root-element name="vce" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network role being played by this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router. Implied length of /64." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - see child relationships" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.openecomp.org.v9.PortGroups" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v9.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v9.Entitlements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma. This object is deprecated." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vces" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="PortGroups">
- <xml-root-element name="port-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.openecomp.org.v9.PortGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="PortGroup">
- <xml-root-element name="port-group" />
- <java-attributes>
- <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network name of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupId" name="port-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID for port group in vmware" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Likely to duplicate value of neutron network name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.openecomp.org.v9.CvlanTags" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
- <xml-property name="nameProps" value="port-group-name" />
- <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
- <xml-property name="dependentOn" value="vce" />
- <xml-property name="container" value="port-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="CvlanTags">
- <xml-root-element name="cvlan-tags" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.openecomp.org.v9.CvlanTagEntry" />
- </java-attributes>
- </java-type>
-
- <java-type name="CvlanTagEntry">
- <xml-root-element name="cvlan-tag-entry" />
- <java-attributes>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="dependentOn" value="port-group" />
- <xml-property name="indexedProps" value="cvlan-tag" />
- <xml-property name="container" value="cvlan-tags" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vpes">
- <xml-properties>
- <xml-property name="description" value="Virtual provider edge router. In 1504, A&amp;AI will populate this object through an M&amp;P and tool provided to operations." />
- </xml-properties>
- <xml-root-element name="vpes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpe" name="vpe" type="inventory.aai.openecomp.org.v9.Vpe" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vpe">
- <xml-root-element name="vpe" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service. Does not map strictly to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use. See child relationships." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Prefix length for oam-address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gateway address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v4Loopback0IpAddress" name="v4-loopback0-ip-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the vpe operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether vpe access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v9.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v9.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Relationship-list must include related to info for complex." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,regional-resource-zone,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vpes" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.openecomp.org.v9.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcFunctionCode" name="vnfc-function-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="function code" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcType" name="vnfc-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation" />
- <xml-property name="searchable" value="vnfc-name" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.openecomp.org.v9.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across A&amp;AI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC. Does not strictly map to ASDC services. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.openecomp.org.v9.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.openecomp.org.v9.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.openecomp.org.v9.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
- <xml-property name="searchable" value="network-id,network-name" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="NetworkPolicies">
- <xml-root-element name="network-policies" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.openecomp.org.v9.NetworkPolicy" />
- </java-attributes>
- </java-type>
- <java-type name="NetworkPolicy">
- <xml-root-element name="network-policy" />
- <java-attributes>
- <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID representing unique key to this instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the policy" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID for the openStack Heat instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="network-policy-fqdn" />
- <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="uniqueProps" value="network-policy-id" />
- <xml-property name="container" value="network-policies" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.openecomp.org.v9.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.openecomp.org.v9.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.openecomp.org.v9.GenericVnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models. SOON TO BE DEPRECATED" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path." />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by company or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only in some usecases" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.openecomp.org.v9.VfModules" />
- <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.openecomp.org.v9.Licenses" />
- <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.openecomp.org.v9.Entitlements" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.openecomp.org.v9.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Path to the controller object." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="searchable" value="vf-module-id,vf-module-name" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="LagLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregation connections" />
- </xml-properties>
- <xml-root-element name="lag-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.openecomp.org.v9.LagLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagLink">
- <xml-root-element name="lag-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="LAG links can connect lag-interfaces" />
- <xml-property name="indexedProps" value="link-name" />
- <xml-property name="container" value="lag-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Newvces">
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- </xml-properties>
- <xml-root-element name="newvces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.openecomp.org.v9.Newvce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Newvce">
- <xml-root-element name="newvce" />
- <java-attributes>
- <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- <xml-property name="dbAlias" value="operational-status" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="OBSOLETE - do not use" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.openecomp.org.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
- <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id2" />
- <xml-property name="container" value="newvces" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.openecomp.org.v9.Pnf" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by company or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number of the device" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 Loopback 0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV4 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 AIM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="IPV6 OAM address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CANOPI's inventory status. Only set with values exactly as defined by CANOPI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.openecomp.org.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.openecomp.org.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status,inv-status" />
- <xml-property name="searchable" value="pnf-name" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.openecomp.org.v9.PhysicalLink" />
- </java-attributes>
- <xml-properties>
- <xml-property name="maximumDepth" value="0" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. A&amp;AI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name,circuit-id" />
- </xml-properties>
- </java-type>
-
- <java-type name="VigServers">
- <xml-root-element name="vig-servers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.openecomp.org.v9.VigServer" />
- </java-attributes>
- </java-type>
-
- <java-type name="VigServer">
- <xml-root-element name="vig-server" />
- <java-attributes>
- <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v4 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
- <xml-properties>
- <xml-property name="description" value="v6 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
- <xml-property name="indexedProps" value="vig-address-type" />
- <xml-property name="dependentOn" value="ipsec-configuration" />
- <xml-property name="container" value="vig-servers" />
- </xml-properties>
- </java-type>
-
- <java-type name="IpsecConfigurations">
- <xml-root-element name="ipsec-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.openecomp.org.v9.IpsecConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="IpsecConfiguration">
- <xml-root-element name="ipsec-configuration" />
- <java-attributes>
- <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of this configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can offer a shared DMZ or a DMZ specific to a customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network address of shared DMZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can be 1 or 2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="pre-shared key for the above group name " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Lifetime for IKEv1 SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Life time for IPSec SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="enable PFS or not" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="user ID for xAuth, sm-user, nmteHostName" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The time between DPD probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.openecomp.org.v9.VigServers" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
- <xml-property name="indexedProps" value="ipsec-configuration-id" />
- <xml-property name="uniqueProps" value="ipsec-configuration-id" />
- <xml-property name="container" value="ipsec-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.openecomp.org.v9.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.openecomp.org.v9.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.openecomp.org.v9.EdgePropNames" />
- </java-attributes>
- </java-type>
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="isParent" name="isParent" type="java.lang.Boolean" />
- <xml-element java-attribute="usesResource" name="usesResource" type="java.lang.Boolean" />
- <xml-element java-attribute="hasDelTarget" name="hasDelTarget" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA" name="SVC-INFRA" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA-REV" name="SVC-INFRA-REV" type="java.lang.Boolean" />
- </java-attributes>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.openecomp.org.v9.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-root-element name="model" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
- <xml-property name="nameProps" value="model-type" />
- <xml-property name="indexedProps" value="model-invariant-id,model-type" />
- <xml-property name="uniqueProps" value="model-invariant-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.openecomp.org.v9.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
-
- <java-type name="ModelVers">
- <xml-root-element name="model-vers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.openecomp.org.v9.ModelVer" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelVer">
- <xml-root-element name="model-ver" />
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
- <xml-property name="nameProps" value="model-name" />
- <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
- <xml-property name="uniqueProps" value="model-version-id" />
- <xml-property name="container" value="model-vers" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v9.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.openecomp.org.v9.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.openecomp.org.v9.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v9.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.openecomp.org.v9.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.openecomp.org.v9.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.openecomp.org.v9.ConstrainedElementSets" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.openecomp.org.v9.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.openecomp.org.v9.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.openecomp.org.v9.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.openecomp.org.v9.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v9.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v9.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.openecomp.org.v9.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.openecomp.org.v9.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.openecomp.org.v9.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.openecomp.org.v9.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.openecomp.org.v9.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.openecomp.org.v9.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.openecomp.org.v9.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.openecomp.org.v9.InstanceFilters" />
- <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.openecomp.org.v9.SecondaryFilts" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.openecomp.org.v9.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.openecomp.org.v9.OverloadedModel" />
- </java-attributes>
- </java-type>
-
- <java-type name="OverloadedModel">
- <xml-root-element name="overloaded-model" />
- <xml-properties>
- <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
- </xml-properties>
- <java-attributes>
- <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVers" name="model-vers" type="inventory.aai.openecomp.org.v9.ModelVers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.openecomp.org.v9.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilts">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filts" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.openecomp.org.v9.SecondaryFilt" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilt">
- <xml-properties>
- <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="secondary-filt" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v9.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.openecomp.org.v9.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.openecomp.org.v9.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.openecomp.org.v9.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.openecomp.org.v9.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-any-element java-attribute="propertyValue" lax="true" name="property-value" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReferences">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="route-table-references" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.openecomp.org.v9.RouteTableReference" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReference">
- <xml-root-element name="route-table-reference" />
- <java-attributes>
- <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="FQDN entry in the route table." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Openstack route table reference." />
- <xml-property name="nameProps" value="route-table-reference-fqdn" />
- <xml-property name="uniqueProps" value="route-table-reference-id" />
- <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
- <xml-property name="container" value="route-table-references" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="InstanceGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="instance-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.openecomp.org.v9.InstanceGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceGroup">
- <xml-root-element name="instance-group" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subType" name="sub-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="General mechanism for grouping instances" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,description,type,sub-type" />
- <xml-property name="container" value="instance-groups" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.openecomp.org.v9.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="AllottedResources">
- <xml-properties>
- <xml-property name="description" value="This object is used to store slices of services being offered" />
- </xml-properties>
- <xml-root-element name="allotted-resources" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.openecomp.org.v9.AllottedResource" />
- </java-attributes>
- </java-type>
-
- <java-type name="AllottedResource">
- <xml-root-element name="allotted-resource" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Link back to more information in the controller" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- <xml-property name="dbAlias" value="model-invariant-id-local" />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="deployment" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- <xml-property name="visibility" value="internal" />
- <xml-property name="dbAlias" value="model-version-id-local" />
- <xml-property name="dataCopy" value="service-design-and-creation/models/model/{persona-model-id}/model-vers?model-version={persona-model-version}#model-version-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelCustomizationId" name="persona-model-customization-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
- <xml-property name="dbAlias" value="model-customization-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.openecomp.org.v9.TunnelXconnects" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
- <xml-property name="nameProps" value="description" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id,persona-model-id,persona-model-version" />
- <xml-property name="dependentOn" value="service-instance" />
- <xml-property name="container" value="allotted-resources" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="TunnelXconnects">
- <xml-properties>
- <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
- </xml-properties>
- <xml-root-element name="tunnel-xconnects" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.openecomp.org.v9.TunnelXconnect" />
- </java-attributes>
- </java-type>
-
- <java-type name="TunnelXconnect">
- <xml-root-element name="tunnel-xconnect" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
- <xml-property name="uniqueProps" value="id" />
- <xml-property name="indexedProps" value="id" />
- <xml-property name="dependentOn" value="allotted-resource" />
- <xml-property name="container" value="tunnel-xconnects" />
- <!-- <xml-property name="namespace" value="network" /> -->
- </xml-properties>
- </java-type>
-
- <java-type name="Entitlements">
- <xml-properties>
- <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="entitlements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.openecomp.org.v9.Entitlement" />
- </java-attributes>
- </java-type>
-
- <java-type name="Entitlement">
- <xml-root-element name="entitlement" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of an entitlement resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for entitlement group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce,vpe" />
- <xml-property name="container" value="entitlements" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="Licenses">
- <xml-properties>
- <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
- </xml-properties>
- <xml-root-element name="licenses" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.openecomp.org.v9.License" />
- </java-attributes>
- </java-type>
-
- <java-type name="License">
- <xml-root-element name="license" />
- <java-attributes>
- <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of a license resource. " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Metadata for license group." />
- <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
- <xml-property name="dependentOn" value="generic-vnf,vce,vpe" />
- <xml-property name="container" value="licenses" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnf">
- <xml-root-element name="vnf"/>
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Abstract vnf class" />
- <xml-property name="indexedProps" value="vnf-id" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="inheritors" value="vce,vpe,generic-vnf" />
- <xml-property name="abstract" value="true" />
- </xml-properties>
- </java-type>
-
- <java-type name="Zones">
- <xml-properties>
- <xml-property name="description" value="Collection of zones" />
- </xml-properties>
- <xml-root-element name="zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.openecomp.org.v9.Zone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Zone">
- <xml-root-element name="zone" />
- <java-attributes>
- <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Code assigned by AIC to the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="English name associated with the zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Design of zone [Medium/Large…]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Context of zone [production/test]" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="status" name="status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Status of a zone." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.openecomp.org.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A zone is a grouping of assets in a location homing to the same connections into the CBB" />
- <xml-property name="nameProps" value="zone-name" />
- <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
- <xml-property name="uniqueProps" value="zone-id" />
- <xml-property name="container" value="zones" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- </java-types>
-</xml-bindings>
diff --git a/kubernetes/aai/charts/aai-data-router/resources/dynamic/routes/entity-event.route b/kubernetes/aai/charts/aai-data-router/resources/dynamic/routes/entity-event.route
index 7b4e902313..eb93b266c2 100644
--- a/kubernetes/aai/charts/aai-data-router/resources/dynamic/routes/entity-event.route
+++ b/kubernetes/aai/charts/aai-data-router/resources/dynamic/routes/entity-event.route
@@ -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://dmaap.{{.Release.Namespace}}:3904"/>
+ <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>
diff --git a/kubernetes/aai/charts/aai-data-router/templates/configmap.yaml b/kubernetes/aai/charts/aai-data-router/templates/configmap.yaml
index a8793acd9f..9652712aa6 100644
--- a/kubernetes/aai/charts/aai-data-router/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-data-router/templates/configmap.yaml
@@ -9,38 +9,6 @@ data:
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-model-v8
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/model/aai_oxm_v8.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-model-v9
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/model/aai_oxm_v9.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-model-v10
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/model/aai_oxm_v10.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-model-v11
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/model/aai_oxm_v11.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
name: {{ include "common.fullname" . }}-dynamic
namespace: {{ include "common.namespace" . }}
data:
diff --git a/kubernetes/aai/charts/aai-data-router/templates/deployment.yaml b/kubernetes/aai/charts/aai-data-router/templates/deployment.yaml
index 79bcff33eb..2d45a0b097 100644
--- a/kubernetes/aai/charts/aai-data-router/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-data-router/templates/deployment.yaml
@@ -58,7 +58,7 @@ spec:
mountPath: /logroot/
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: SERVICE_BEANS
@@ -79,18 +79,6 @@ spec:
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /opt/app/data-router/config/model/aai_oxm_v8.xml
- subPath: aai_oxm_v8.xml
- name: {{ include "common.fullname" . }}-model-v8
- - mountPath: /opt/app/data-router/config/model/aai_oxm_v9.xml
- subPath: aai_oxm_v9.xml
- name: {{ include "common.fullname" . }}-model-v9
- - mountPath: /opt/app/data-router/config/model/aai_oxm_v10.xml
- subPath: aai_oxm_v10.xml
- name: {{ include "common.fullname" . }}-model-v10
- - mountPath: /opt/app/data-router/config/model/aai_oxm_v11.xml
- subPath: aai_oxm_v11.xml
- name: {{ include "common.fullname" . }}-model-v11
- mountPath: /opt/app/data-router/config/auth
name: {{ include "common.fullname" . }}-auth
- mountPath: /opt/app/data-router/config/data-router.properties
@@ -122,18 +110,6 @@ spec:
- name: localtime
hostPath:
path: /etc/localtime
- - name: {{ include "common.fullname" . }}-model-v8
- configMap:
- name: {{ include "common.fullname" . }}-model-v8
- - name: {{ include "common.fullname" . }}-model-v9
- configMap:
- name: {{ include "common.fullname" . }}-model-v9
- - name: {{ include "common.fullname" . }}-model-v10
- configMap:
- name: {{ include "common.fullname" . }}-model-v10
- - name: {{ include "common.fullname" . }}-model-v11
- configMap:
- name: {{ include "common.fullname" . }}-model-v11
- name: {{ include "common.fullname" . }}-auth
secret:
secretName: {{ include "common.fullname" . }}
@@ -148,7 +124,7 @@ spec:
name: {{ include "common.fullname" . }}-dynamic
- name: {{ include "common.fullname" . }}-logs
hostPath:
- path: {{ .Values.persistence.mountPath }}/{{ include "common.namespace" . }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-data-router/values.yaml b/kubernetes/aai/charts/aai-data-router/values.yaml
index 3957df156d..5ce7689822 100644
--- a/kubernetes/aai/charts/aai-data-router/values.yaml
+++ b/kubernetes/aai/charts/aai-data-router/values.yaml
@@ -3,15 +3,17 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# application image
repository: nexus3.onap.org:10001
-image: onap/data-router:v1.1.0
+image: onap/data-router:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
+dockerhubRepository: registry.hub.docker.com
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
# application configuration
config:
keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
diff --git a/kubernetes/aai/charts/aai-elasticsearch/templates/deployment.yaml b/kubernetes/aai/charts/aai-elasticsearch/templates/deployment.yaml
index 6792d4cd54..0417536625 100644
--- a/kubernetes/aai/charts/aai-elasticsearch/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-elasticsearch/templates/deployment.yaml
@@ -91,6 +91,6 @@ spec:
name: {{ include "common.fullname" . }}
- name: elasticsearch-data
hostPath:
- path: {{ .Values.persistence.mountPath }}/{{ include "common.namespace" . }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-elasticsearch/templates/service.yaml b/kubernetes/aai/charts/aai-elasticsearch/templates/service.yaml
index 84548eda86..54ee8b670d 100644
--- a/kubernetes/aai/charts/aai-elasticsearch/templates/service.yaml
+++ b/kubernetes/aai/charts/aai-elasticsearch/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.name" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -14,10 +14,10 @@ spec:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- else -}}
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- end}}
selector:
app: {{ include "common.fullname" . }}
diff --git a/kubernetes/aai/charts/aai-elasticsearch/values.yaml b/kubernetes/aai/charts/aai-elasticsearch/values.yaml
index af7fd3d3ed..94357c0435 100644
--- a/kubernetes/aai/charts/aai-elasticsearch/values.yaml
+++ b/kubernetes/aai/charts/aai-elasticsearch/values.yaml
@@ -3,7 +3,6 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# application image
dockerhubRepository: docker.io
@@ -37,6 +36,7 @@ readiness:
service:
type: ClusterIP
name: aai-elasticsearch
+ portName: aai-elasticsearch
internalPort: 9200
ingress:
diff --git a/kubernetes/aai/charts/aai-gizmo/.helmignore b/kubernetes/aai/charts/aai-gizmo/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/aai/charts/aai-gizmo/Chart.yaml b/kubernetes/aai/charts/aai-gizmo/Chart.yaml
new file mode 100644
index 0000000000..86f364331e
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/Chart.yaml
@@ -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: Gizmo service
+name: aai-gizmo
+version: 2.0.0
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/README.txt b/kubernetes/aai/charts/aai-gizmo/resources/config/README.txt
new file mode 100644
index 0000000000..5cc01497f5
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/README.txt
@@ -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/aai/charts/aai-gizmo/resources/config/auth/champ-cert.p12 b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/champ-cert.p12
new file mode 100644
index 0000000000..dbf4fcacec
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/champ-cert.p12
Binary files differ
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/auth/crud_policy.json b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/crud_policy.json
new file mode 100644
index 0000000000..d8b065e7f6
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/crud_policy.json
@@ -0,0 +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"
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/auth/datarouter-cert.p12 b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/datarouter-cert.p12
new file mode 100644
index 0000000000..dbf4fcacec
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/datarouter-cert.p12
Binary files differ
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/auth/tomcat_keystore b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/tomcat_keystore
new file mode 100644
index 0000000000..9eec841aa2
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/tomcat_keystore
Binary files differ
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/crud-api.properties b/kubernetes/aai/charts/aai-gizmo/resources/config/crud-api.properties
new file mode 100644
index 0000000000..a86d47203a
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/crud-api.properties
@@ -0,0 +1,5 @@
+# CRUD-API configuration
+
+crud.async.request.timeout=60000
+crud.async.response.process.poll.interval=1000
+crud.collection.properties.key=properties
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/crud-beans.xml b/kubernetes/aai/charts/aai-gizmo/resources/config/crud-beans.xml
new file mode 100644
index 0000000000..7adc447b20
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/crud-beans.xml
@@ -0,0 +1,35 @@
+<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="champDao" class="org.onap.crud.dao.champ.ChampDao">
+ <constructor-arg name="champUrl" value="https://aai-champ.{{.Release.Namespace}}:9522/services/champ-service/v1/"/>
+ <constructor-arg name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10"/>
+ </bean>
+
+ <bean id="dataRouterDAO" class="org.onap.crud.dao.DataRouterDAO">
+ <constructor-arg name="url" value="https://data-router.{{.Release.Namespace}}:9502/services/champ-service/v1/"/>
+ <constructor-arg name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10"/>
+ </bean>
+
+ <!-- Synchronous Mode -->
+ <bean id="graphDataService" class="org.onap.crud.service.CrudGraphDataService" >
+ <constructor-arg name="dao" ref="champDao" />
+ <constructor-arg name="daoForGet" ref="champDao" /> <!-- Using champ for both types of API for now -->
+ </bean>
+
+ <bean id="crudRestService" class="org.onap.crud.service.CrudRestService" init-method="startup" >
+ <constructor-arg name="graphDataService" ref="graphDataService" />
+ </bean>
+
+ <bean id="aaiResourceService" class="org.onap.crud.service.AaiResourceService" init-method="startup" >
+ <constructor-arg name="graphDataService" ref="graphDataService" />
+ </bean>
+
+</beans>
diff --git a/kubernetes/policy/resources/config/log/filebeat/filebeat.yml b/kubernetes/aai/charts/aai-gizmo/resources/config/log/filebeat/filebeat.yml
index b0d4690754..9ad559c027 100644
--- a/kubernetes/policy/resources/config/log/filebeat/filebeat.yml
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/log/filebeat/filebeat.yml
@@ -21,7 +21,7 @@ output.logstash:
#List of logstash server ip addresses with port number.
#But, in our case, this will be the loadbalancer IP address.
#For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
- hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+ hosts: ["logstash.{{ .Release.Name }}-log:5044"]
#If enable will do load balancing among availabe Logstash, automatically.
loadbalance: true
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/log/logback.xml b/kubernetes/aai/charts/aai-gizmo/resources/config/log/logback.xml
new file mode 100644
index 0000000000..f63afd3c6b
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/log/logback.xml
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/onap" />
+ <property name="componentName" value="aai" />
+ <property name="subComponentName" value="aai-CRUD" />
+ <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+ <!-- default eelf 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" />
+ <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\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+ <!-- Example evaluator filter applied against console appender -->
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${pattern}</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}.%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 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>${queueSize}</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}.%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 name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</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}.%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 name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</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">
+ <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>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ </appender>
+ <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFError" />
+ </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}.%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 name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</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.debug" level="debug" additivity="false">
+ <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>
+ <logger name="com.att.eelf.error" level="info" additivity="false">
+ <appender-ref ref="asyncEELFError" />
+ </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 (DME2 Registration, csi logging, restlet, servlet
+ logging) -->
+ <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" level="INFO" />
+ <logger name="com.att.ajsc.csi.logging" level="WARN" />
+ <logger name="com.att.ajsc.filemonitor" level="WARN" />
+ <!-- CRUD Service loggers -->
+ <logger name="org.openecomp.crud" 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 level="INFO">
+ <appender-ref ref="asyncEELFDebug" />
+ </root>
+</configuration>
diff --git a/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v11.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v11.json
new file mode 100644
index 0000000000..8d00636d27
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v11.json
@@ -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-gizmo/resources/config/model/edge_properties_v12.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v12.json
new file mode 100644
index 0000000000..8d00636d27
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v12.json
@@ -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-gizmo/resources/config/model/edge_properties_v13.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v13.json
new file mode 100644
index 0000000000..8d00636d27
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v13.json
@@ -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-gizmo/templates/NOTES.txt b/kubernetes/aai/charts/aai-gizmo/templates/NOTES.txt
new file mode 100644
index 0000000000..24371d08ab
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/templates/NOTES.txt
@@ -0,0 +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 {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ .Release.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 {{ .Release.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 {{ .Release.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 }}
diff --git a/kubernetes/aai/charts/aai-gizmo/templates/configmap.yaml b/kubernetes/aai/charts/aai-gizmo/templates/configmap.yaml
new file mode 100644
index 0000000000..b988d31fd9
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/templates/configmap.yaml
@@ -0,0 +1,45 @@
+# 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" . }}-model-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/model/*").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 }}
+---
+apiVersion: v1
+kind: ConfigMap
+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
diff --git a/kubernetes/aai/charts/aai-gizmo/templates/deployment.yaml b/kubernetes/aai/charts/aai-gizmo/templates/deployment.yaml
new file mode 100644
index 0000000000..7b0a57791c
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/templates/deployment.yaml
@@ -0,0 +1,142 @@
+# 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:
+ 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/crud-service/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/crud-service/dynamic/conf
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/crud-service/config/crud-api.properties
+ subPath: crud-api.properties
+ name: {{ include "common.fullname" . }}-config
+ - mountPath: /opt/app/crud-service/config/model/
+ name: {{ include "common.fullname" . }}-model-config
+ - mountPath: /opt/app/crud-service/config/auth
+ name: {{ include "common.fullname" . }}-auth-secret
+ - mountPath: /opt/app/crud-service/dynamic/conf/crud-beans.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: crud-beans.xml
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/crud-api/bundleconfig/etc/logback.xml
+ name: {{ include "common.fullname" . }}-logback-config
+ subPath: logback.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 }}
+
+ - 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: {{ include "common.fullname" . }}-logs
+ - mountPath: /usr/share/filebeat/data
+ name: {{ include "common.fullname" . }}-data-filebeat
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-auth-secret
+ secret:
+ secretName: {{ include "common.fullname" . }}-auth
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: crud-api.properties
+ path: crud-api.properties
+ - key: crud-beans.xml
+ path: crud-beans.xml
+ - name: {{ include "common.fullname" . }}-logback-config
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ items:
+ - key: logback.xml
+ path: logback.xml
+ - name: {{ include "common.fullname" . }}-model-config
+ configMap:
+ name: {{ include "common.fullname" . }}-model-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-gizmo/templates/secrets.yaml b/kubernetes/aai/charts/aai-gizmo/templates/secrets.yaml
new file mode 100644
index 0000000000..f5d8ec8ba5
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/templates/secrets.yaml
@@ -0,0 +1,41 @@
+# 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" . }}-auth
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ (.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 }} \ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-gizmo/templates/service.yaml b/kubernetes/aai/charts/aai-gizmo/templates/service.yaml
new file mode 100644
index 0000000000..b48a56c7fd
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/templates/service.yaml
@@ -0,0 +1,40 @@
+# 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 }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .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-gizmo/values.yaml b/kubernetes/aai/charts/aai-gizmo/values.yaml
new file mode 100644
index 0000000000..0e982d8fc6
--- /dev/null
+++ b/kubernetes/aai/charts/aai-gizmo/values.yaml
@@ -0,0 +1,61 @@
+# 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:
+ nodePortPrefix: 302
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# application image
+image: onap/gizmo:1.1-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: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: crud-service
+ portName: crud-service
+ internalPort: 9520
+ nodePort: 68
+
+ingress:
+ enabled: false
+
+resources: {}
diff --git a/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml b/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml
index 4c92dfd4a8..5308fa0362 100644
--- a/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-hbase/templates/deployment.yaml
@@ -64,7 +64,7 @@ spec:
volumes:
- name: hbase-data
hostPath:
- path: {{ .Values.persistence.mountPath }}/{{ include "common.namespace" . }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
- name: localtime
hostPath:
path: /etc/localtime
diff --git a/kubernetes/aai/charts/aai-hbase/values.yaml b/kubernetes/aai/charts/aai-hbase/values.yaml
index f1d0c33eff..bda1270889 100644
--- a/kubernetes/aai/charts/aai-hbase/values.yaml
+++ b/kubernetes/aai/charts/aai-hbase/values.yaml
@@ -3,7 +3,6 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# application image
diff --git a/kubernetes/aai/charts/aai-modelloader/resources/config/auth/babel-client-cert.p12 b/kubernetes/aai/charts/aai-modelloader/resources/config/auth/babel-client-cert.p12
new file mode 100644
index 0000000000..dbf4fcacec
--- /dev/null
+++ b/kubernetes/aai/charts/aai-modelloader/resources/config/auth/babel-client-cert.p12
Binary files differ
diff --git a/kubernetes/aai/charts/aai-modelloader/resources/config/log/logback.xml b/kubernetes/aai/charts/aai-modelloader/resources/config/log/logback.xml
index d512d3b91c..6c2fcdc0d2 100644
--- a/kubernetes/aai/charts/aai-modelloader/resources/config/log/logback.xml
+++ b/kubernetes/aai/charts/aai-modelloader/resources/config/log/logback.xml
@@ -1,161 +1,152 @@
-<configuration debug="false" scan="true" scanPeriod="3 seconds">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="aai"></property>
- <property name="subComponentName" value="aai-ml"></property>
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <!-- 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="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\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
- <!-- Example evaluator filter applied against console appender -->
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
- <!-- The EELFAppender is used to record events to the general application
- log -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">
- <file>${logDirectory}/${generalLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${generalLogName}.%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="asyncEELF">
- <!-- 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>${queueSize}</queueSize>
- <appender-ref ref="EELF" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
- <file>${logDirectory}/${auditLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFAudit" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
- <file>${logDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}.%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="asyncEELFMetrics">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
- <file>${logDirectory}/${debugLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="info" name="com.att.eelf">
- <appender-ref ref="asyncEELF" />
- <appender-ref ref="asyncEELFDebug" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.security">
- <appender-ref ref="asyncEELFSecurity" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.perf">
- <appender-ref ref="asyncEELFPerformance" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.server">
- <appender-ref ref="asyncEELFServer" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.policy">
- <appender-ref ref="asyncEELFPolicy" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.audit">
- <appender-ref ref="asyncEELFAudit" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.metrics">
- <appender-ref ref="asyncEELFMetrics" />
- </logger>
- <!-- Spring related loggers -->
- <logger level="WARN" name="org.springframework" />
- <logger level="WARN" name="org.springframework.beans" />
- <logger level="WARN" name="org.springframework.web" />
- <logger level="WARN" name="com.blog.spring.jms" />
- <logger level="INFO" name="com.att" />
- <!-- Model Loader loggers -->
- <logger level="INFO" name="org.openecomp.modelloader" />
- <!-- Other Loggers that may help troubleshoot -->
- <logger level="WARN" name="net.sf" />
- <logger level="WARN" name="org.apache.commons.httpclient" />
- <logger level="WARN" name="org.apache.commons" />
- <logger level="WARN" name="org.apache.coyote" />
- <logger level="WARN" name="org.apache.jasper" />
- <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
- May aid in troubleshooting) -->
- <logger level="WARN" name="org.apache.camel" />
- <logger level="WARN" name="org.apache.cxf" />
- <logger level="WARN" name="org.apache.camel.processor.interceptor" />
- <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" />
- <logger level="WARN" name="org.apache.cxf.service" />
- <logger level="WARN" name="org.restlet" />
- <logger level="WARN" name="org.apache.camel.component.restlet" />
- <!-- logback internals logging -->
- <logger level="WARN" name="ch.qos.logback.classic" />
- <logger level="WARN" name="ch.qos.logback.core" />
- <root>
- <appender-ref ref="asyncEELF" />
- <!-- <appender-ref ref="asyncEELFDebug" /> -->
- </root>
+<configuration scan="true" scanPeriod="3 seconds" debug="false">
+ <include resource="org/springframework/boot/logging/logback/base.xml" />
+ <property name="logDir" value="/var/log/onap" />
+ <property name="componentName" value="AAI-ML"></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|ModelLoader|%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>${defaultPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+
+ <!-- The EELFAppender is used to record events to the general application
+ log -->
+
+ <appender name="EELF"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${generalLogName}.log</file>
+ <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>true</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" />
+
+ <logger name="com.att" level="INFO" />
+
+ <!-- Model Loader loggers -->
+ <logger name="org.openecomp.modelloader" 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/aai/charts/aai-modelloader/resources/config/model-loader.properties b/kubernetes/aai/charts/aai-modelloader/resources/config/model-loader.properties
index 5604c1f877..e9b24b667c 100644
--- a/kubernetes/aai/charts/aai-modelloader/resources/config/model-loader.properties
+++ b/kubernetes/aai/charts/aai-modelloader/resources/config/model-loader.properties
@@ -10,14 +10,21 @@ ml.distribution.PASSWORD=OBF:1ks51l8d1o3i1pcc1r2r1e211r391kls1pyj1z7u1njf1lx51go
ml.distribution.POLLING_INTERVAL=30
ml.distribution.POLLING_TIMEOUT=20
ml.distribution.USER=aai
-ml.distribution.ARTIFACT_TYPES=MODEL_INVENTORY_PROFILE,MODEL_QUERY_SPEC,VNF_CATALOG
+ml.distribution.ARTIFACT_TYPES=MODEL_QUERY_SPEC,TOSCA_CSAR
+ml.distribution.MSG_BUS_ADDRESSES=message-router.{{.Release.Namespace}}
# Model Loader AAI REST Client Configuration
ml.aai.BASE_URL=https://aai.{{.Release.Namespace}}:8443
-ml.aai.MODEL_URL=/aai/v10/service-design-and-creation/models/model/
-ml.aai.NAMED_QUERY_URL=/aai/v10/service-design-and-creation/named-queries/named-query/
-ml.aai.VNF_IMAGE_URL=/aai/v8/service-design-and-creation/vnf-images
+ml.aai.MODEL_URL=/aai/v*/service-design-and-creation/models/model/
+ml.aai.NAMED_QUERY_URL=/aai/v*/service-design-and-creation/named-queries/named-query/
+ml.aai.VNF_IMAGE_URL=/aai/v*/service-design-and-creation/vnf-images
ml.aai.KEYSTORE_FILE=aai-os-cert.p12
ml.aai.KEYSTORE_PASSWORD=OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
ml.aai.AUTH_USER=ModelLoader
ml.aai.AUTH_PASSWORD=OBF:1qvu1v2h1sov1sar1wfw1j7j1wg21saj1sov1v1x1qxw
+
+# Model Loader Babel REST Client Configuration\r
+ml.babel.BASE_URL=https://aai-babel.{{.Release.Namespace}}:9516
+ml.babel.GENERATE_ARTIFACTS_URL=/services/babel-service/v1/app/generateArtifacts
+ml.babel.KEYSTORE_FILE=babel-client-cert.p12
+ml.babel.KEYSTORE_PASSWORD=OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
diff --git a/kubernetes/aai/charts/aai-modelloader/templates/deployment.yaml b/kubernetes/aai/charts/aai-modelloader/templates/deployment.yaml
index 38ebe7689f..7ca2a9fc32 100644
--- a/kubernetes/aai/charts/aai-modelloader/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-modelloader/templates/deployment.yaml
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# 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.
@@ -36,7 +36,7 @@ spec:
spec:
containers:
- name: {{ include "common.name" . }}
- image: {{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: CONFIG_HOME
@@ -52,7 +52,7 @@ spec:
name: {{ include "common.fullname" . }}-auth-config
- mountPath: /var/log/onap
name: {{ include "common.fullname" . }}-logs
- - mountPath: /opt/app/model-loader/bundleconfig/etc/logback.xml
+ - mountPath: /opt/app/model-loader/logback.xml
name: {{ include "common.fullname" . }}-log-conf
subPath: logback.xml
ports:
@@ -71,7 +71,6 @@ spec:
name: {{ include "common.fullname" . }}-logs
- mountPath: /usr/share/filebeat/data
name: aai-filebeat
-
volumes:
- name: localtime
hostPath:
diff --git a/kubernetes/aai/charts/aai-modelloader/values.yaml b/kubernetes/aai/charts/aai-modelloader/values.yaml
index f44d5247ab..a5095ade51 100644
--- a/kubernetes/aai/charts/aai-modelloader/values.yaml
+++ b/kubernetes/aai/charts/aai-modelloader/values.yaml
@@ -3,12 +3,11 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# application image
repository: nexus3.onap.org:10001
-image: onap/model-loader:v1.1.0
+image: onap/model-loader:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties b/kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties
new file mode 100644
index 0000000000..1763a8eda9
--- /dev/null
+++ b/kubernetes/aai/charts/aai-resources/resources/config/aaiconfig.properties
@@ -0,0 +1,121 @@
+#
+# ============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.
+#
+
+####################################################################
+# 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.global.callback.url=https://aai.{{ include "common.namespace" . }}:8443/aai/
+
+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.notification.current.version=v11
+aai.notificationEvent.default.status=UNPROCESSED
+aai.notificationEvent.default.eventType=AAI-EVENT
+aai.notificationEvent.default.domain=dev
+aai.notificationEvent.default.sourceName=aai
+aai.notificationEvent.default.sequenceNumber=0
+aai.notificationEvent.default.severity=NORMAL
+aai.notificationEvent.default.version=v11
+# 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.logging.trace.enabled=true
+aai.logging.trace.logrequest=false
+aai.logging.trace.logresponse=false
+
+aai.transaction.logging=true
+aai.transaction.logging.get=false
+aai.transaction.logging.post=false
+
+aai.realtime.clients=SDNC,MSO,SO,robot-ete
+
+#timeout for crud enabled flag
+aai.crud.timeoutenabled=true
+
+#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
+
+#default timeout limit added for crud if not overridden (in ms)
+aai.crud.timeoutlimit=100000
+#limit set for bulk consumer APIS
+aai.bulkconsumer.payloadlimit=30
+
+#uncomment and use header X-OverrideLimit with the value to override the bulk api limit
+#aai.bulkconsumer.payloadoverride=E6F04B93462CB5B0EDF41C05A9DDF5C3FE59748F
+aai.bulkconsumer.payloadoverride=false
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/application.properties b/kubernetes/aai/charts/aai-resources/resources/config/application.properties
new file mode 100644
index 0000000000..a65c04e4f0
--- /dev/null
+++ b/kubernetes/aai/charts/aai-resources/resources/config/application.properties
@@ -0,0 +1,72 @@
+# 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
+
+spring.application.name=aai-resources
+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
+#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
+
+
+#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/
+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.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=dmaap.{{ 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
+
+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
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties b/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties
new file mode 100644
index 0000000000..b9216bf8e0
--- /dev/null
+++ b/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties
@@ -0,0 +1,49 @@
+#
+# ============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.
+#
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- $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
+#storage.cassandra.replication-strategy-options=MTA1cass,3
+
+#schema.default=none
+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-resources/resources/config/janusgraph-realtime.properties b/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties
new file mode 100644
index 0000000000..d8f6f71f80
--- /dev/null
+++ b/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties
@@ -0,0 +1,44 @@
+#
+# ============LICENSE_START=======================================================
+# 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.
+#
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- $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
+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-resources/resources/config/localhost-access-logback.xml b/kubernetes/aai/charts/aai-resources/resources/config/localhost-access-logback.xml
new file mode 100644
index 0000000000..a318796c57
--- /dev/null
+++ b/kubernetes/aai/charts/aai-resources/resources/config/localhost-access-logback.xml
@@ -0,0 +1,62 @@
+<!--
+
+ ============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
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/log/logback.xml b/kubernetes/aai/charts/aai-resources/resources/config/log/logback.xml
deleted file mode 100644
index 6cfc293f46..0000000000
--- a/kubernetes/aai/charts/aai-resources/resources/config/log/logback.xml
+++ /dev/null
@@ -1,345 +0,0 @@
-<configuration debug="false" scan="true" scanPeriod="3 seconds">
- <contextName>${module.ajsc.namespace.name}</contextName>
- <jmxConfigurator />
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="aai"></property>
- <property name="subcomponentName" value="aai-resources"></property>
- <property name="restLogDirectory" value="${logDir}/${componentName}/${subcomponentName}/rest" />
- <property name="dmaapLogDirectory" value="${logDir}/${componentName}/${subcomponentName}/dmaapAAIEventConsumer" />
- <property name="perfLogsDirectory" value="${logDir}/${componentName}/${subcomponentName}/perf-audit" />
- <!-- default eelf 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" />
- <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>ERROR</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <encoder>
- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="SANE">
- <file>${restLogDirectory}/sane.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/sane.%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="asyncSANE">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="SANE" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="METRIC">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${metricsLogName}.%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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncMETRIC">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="METRIC" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncDEBUG">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="DEBUG" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <file>${restLogDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncERROR">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="ERROR" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT">
- <file>${restLogDirectory}/${auditLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncAUDIT">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="AUDIT" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="translog">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/translog.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/translog.%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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asynctranslog">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="translog" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumer">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <File>${dmaapLogDirectory}/${errorLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumerDebug">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <File>${dmaapLogDirectory}/${debugLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumerMetric">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <File>${dmaapLogDirectory}/${metricsLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${metricsLogName}.%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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- Spring related loggers -->
- <logger level="WARN" name="org.springframework" />
- <logger level="WARN" name="org.springframework.beans" />
- <logger level="WARN" name="org.springframework.web" />
- <logger level="WARN" name="com.blog.spring.jms" />
- <!-- AJSC Services (bootstrap services) -->
- <logger level="WARN" name="ajsc" />
- <logger level="WARN" name="ajsc.RouteMgmtService" />
- <logger level="WARN" name="ajsc.ComputeService" />
- <logger level="WARN" name="ajsc.VandelayService" />
- <logger level="WARN" name="ajsc.FilePersistenceService" />
- <logger level="WARN" name="ajsc.UserDefinedJarService" />
- <logger level="WARN" name="ajsc.UserDefinedBeansDefService" />
- <logger level="WARN" name="ajsc.LoggingConfigurationService" />
- <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
- logging) -->
- <logger level="WARN" name="ajsc.utils" />
- <logger level="WARN" name="ajsc.utils.DME2Helper" />
- <logger level="WARN" name="ajsc.filters" />
- <logger level="WARN" name="ajsc.beans.interceptors" />
- <logger level="WARN" name="ajsc.restlet" />
- <logger level="WARN" name="ajsc.servlet" />
- <logger level="WARN" name="com.att.ajsc" />
- <logger level="WARN" name="com.att.ajsc.csi.logging" />
- <logger level="WARN" name="com.att.ajsc.filemonitor" />
- <!-- Other Loggers that may help troubleshoot -->
- <logger level="WARN" name="net.sf" />
- <logger level="WARN" name="org.apache.commons.httpclient" />
- <logger level="WARN" name="org.apache.commons" />
- <logger level="WARN" name="org.apache.coyote" />
- <logger level="WARN" name="org.apache.jasper" />
- <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
- May aid in troubleshooting) -->
- <logger level="WARN" name="org.apache.camel" />
- <logger level="WARN" name="org.apache.cxf" />
- <logger level="WARN" name="org.apache.camel.processor.interceptor" />
- <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" />
- <logger level="WARN" name="org.apache.cxf.service" />
- <logger level="WARN" name="org.restlet" />
- <logger level="WARN" name="org.apache.camel.component.restlet" />
- <!-- logback internals logging -->
- <logger level="WARN" name="ch.qos.logback.classic" />
- <logger level="WARN" name="ch.qos.logback.core" />
- <!-- logback jms appenders & loggers definition starts here -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="auditLogs">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
- <file>${perfLogsDirectory}/Audit.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${perfLogsDirectory}/Audit.%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.core.rolling.RollingFileAppender" name="perfLogs">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
- <file>${perfLogsDirectory}/Perform.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${perfLogsDirectory}/Perform.%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-audit">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="Audit-Record-Queue" />
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC-perf">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="Performance-Tracker-Queue" />
- </appender>
- <logger additivity="false" level="INFO" name="AuditRecord">
- <appender-ref ref="ASYNC-audit" />
- <appender-ref ref="auditLogs" />
- </logger>
- <logger additivity="false" level="INFO" name="AuditRecord_DirectCall">
- <appender-ref ref="ASYNC-audit" />
- <appender-ref ref="auditLogs" />
- </logger>
- <logger additivity="false" level="INFO" name="PerfTrackerRecord">
- <appender-ref ref="ASYNC-perf" />
- <appender-ref ref="perfLogs" />
- </logger>
- <!-- logback jms appenders & loggers definition ends here -->
- <logger additivity="false" level="DEBUG" name="org.onap.aai.interceptors">
- <appender-ref ref="asynctranslog" />
- </logger>
- <logger level="DEBUG" name="org.onap.aai.interceptors.PreAaiAjscInterceptor">
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <logger level="DEBUG" name="org.onap.aai.interceptors.PostAaiAjscInterceptor">
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <logger additivity="false" level="DEBUG" name="org.onap.aai.dmaap">
- <appender-ref ref="dmaapAAIEventConsumer" />
- <appender-ref ref="dmaapAAIEventConsumerDebug" />
- <appender-ref ref="dmaapAAIEventConsumerMetric" />
- </logger>
- <logger level="WARN" name="org.apache" />
- <logger level="WARN" name="org.zookeeper" />
- <logger level="WARN" name="com.thinkaurelius" />
- <!-- ============================================================================ -->
- <!-- General EELF logger -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="WARN" name="com.att.eelf">
- <appender-ref ref="asyncDEBUG" />
- <appender-ref ref="asyncERROR" />
- <appender-ref ref="asyncMETRIC" />
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncDEBUG" />
- </root>
-</configuration>
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/logback.xml b/kubernetes/aai/charts/aai-resources/resources/config/logback.xml
new file mode 100644
index 0000000000..94eb9a9226
--- /dev/null
+++ b/kubernetes/aai/charts/aai-resources/resources/config/logback.xml
@@ -0,0 +1,352 @@
+<!--
+ ============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 scan="true" scanPeriod="60 seconds" debug="false">
+ <statusListener class="ch.qos.logback.core.status.NopStatusListener" />
+ <property resource="application.properties" />
+ <property name="namespace" value="aai-resources"/>
+ <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
+ <jmxConfigurator />
+ <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}|%X{statusCode}|%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}|%X{statusCode}|%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}|%X{statusCode}|%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}|%X{statusCode}|%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>${eelfLogPattern}</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>
+ <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="OFF" />
+ <!-- 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>"%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" />
+ <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.apache" level="OFF" />
+ <logger name="org.zookeeper" level="OFF" />
+ <logger name="com.thinkaurelius" 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" />
+ </root>
+</configuration>
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/realm.properties b/kubernetes/aai/charts/aai-resources/resources/config/realm.properties
new file mode 100644
index 0000000000..f0e0172d2d
--- /dev/null
+++ b/kubernetes/aai/charts/aai-resources/resources/config/realm.properties
@@ -0,0 +1,13 @@
+# 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-resources/templates/configmap.yaml b/kubernetes/aai/charts/aai-resources/templates/configmap.yaml
index 97c720a6ab..373819e39e 100644
--- a/kubernetes/aai/charts/aai-resources/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-resources/templates/configmap.yaml
@@ -1,7 +1,55 @@
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.fullname" . }}-log
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
+{{ 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-resources/templates/deployment.yaml b/kubernetes/aai/charts/aai-resources/templates/deployment.yaml
index 6aef4475f7..c6bb14c4a2 100644
--- a/kubernetes/aai/charts/aai-resources/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-resources/templates/deployment.yaml
@@ -34,6 +34,7 @@ spec:
release: {{ .Release.Name }}
name: {{ include "common.name" . }}
annotations:
+ checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
msb.onap.org/service-info: '[
{
"serviceName": "_aai-cloudInfrastructure",
@@ -415,12 +416,13 @@ spec:
}
]'
spec:
+ hostname: aai-resources
initContainers:
- command:
- /root/ready.py
args:
- --container-name
- - aai-hbase
+ - aai-cassandra
env:
- name: NAMESPACE
valueFrom:
@@ -432,35 +434,40 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- - name: CHEF_BRANCH
- value: master
- - name: AAI_CHEF_ENV
- value: simpledemo
- - name: AAI_CORE_VERSION
- value: {{ .Values.config.aaicoreversion }}
- - name: AAI_CHEF_LOC
- value: /var/chef/aai-data/environments
- - name: CHEF_GIT_URL
- value: http://gerrit.onap.org/r/aai
- - name: HBASE_STARTUP_ARTIFICIAL_DELAY
- value: "60"
+ - 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: /var/chef/aai-data/chef-config/dev/.knife/solo.rb
- subPath: solo.rb
- name: aai-chef-config
- - mountPath: /var/chef/aai-data/environments/
- name: aai-data
- - mountPath: /var/log/onap
- name: aai-resources-logs
- - mountPath: /opt/app/aai-resources/bundleconfig/etc/logback.xml
- name: aai-resources-log-conf
+ - mountPath: /opt/app/aai-resources/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-db-real-conf
+ subPath: janusgraph-realtime.properties
+ - mountPath: /opt/app/aai-resources/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-db-cached-conf
+ subPath: janusgraph-cached.properties
+ - mountPath: /opt/app/aai-resources/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-resources/resources/logback.xml
+ name: {{ include "common.fullname" . }}-log-conf
subPath: logback.xml
+ - 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/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
ports:
- containerPort: {{ .Values.service.internalPort }}
- containerPort: {{ .Values.service.internalPort2 }}
@@ -498,30 +505,45 @@ spec:
subPath: filebeat.yml
name: filebeat-conf
- mountPath: /var/log/onap
- name: aai-resources-logs
+ name: {{ include "common.fullname" . }}-logs
- mountPath: /usr/share/filebeat/data
- name: aai-resources-filebeat
+ name: {{ include "common.fullname" . }}-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
- - name: aai-chef-config
- configMap:
- name: aai-chef-config
- - name: aai-data
- configMap:
- name: aai-resources-environments
- name: filebeat-conf
configMap:
name: aai-filebeat
- - name: aai-resources-logs
+ - name: {{ include "common.fullname" . }}-logs
emptyDir: {}
- - name: aai-resources-filebeat
+ - name: {{ include "common.fullname" . }}-filebeat
emptyDir: {}
- - name: aai-resources-log-conf
+ - 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" . }}
- restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
+ name: {{ include "common.fullname" . }}-realm-configmap
+ - name: {{ include "common.fullname" . }}-auth-sec
+ secret:
+ secretName: aai-auth-secret
+ restartPolicy: {{ .Values.restartPolicy }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-resources/templates/service.yaml b/kubernetes/aai/charts/aai-resources/templates/service.yaml
index 8cea86cf54..9ba61fa00c 100644
--- a/kubernetes/aai/charts/aai-resources/templates/service.yaml
+++ b/kubernetes/aai/charts/aai-resources/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.name" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -14,15 +14,15 @@ spec:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName2 }}
{{- else -}}
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName2 }}
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/aai/charts/aai-resources/values.yaml b/kubernetes/aai/charts/aai-resources/values.yaml
index f72e29905f..7b55aa75e2 100644
--- a/kubernetes/aai/charts/aai-resources/values.yaml
+++ b/kubernetes/aai/charts/aai-resources/values.yaml
@@ -3,24 +3,24 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
# application image
repository: nexus3.onap.org:10001
-image: openecomp/aai-resources:v1.1.0
+image: onap/aai-resources:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
-# application configuration
-config:
- aaicoreversion: 1.1.0-SNAPSHOT
-
# default number of instances
replicaCount: 1
+# Configuration for the resources deployment
+config:
+ userId: 1000
+ groupId: 1000
+
nodeSelector: {}
affinity: {}
@@ -40,8 +40,9 @@ readiness:
service:
type: ClusterIP
- name: aai-resources
+ portName: aai-resources-8447
internalPort: 8447
+ portName2: aai-resources-5005
internalPort2: 5005
diff --git a/kubernetes/aai/charts/aai-search-data/resources/config/log/logback.xml b/kubernetes/aai/charts/aai-search-data/resources/config/log/logback.xml
index 14ed4142fe..3fbbbab864 100644
--- a/kubernetes/aai/charts/aai-search-data/resources/config/log/logback.xml
+++ b/kubernetes/aai/charts/aai-search-data/resources/config/log/logback.xml
@@ -1,188 +1,177 @@
-<configuration debug="false" scan="true" scanPeriod="3 seconds">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="aai"></property>
- <property name="subcomponentName" value="aai-sdb" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subcomponentName}" />
- <!-- default eelf 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" />
- <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
- <!-- Example evaluator filter applied against console appender -->
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
- <!-- The EELFAppender is used to record events to the general application
- log -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">
- <file>${logDirectory}/${errorLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELF">
- <!-- 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>${queueSize}</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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
- <file>${logDirectory}/${auditLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFAudit" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
- <file>${logDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}.%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>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
- <file>${logDirectory}/${debugLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>false</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="info" name="com.att.eelf">
- <appender-ref ref="asyncEELF" />
- <appender-ref ref="asyncEELFDebug" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.security">
- <appender-ref ref="asyncEELFSecurity" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.perf">
- <appender-ref ref="asyncEELFPerformance" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.server">
- <appender-ref ref="asyncEELFServer" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.policy">
- <appender-ref ref="asyncEELFPolicy" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.audit">
- <appender-ref ref="asyncEELFAudit" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.metrics">
- <appender-ref ref="asyncEELFMetrics" />
- </logger>
- <!-- Spring related loggers -->
- <logger level="WARN" name="org.springframework" />
- <logger level="WARN" name="org.springframework.beans" />
- <logger level="WARN" name="org.springframework.web" />
- <logger level="WARN" name="com.blog.spring.jms" />
- <!-- AJSC Services (bootstrap services) -->
- <logger level="WARN" name="ajsc" />
- <logger level="WARN" name="ajsc.RouteMgmtService" />
- <logger level="WARN" name="ajsc.ComputeService" />
- <logger level="WARN" name="ajsc.VandelayService" />
- <logger level="WARN" name="ajsc.FilePersistenceService" />
- <logger level="WARN" name="ajsc.UserDefinedJarService" />
- <logger level="WARN" name="ajsc.UserDefinedBeansDefService" />
- <logger level="WARN" name="ajsc.LoggingConfigurationService" />
- <logger level="WARN" name="ajsc.ErrorMessageLookupService" />
- <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
- logging) -->
- <logger level="WARN" name="ajsc.utils" />
- <logger level="WARN" name="ajsc.utils.DME2Helper" />
- <logger level="WARN" name="ajsc.filters" />
- <logger level="WARN" name="ajsc.beans.interceptors" />
- <logger level="WARN" name="ajsc.restlet" />
- <logger level="WARN" name="ajsc.servlet" />
- <logger level="INFO" name="com.att" />
- <logger level="WARN" name="com.att.ajsc.csi.logging" />
- <logger level="WARN" name="com.att.ajsc.filemonitor" />
- <!-- SearchDB loggers -->
- <logger level="INFO" name="org.openecomp.sa" />
- <!-- Other Loggers that may help troubleshoot -->
- <logger level="WARN" name="net.sf" />
- <logger level="WARN" name="org.apache.commons.httpclient" />
- <logger level="WARN" name="org.apache.commons" />
- <logger level="WARN" name="org.apache.coyote" />
- <logger level="WARN" name="org.apache.jasper" />
- <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
- May aid in troubleshooting) -->
- <logger level="WARN" name="org.apache.camel" />
- <logger level="WARN" name="org.apache.cxf" />
- <logger level="WARN" name="org.apache.camel.processor.interceptor" />
- <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" />
- <logger level="WARN" name="org.apache.cxf.service" />
- <logger level="WARN" name="org.restlet" />
- <logger level="WARN" name="org.apache.camel.component.restlet" />
- <!-- logback internals logging -->
- <logger level="WARN" name="ch.qos.logback.classic" />
- <logger level="WARN" name="ch.qos.logback.core" />
- <root>
- <appender-ref ref="asyncEELF" />
- <!-- <appender-ref ref="asyncEELFDebug" /> -->
- </root>
+<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/aai/charts/aai-search-data/templates/deployment.yaml b/kubernetes/aai/charts/aai-search-data/templates/deployment.yaml
index beaee7d374..c841c383e9 100644
--- a/kubernetes/aai/charts/aai-search-data/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-search-data/templates/deployment.yaml
@@ -36,7 +36,7 @@ spec:
spec:
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: CONFIG_HOME
diff --git a/kubernetes/aai/charts/aai-search-data/values.yaml b/kubernetes/aai/charts/aai-search-data/values.yaml
index e7bfa6bdfa..4e47d37134 100644
--- a/kubernetes/aai/charts/aai-search-data/values.yaml
+++ b/kubernetes/aai/charts/aai-search-data/values.yaml
@@ -3,14 +3,13 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
# application image
repository: nexus3.onap.org:10001
-image: onap/search-data-service:v1.1.0
+image: onap/search-data-service:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/aai.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/aai.properties
deleted file mode 100644
index 813a263d90..0000000000
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/aai.properties
+++ /dev/null
@@ -1,87 +0,0 @@
-################################################################################################################
-############################## ActiveInventoryDataCollector TLS/SSL configuration ##############################
-################################################################################################################
-
-############################## Networking ##############################
-#
-# The ip address/hostname and port to the desired AAI instance
-#
-aai.rest.host=aai.{{.Release.Namespace}}
-aai.rest.port=8443
-
-############################## REST ##############################
-# OXM version
-aai.rest.resourceBasePath=/aai/v9
-aai.rest.connectTimeoutInMs=30000
-aai.rest.readTimeoutInMs=60000
-aai.rest.numRequestRetries=5
-# HTTP_NOAUTH - straight HTTP no user/pass
-# SSL_BASIC - HTTP/S with user/pass
-# SSL_CERT - HTTP/S with client cert
-aai.rest.authenticationMode=SSL_BASIC
-
-############################## Cache ##############################
-# Experimental caching feature that is NOT production ready.
-# Enable at your own risk... it might not work.
-aai.rest.cache.enabled=false
-aai.rest.cache.numWorkers=10
-aai.rest.cache.cacheFailures=false
-aai.rest.cache.useCacheOnly=false
-aai.rest.cache.storageFolderOverride=
-aai.rest.cache.maxTimeToLiveInMs=-1
-
-# The shallowEntity filter will display the entity in a visualization
-# but will not collect it's relationships or complex attributes.
-aai.rest.shallowEntities=cloud-region,complex,vnf-image,att-aic,image
-
-############################## Certs, Auth, and SSL Settings ##############################
-aai.ssl.keystore.filename=aai-os-cert.p12
-aai.ssl.keystore.pass=OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
-aai.ssl.keystore.type=pkcs12
-# Enable debug on the SSL connections
-aai.ssl.enableDebug=false
-# Degree of strictness to SSL connection standards
-aai.ssl.validateServerHostName=false;
-aai.ssl.validateServerCertificateChain=false;
-# If basic auth is implemented, username and password as required
-aai.ssl.basicAuth.username=AaiUI
-aai.ssl.basicAuth.password=OBF:1gfr1p571unz1p4j1gg7
-
-############################## Statistics Report Formatting ##############################
-#
-# During synchronization, a formatted statisitics log is generated
-#
-# Response size in bytes histogram
-aai.taskProcessor.bytesHistogramLabel="[Response Size In Bytes]"
-aai.taskProcessor.bytesHistogramMaxYAxis=1000000
-aai.taskProcessor.bytesHistogramNumBins=20
-aai.taskProcessor.bytesHistogramNumDecimalPoints=2
-# "Work on Hand" statisitcs for external resource requests
-aai.taskProcessor.queueLengthHistogramLabel="[Queue Item Length]"
-aai.taskProcessor.queueLengthHistogramMaxYAxis=20000
-aai.taskProcessor.queueLengthHistogramNumBins=20
-aai.taskProcessor.queueLengthHistogramNumDecimalPoints=2
-# Time on queue (how long does a task stay on the work queue)
-aai.taskProcessor.taskAgeHistogramLabel="[Task Age In Ms]"
-aai.taskProcessor.taskAgeHistogramMaxYAxis=600000
-aai.taskProcessor.taskAgeHistogramNumBins=20
-aai.taskProcessor.taskAgeHistogramNumDecimalPoints=2
-# Per transaction response time for external resource requests
-aai.taskProcessor.responseTimeHistogramLabel="[Response Time In Ms]"
-aai.taskProcessor.responseTimeHistogramMaxYAxis=10000
-aai.taskProcessor.responseTimeHistogramNumBins=20
-aai.taskProcessor.responseTimeHistogramNumDecimalPoints=2
-# Transaction throughput velocity
-aai.taskProcessor.tpsHistogramLabel="[Transactions Per Second]"
-aai.taskProcessor.tpsHistogramMaxYAxis=100
-aai.taskProcessor.tpsHistogramNumBins=20
-aai.taskProcessor.tpsHistogramNumDecimalPoints=2
-
-############################## Deprecated, to be removed or updated ##############################
-aai.rest.numResolverWorkers=15
-aai.ssl.truststore.filename=asdc-client.jks
-aai.ssl.truststore.type=jks
-aai.taskProcessor.maxConcurrentWorkers=5
-aai.taskProcessor.transactionRateControllerEnabled=false
-aai.taskProcessor.numSamplesPerThreadForRunningAverage=100
-aai.taskProcessor.targetTPS=100
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/csp-cookie-filter.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/csp-cookie-filter.properties
new file mode 100644
index 0000000000..2315b9f559
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/csp-cookie-filter.properties
@@ -0,0 +1,12 @@
+global.login.url=aaiportal.onap.org
+
+# MOTS ID of the application
+application.id=12345
+
+# valid domains for open redirect
+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
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/inventory-ui-keystore b/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/inventory-ui-keystore
deleted file mode 100644
index efa01f8d79..0000000000
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/inventory-ui-keystore
+++ /dev/null
Binary files differ
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/tomcat_keystore b/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/tomcat_keystore
new file mode 100644
index 0000000000..9eec841aa2
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/auth/tomcat_keystore
Binary files differ
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
new file mode 100644
index 0000000000..e4e02bae94
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-filter-aggregation.xml
@@ -0,0 +1,7 @@
+<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
new file mode 100644
index 0000000000..20dba6f13c
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-prepareSchema.xml
@@ -0,0 +1,11 @@
+<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
new file mode 100644
index 0000000000..f6a2953b3a
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-subscriptionService.xml
@@ -0,0 +1,7 @@
+<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
new file mode 100644
index 0000000000..61fd9ad155
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unified-search.xml
@@ -0,0 +1,7 @@
+<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
new file mode 100644
index 0000000000..1b975e9dd3
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/camel-rests/sparky-core-unifiedFilterRequest.xml
@@ -0,0 +1,7 @@
+<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
new file mode 100644
index 0000000000..e72bab0f28
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/descriptors/aaiEntityNodeDescriptors.json
@@ -0,0 +1,218 @@
+{
+ "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/elasticsearch.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/elasticsearch.properties
deleted file mode 100644
index 082744b94e..0000000000
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/elasticsearch.properties
+++ /dev/null
@@ -1,72 +0,0 @@
-#######################################################################################
-############################## ElasticSearch Config ###################################
-#######################################################################################
-
-############################## Networking ##############################
-#
-# The ip address/hostname and port to the desired AAI instance
-# For development it's recommended to use a local instance of ES
-#
-elasticsearch.ipAddress=aai-elasticsearch.{{.Release.Namespace}}
-elasticsearch.httpPort={{ .Values.config.elasticsearchHttpPort }}
-elasticsearch.javaApiPort=8443
-
-############################## Indexes ##############################
-#
-# Index names for various searches.
-#
-elasticsearch.indexName=entitysearchindex
-elasticsearch.topographicalIndexName=topographicalsearchindex
-elasticsearch.entityCountHistoryIndexName=entitycounthistoryindex
-elasticsearch.autosuggestIndexname=entityautosuggestindex
-
-# Default document type
-elasticsearch.type=default
-
-############################## Index Mappings and Settings ##############################
-#
-# JSON files for sparky elasticsearch indexes.
-#
-elasticsearch.mappingsFileName=/etc/es_mappings.json
-elasticsearch.settingsFileName=/etc/es_settings.json
-elasticsearch.autosuggestSettingsFileName=/etc/autoSuggestSettings.json
-elasticsearch.autosuggestMappingsFileName=/etc/autoSuggestMappings.json
-elasticsearch.dynamicMappingsFileName=/etc/dynamicMappings.json
-elasticsearch.entityCountHistoryMappingsFileName=/etc/entityCountHistoryMappings.json
-
-############################## Statistics Report Formatting ##############################
-#
-# During synchronization, a formatted statisitics log is generated.
-#
-# Response size in bytes histogram
-elasticsearch.taskProcessor.bytesHistogramLabel="[Response Size In Bytes]"
-elasticsearch.taskProcessor.bytesHistogramMaxYAxis=1000000
-elasticsearch.taskProcessor.bytesHistogramNumBins=20
-elasticsearch.taskProcessor.bytesHistogramNumDecimalPoints=2
-# "Work on Hand" statisitcs for external resource requests
-elasticsearch.taskProcessor.queueLengthHistogramLabel="[Queue Item Length]"
-elasticsearch.taskProcessor.queueLengthHistogramMaxYAxis=20000
-elasticsearch.taskProcessor.queueLengthHistogramNumBins=20
-elasticsearch.taskProcessor.queueLengthHistogramNumDecimalPoints=2
-# Time on queue (how long does a task stay on the work queue)
-elasticsearch.taskProcessor.taskAgeHistogramLabel="[Task Age In Ms]"
-elasticsearch.taskProcessor.taskAgeHistogramMaxYAxis=600000
-elasticsearch.taskProcessor.taskAgeHistogramNumBins=20
-elasticsearch.taskProcessor.taskAgeHistogramNumDecimalPoints=2
-# Per transaction response time for external resource requests
-elasticsearch.taskProcessor.responseTimeHistogramLabel="[Response Time In Ms]"
-elasticsearch.taskProcessor.responseTimeHistogramMaxYAxis=1000
-elasticsearch.taskProcessor.responseTimeHistogramNumBins=20
-elasticsearch.taskProcessor.responseTimeHistogramNumDecimalPoints=2
-# Transaction throughput velocity
-elasticsearch.taskProcessor.tpsHistogramLabel="[Transactions Per Second]"
-elasticsearch.taskProcessor.tpsHistogramMaxYAxis=100
-elasticsearch.taskProcessor.tpsHistogramNumBins=20
-elasticsearch.taskProcessor.tpsHistogramNumDecimalPoints=2
-
-############################## Deprecated, to be removed or updated ##############################
-elasticsearch.taskProcessor.maxConcurrentWorkers=5
-elasticsearch.taskProcessor.transactionRateControllerEnabled=false
-elasticsearch.taskProcessor.numSamplesPerThreadForRunningAverage=100
-elasticsearch.taskProcessor.targetTPS=100
-elasticsearch.clusterName=ES_AAI_LOCALHOST
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
new file mode 100644
index 0000000000..62b681139d
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_filters.json
@@ -0,0 +1,79 @@
+{
+ "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
new file mode 100644
index 0000000000..9ca0119dc0
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/aaiui_views.json
@@ -0,0 +1,21 @@
+{
+ "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
new file mode 100644
index 0000000000..ad2ab7aa5f
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/filters/subscription_object_inspector_mapping.json
@@ -0,0 +1,16 @@
+{
+ "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
index c1b99c183f..3f96497c60 100644
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/log/logback.xml
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/log/logback.xml
@@ -1,200 +1,172 @@
-<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="3 seconds" debug="false">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="AAI-UI" />
- <property name="logDirectory" value="${logDir}/${componentName}" />
- <!-- default eelf 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" />
- <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" />
-
- <!-- Example evaluator filter applied against console appender -->
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${pattern}</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}.%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 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>${queueSize}</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}.%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 name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</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}.%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 name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</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">
- <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>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- </appender>
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFError" />
- </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}.%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 name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>false</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger name="com.att.eelf" level="INFO" additivity="false" />
- <logger name="org.elasticsearch.plugins" level="WARN" />
- <logger name="com.att.eelf.debug" level="debug" additivity="false">
- <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>
- <logger name="com.att.eelf.error" level="info" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </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" />
- <logger name="ajsc.ErrorMessageLookupService" level="WARN" />
- <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
- logging) -->
- <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" level="WARN" />
- <logger name="com.att.ajsc.csi.logging" level="WARN" />
- <logger name="com.att.ajsc.filemonitor" 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" />
- <!-- logback internals logging -->
- <logger name="ch.qos.logback.classic" level="INFO" />
- <logger name="ch.qos.logback.core" level="INFO" />
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-</configuration> \ No newline at end of file
+ <!--<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>
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/model/aai_oxm_v9.xml b/kubernetes/aai/charts/aai-sparky-be/resources/config/model/aai_oxm_v9.xml
deleted file mode 100644
index 6337c32edc..0000000000
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/model/aai_oxm_v9.xml
+++ /dev/null
@@ -1,4775 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.att.com.v9" xml-mapping-metadata-complete="true">
- <xml-schema element-form-default="QUALIFIED">
- <xml-ns namespace-uri="http://com.att.aai.inventory/v9" />
- </xml-schema>
- <java-types>
- <java-type name="Inventory">
- <xml-root-element name="inventory" />
- <java-attributes>
- <xml-element java-attribute="search" name="search" type="inventory.aai.att.com.v9.Search" />
- <xml-element java-attribute="actions" name="actions" type="inventory.aai.att.com.v9.Actions" />
- <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.att.com.v9.CloudInfrastructure" />
- <xml-element java-attribute="licenseManagement" name="license-management" type="inventory.aai.att.com.v9.LicenseManagement" />
- <xml-element java-attribute="business" name="business" type="inventory.aai.att.com.v9.Business" />
- <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.att.com.v9.ServiceDesignAndCreation" />
- <xml-element java-attribute="network" name="network" type="inventory.aai.att.com.v9.Network" />
- <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.att.com.v9.AaiInternal" />
- </java-attributes>
- </java-type>
-
- <java-type name="Search">
- <xml-root-element name="search" />
- <java-attributes>
- <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.att.com.v9.EdgeTagQueryResult" />
- <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.att.com.v9.EdgeTagQueryRequest" />
- <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.att.com.v9.SearchResults" />
- <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.att.com.v9.SdnZoneResponse" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryResult">
- <xml-root-element name="edge-tag-query-result" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.att.com.v9.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="TaggedInventoryItemList">
- <xml-root-element name="tagged-inventory-item-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.att.com.v9.InventoryItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItem">
- <xml-root-element name="inventory-item" />
- <java-attributes>
- <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
- <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.att.com.v9.InventoryItemData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.att.com.v9.TaggedInventoryItemList" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryItemData">
- <xml-root-element name="inventory-item-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="EdgeTagQueryRequest">
- <xml-root-element name="edge-tag-query-request" />
- <java-attributes>
- <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
- <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
- <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.att.com.v9.StartNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.att.com.v9.IncludeNodeFilter" />
- <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.att.com.v9.SecondaryFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="StartNodeFilter">
- <xml-root-element name="start-node-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="IncludeNodeFilter">
- <xml-root-element name="include-node-filter" />
- <java-attributes>
- <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SecondaryFilter">
- <xml-root-element name="secondary-filter" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="SearchResults">
- <xml-root-element name="search-results" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.att.com.v9.ResultData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResultData">
- <xml-root-element name="result-data" />
- <java-attributes>
- <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The specific type of node in the A&amp;AI graph" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The URL to the specific resource" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="SdnZoneResponse">
- <xml-root-element name="sdn-zone-response" />
- <java-attributes>
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.att.com.v9.OamNetworks" />
- <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.att.com.v9.AzAndDvsSwitches" />
- </java-attributes>
- </java-type>
-
- <java-type name="AzAndDvsSwitches">
- <xml-root-element name="az-and-dvs-switches" />
- <java-attributes>
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.att.com.v9.DvsSwitches" />
- <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.att.com.v9.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="Actions">
- <xml-properties>
- <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
- </xml-properties>
- <xml-root-element name="actions" />
- <java-attributes>
- <xml-element java-attribute="update" name="update" type="inventory.aai.att.com.v9.Update" />
- <xml-element java-attribute="notify" name="notify" type="inventory.aai.att.com.v9.Notify" />
- </java-attributes>
- </java-type>
-
- <java-type name="Update">
- <xml-properties>
- <xml-property name="description" value="Serves a PATCH like function. Does not enforce concurrency control. Clear each usage with AAI team." />
- </xml-properties>
- <xml-root-element name="update" />
- <java-attributes>
- <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.att.com.v9.UpdateNodeKey" />
- <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.att.com.v9.Action" />
- </java-attributes>
- </java-type>
-
- <java-type name="Action">
- <xml-root-element name="action" />
- <java-attributes>
- <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.att.com.v9.ActionData" />
- </java-attributes>
- </java-type>
-
- <java-type name="ActionData">
- <xml-root-element name="action-data" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="UpdateNodeKey">
- <xml-root-element name="update-node-key" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Notify">
- <xml-root-element name="notify" />
- <java-attributes>
- <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
- <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
- <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.att.com.v9.KeyData" />
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="KeyData">
- <xml-root-element name="key-data" />
- <java-attributes>
- <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
- <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudInfrastructure">
- <xml-properties>
- <xml-property name="description" value="Namespace for cloud infrastructure." />
- </xml-properties>
- <xml-root-element name="cloud-infrastructure" />
- <java-attributes>
- <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.att.com.v9.Complexes" />
- <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.att.com.v9.CloudRegions" />
- <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.att.com.v9.NetworkProfiles" />
- <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.att.com.v9.Pservers" />
- <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.att.com.v9.VirtualDataCenters" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegions">
- <xml-root-element name="cloud-regions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.att.com.v9.CloudRegion" />
- </java-attributes>
- </java-type>
-
- <java-type name="CloudRegion">
- <xml-root-element name="cloud-region" />
- <java-attributes>
- <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifies the vendor and cloud name, e.g., att-aic. First part of composite key should be formatted as vendor-cloudname" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Cloud-owner defined type indicator (e.g., DCP, LCP)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Software version employed at the site" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Zone where the cloud is homed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="complex name for cloud-region instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.att.com.v9.VolumeGroups" />
- <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.att.com.v9.Tenants" />
- <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.att.com.v9.Flavors" />
- <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.att.com.v9.GroupAssignments" />
- <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.att.com.v9.Snapshots" />
- <xml-element java-attribute="images" name="images" type="inventory.aai.att.com.v9.Images" />
- <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.att.com.v9.DvsSwitches" />
- <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.att.com.v9.OamNetworks" />
- <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.att.com.v9.AvailabilityZones" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&amp;Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&amp;T's AIC." />
- <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
- <xml-property name="nameProps" value="owner-defined-type" />
- <xml-property name="container" value="cloud-regions" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
- <java-type name="VolumeGroups">
- <xml-properties>
- <xml-property name="description" value="Collection of persistent block-level storage." />
- </xml-properties>
- <xml-root-element name="volume-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.att.com.v9.VolumeGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="VolumeGroup">
- <xml-root-element name="volume-group" />
- <java-attributes>
- <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of volume-group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the volume group." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this volume-group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Persistent block-level storage." />
- <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
- <xml-property name="searchable" value="volume-group-id,volume-group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="volume-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="RelationshipList">
- <xml-root-element name="relationship-list" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.att.com.v9.Relationship" />
- </java-attributes>
- </java-type>
-
- <java-type name="Relationship">
- <xml-root-element name="relationship" />
- <java-attributes>
- <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&amp;AI to indicate type of node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to the object in A&amp;AI." />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.att.com.v9.RelationshipData" />
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.att.com.v9.RelatedToProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedToProperty">
- <xml-root-element name="related-to-property" />
- <java-attributes>
- <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Key part of a key/value pair" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value part of a key/value pair" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="RelationshipData">
- <xml-root-element name="relationship-data" />
- <java-attributes>
- <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="A keyword provided by A&amp;AI to indicate an attribute." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Value of the attribute." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- </java-type>
-
- <java-type name="Complexes">
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- </xml-properties>
- <xml-root-element name="complexes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.att.com.v9.Complex" />
- </java-attributes>
- </java-type>
-
- <java-type name="Complex">
- <xml-root-element name="complex" />
- <java-attributes>
- <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gamma complex name for LCP instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL of the keystone identity service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type, e.g., central office, data center." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
- <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
- <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
- <xml-element java-attribute="state" name="state" type="java.lang.String" />
- <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
- <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
- <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
- <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
- <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
- <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
- <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
- <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.att.com.v9.CtagPools" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
- <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
- <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
- <xml-property name="uniqueProps" value="physical-location-id" />
- <xml-property name="container" value="complexes" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- <xml-property name="geoProps" value="latitude,longitude" />
- <xml-property name="geoLat" value="latitude" />
- <xml-property name="geoLong" value="longitude" />
- </xml-properties>
- </java-type>
-
- <java-type name="CtagPools">
- <xml-root-element name="ctag-pools" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.att.com.v9.CtagPool" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagPool">
- <xml-root-element name="ctag-pool" />
- <java-attributes>
- <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="The Target provider edge router" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Describes what the intended purpose of this pool is." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Comma separated list of ctags" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="complex" />
- <xml-property name="container" value="ctag-pools" />
- </xml-properties>
- </java-type>
-
- <java-type name="Tenants">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack tenants." />
- </xml-properties>
- <xml-root-element name="tenants" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.att.com.v9.Tenant" />
- </java-attributes>
- </java-type>
-
- <java-type name="Tenant">
- <xml-root-element name="tenant" />
- <java-attributes>
- <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id relative to the cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Readable name of tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vservers" name="vservers" type="inventory.aai.att.com.v9.Vservers" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack tenant" />
- <xml-property name="nameProps" value="tenant-name" />
- <xml-property name="indexedProps" value="tenant-name,tenant-id" />
- <xml-property name="searchable" value="tenant-id,tenant-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="tenants" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vservers">
- <xml-properties>
- <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
- </xml-properties>
- <xml-root-element name="vservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.att.com.v9.Vserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vserver">
- <xml-root-element name="vserver" />
- <java-attributes>
- <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternative name of vserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vserverSelflink" name="vserver-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumes" name="volumes" type="inventory.aai.att.com.v9.Volumes" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
- <xml-property name="nameProps" value="vserver-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
- <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
- <xml-property name="dependentOn" value="tenant" />
- <xml-property name="container" value="vservers" />
- </xml-properties>
- </java-type>
-
- <java-type name="LInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of logical interfaces." />
- </xml-properties>
- <xml-root-element name="l-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.att.com.v9.LInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LInterface">
- <xml-root-element name="l-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name given to the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="MAC address for the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether A&amp;AI should be managing this interface of not. Could have value like CUSTOMER" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.att.com.v9.Vlans" />
- <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.att.com.v9.SriovVfs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.att.com.v9.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.att.com.v9.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical interfaces, e.g., a vnic." />
- <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name" />
- <xml-property name="dependentOn" value="generic-vnf,newvce,vpe,p-interface,vserver,lag-interface" />
- <xml-property name="container" value="l-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="SriovVfs">
- <xml-properties>
- <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
- </xml-properties>
- <xml-root-element name="sriov-vfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.att.com.v9.SriovVf" />
- </java-attributes>
- </java-type>
- <java-type name="SriovVf">
- <xml-root-element name="sriov-vf" />
- <java-attributes>
- <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This option is used to set the link status. Valid values as of 1607 are on, off, and auto." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
- <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="sriov-vfs" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv4AddressList">
- <xml-root-element name="l3-interface-ipv4-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 32 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv4 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vlans">
- <xml-root-element name="vlans" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.att.com.v9.Vlan" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vlan">
- <xml-root-element name="vlan" />
- <java-attributes>
- <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String that identifies the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnId" name="vpn-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.att.com.v9.L3InterfaceIpv4AddressList" />
- <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.att.com.v9.L3InterfaceIpv6AddressList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Definition of vlan" />
- <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-id" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="dependentOn" value="l-interface" />
- <xml-property name="container" value="vlans" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3InterfaceIpv6AddressList">
- <xml-root-element name="l3-interface-ipv6-address-list" />
- <java-attributes>
- <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="IP address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Prefix length, 128 for single address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Inner VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Outer VLAN tag" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Indicator of fixed or floating address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of subnet that address belongs to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPv6 Address Range" />
- <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
- <xml-property name="dependentOn" value="vlan,l-interface" />
- </xml-properties>
- </java-type>
-
- <java-type name="Volumes">
- <xml-properties>
- <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
- </xml-properties>
- <xml-root-element name="volumes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.att.com.v9.Volume" />
- </java-attributes>
- </java-type>
-
- <java-type name="Volume">
- <xml-root-element name="volume" />
- <java-attributes>
- <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="volumeSelflink" name="volume-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Ephemeral Block storage volume." />
- <xml-property name="indexedProps" value="volume-id" />
- <xml-property name="dependentOn" value="vserver" />
- <xml-property name="container" value="volumes" />
- </xml-properties>
- </java-type>
-
- <java-type name="Flavors">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack flavors." />
- </xml-properties>
- <xml-root-element name="flavors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.att.com.v9.Flavor" />
- </java-attributes>
- </java-type>
-
- <java-type name="Flavor">
- <xml-root-element name="flavor" />
- <java-attributes>
- <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Flavor name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of CPUs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of memory" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Amount of ephemeral disk space" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="amount of swap space allocation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorSelflink" name="flavor-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack flavor." />
- <xml-property name="nameProps" value="flavor-name" />
- <xml-property name="indexedProps" value="flavor-name,flavor-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="flavors" />
- </xml-properties>
- </java-type>
-
- <java-type name="Snapshots">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack snapshots" />
- </xml-properties>
- <xml-root-element name="snapshots" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.att.com.v9.Snapshot" />
- </java-attributes>
- </java-type>
-
- <java-type name="Snapshot">
- <xml-root-element name="snapshot" />
- <java-attributes>
- <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Snapshot name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack snapshot" />
- <xml-property name="nameProps" value="snapshot-name" />
- <xml-property name="uniqueProps" value="snapshot-id" />
- <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="snapshots" />
- </xml-properties>
- </java-type>
-
- <java-type name="GroupAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack group assignments" />
- </xml-properties>
- <xml-root-element name="group-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.att.com.v9.GroupAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="GroupAssignment">
- <xml-root-element name="group-assignment" />
- <java-attributes>
- <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group type - the type of group this instance refers to" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name - name assigned to the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group description - description of the group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
- <xml-property name="nameProps" value="group-name" />
- <xml-property name="indexedProps" value="group-id,group-type,group-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="group-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Images">
- <xml-properties>
- <xml-property name="description" value="Collectio of Openstack images." />
- </xml-properties>
- <xml-root-element name="images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.att.com.v9.Image" />
- </java-attributes>
- </java-type>
-
- <java-type name="Image">
- <xml-root-element name="image" />
- <java-attributes>
- <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Image id, expected to be unique across cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Image name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operating system architecture." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The operating system version as specified by the distributor." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="imageSelflink" name="image-selflink" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.att.com.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack image." />
- <xml-property name="nameProps" value="image-name" />
- <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="images" />
- </xml-properties>
- </java-type>
-
- <java-type name="Metadata">
- <xml-properties>
- <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
- </xml-properties>
- <xml-root-element name="metadata" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.att.com.v9.Metadatum" />
- </java-attributes>
- </java-type>
-
- <java-type name="Metadatum">
- <xml-root-element name="metadatum" />
- <java-attributes>
- <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Key/value pairs" />
- <xml-property name="indexedProps" value="metaname" />
- <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
- <xml-property name="container" value="metadata" />
- </xml-properties>
- </java-type>
-
- <java-type name="DvsSwitches">
- <xml-properties>
- <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and VPEs." />
- </xml-properties>
- <xml-root-element name="dvs-switches" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.att.com.v9.DvsSwitch" />
- </java-attributes>
- </java-type>
-
- <java-type name="DvsSwitch">
- <xml-root-element name="dvs-switch" />
- <java-attributes>
- <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="DVS switch name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL used to reach the vcenter" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs. A&amp;AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&amp;AI. " />
- <xml-property name="indexedProps" value="vcenter-url,switch-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="dvs-switches" />
- </xml-properties>
- </java-type>
-
- <java-type name="NetworkProfiles">
- <xml-properties>
- <xml-property name="description" value="Collection of network profiles" />
- </xml-properties>
- <xml-root-element name="network-profiles" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.att.com.v9.NetworkProfile" />
- </java-attributes>
- </java-type>
-
- <java-type name="NetworkProfile">
- <xml-root-element name="network-profile" />
- <java-attributes>
- <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique name of network profile." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted SNMP community string" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
- <xml-property name="indexedProps" value="nm-profile-name" />
- <xml-property name="container" value="network-profiles" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pservers">
- <xml-properties>
- <xml-property name="description" value="Collection of compute hosts." />
- </xml-properties>
- <xml-root-element name="pservers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.att.com.v9.Pserver" />
- </java-attributes>
- </java-type>
-
- <java-type name="Pserver">
- <xml-root-element name="pserver" />
- <java-attributes>
- <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value from executing hostname on the compute node." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="PTNII name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Number of cpus" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Disk size, in GBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="RAM size, in MBs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Fully-qualified domain name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverSelflink" name="pserver-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Serial number, may be queried" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="internet topology of Pserver" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pserverName2" name="pserver-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="alternative pserver name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="purpose of pserver" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.att.com.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
- <xml-property name="nameProps" value="pserver-name2" />
- <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2" />
- <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
- <xml-property name="container" value="pservers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="PInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of physical interfaces." />
- </xml-properties>
- <xml-root-element name="p-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.att.com.v9.PInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="PInterface">
- <xml-root-element name="p-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the physical interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Nature of the services and connectivity on this port." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role specification for p-interface hardware." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the physical properties of the interface." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Physical interface (e.g., nic)" />
- <xml-property name="indexedProps" value="interface-name" />
- <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
- <xml-property name="container" value="p-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="LagInterfaces">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregate interfaces." />
- </xml-properties>
- <xml-root-element name="lag-interfaces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.att.com.v9.LagInterface" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagInterface">
- <xml-root-element name="lag-interface" />
- <java-attributes>
- <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name that identifies the link aggregate interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Link aggregate interface" />
- <xml-property name="indexedProps" value="interface-name" />
- <xml-property name="dependentOn" value="generic-vnf,pserver,vpe,vpls-pe,pnf" />
- <xml-property name="container" value="lag-interfaces" />
- </xml-properties>
- </java-type>
-
- <java-type name="OamNetworks">
- <xml-properties>
- <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. " />
- </xml-properties>
- <xml-root-element name="oam-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.att.com.v9.OamNetwork" />
- </java-attributes>
- </java-type>
-
- <java-type name="OamNetwork">
- <xml-root-element name="oam-network" />
- <java-attributes>
- <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="cvlan-id" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="OAM network, to be deprecated shortly. Do not use for new purposes. " />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="oam-networks" />
- </xml-properties>
- </java-type>
-
- <java-type name="AvailabilityZones">
- <xml-properties>
- <xml-property name="description" value="Collection of availability zones" />
- </xml-properties>
- <xml-root-element name="availability-zones" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.att.com.v9.AvailabilityZone" />
- </java-attributes>
- </java-type>
-
- <java-type name="AvailabilityZone">
- <xml-root-element name="availability-zone" />
- <java-attributes>
- <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Name of the availability zone. Unique across a cloud region" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of hypervisor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="State that indicates whether the availability zone should be used, etc. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
- <xml-property name="indexedProps" value="availability-zone-name" />
- <xml-property name="dependentOn" value="cloud-region" />
- <xml-property name="container" value="availability-zones" />
- </xml-properties>
- </java-type>
-
- <java-type name="VirtualDataCenters">
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- </xml-properties>
- <xml-root-element name="virtual-data-centers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.att.com.v9.VirtualDataCenter" />
- </java-attributes>
- </java-type>
-
- <java-type name="VirtualDataCenter">
- <xml-root-element name="virtual-data-center" />
- <java-attributes>
- <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the vdc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the virtual data center" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
- <xml-property name="nameProps" value="vdc-name" />
- <xml-property name="indexedProps" value="vdc-name,vdc-id" />
- <xml-property name="container" value="virtual-data-centers" />
- <xml-property name="namespace" value="cloud-infrastructure" />
- </xml-properties>
- </java-type>
-
- <java-type name="LicenseManagement">
- <xml-root-element name="license-management" />
- <java-attributes>
- <xml-element java-attribute="licenseKeyResources" name="license-key-resources" type="inventory.aai.att.com.v9.LicenseKeyResources" />
- </java-attributes>
- </java-type>
-
- <java-type name="LicenseKeyResources">
- <xml-root-element name="license-key-resources" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="licenseKeyResource" name="license-key-resource" type="inventory.aai.att.com.v9.LicenseKeyResource" />
- </java-attributes>
- </java-type>
-
- <java-type name="LicenseKeyResource">
- <xml-root-element name="license-key-resource" />
- <java-attributes>
- <xml-element java-attribute="attUuid" name="att-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="assignmentType" name="assignment-type" type="java.lang.String" />
- <xml-element java-attribute="assignmentStatus" name="assignment-status" type="java.lang.String" />
- <xml-element java-attribute="assignmentGroupUuid" name="assignment-group-uuid" required="true" type="java.lang.String" />
- <xml-element java-attribute="assignmentDate" name="assignment-date" type="java.lang.String" />
- <xml-element java-attribute="name" name="name" type="java.lang.String" />
- <xml-element java-attribute="modelUuid" name="model-uuid" type="java.lang.String" />
- <xml-element java-attribute="modelVersion" name="model-version" type="java.lang.String" />
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String" />
- <xml-element java-attribute="licenseKeyFileUrl" name="license-key-file-url" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="supplierReleaseList" name="supplier-release-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="name" />
- <xml-property name="indexedProps" value="assignment-group-uuid,att-uuid,name" />
- <xml-property name="uniqueProps" value="att-uuid" />
- <xml-property name="container" value="license-key-resources" />
- <xml-property name="namespace" value="license-management" />
- </xml-properties>
- </java-type>
-
- <java-type name="Business">
- <xml-properties>
- <xml-property name="description" value="Namespace for business related constructs" />
- </xml-properties>
- <xml-root-element name="business" />
- <java-attributes>
- <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.att.com.v9.Connectors" />
- <xml-element java-attribute="customers" name="customers" type="inventory.aai.att.com.v9.Customers" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connectors">
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- </xml-properties>
- <xml-root-element name="connectors" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.att.com.v9.Connector" />
- </java-attributes>
- </java-type>
-
- <java-type name="Connector">
- <xml-root-element name="connector" />
- <java-attributes>
- <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of resource instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.att.com.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
- <xml-property name="indexedProps" value="resource-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="container" value="connectors" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="Customers">
- <xml-properties>
- <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
- </xml-properties>
- <xml-root-element name="customers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.att.com.v9.Customer" />
- </java-attributes>
- </java-type>
-
- <java-type name="Customer">
- <xml-root-element name="customer" />
- <java-attributes>
- <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
- <xml-property name="defaultValue" value="CUST" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.att.com.v9.ServiceSubscriptions" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
- <xml-property name="nameProps" value="subscriber-name" />
- <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
- <xml-property name="searchable" value="global-customer-id,subscriber-name" />
- <xml-property name="uniqueProps" value="global-customer-id,subscriber-name" />
- <xml-property name="alternateKeys1" value="subscriber-name" />
- <xml-property name="container" value="customers" />
- <xml-property name="namespace" value="business" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceSubscriptions">
- <xml-properties>
- <xml-property name="description" value="Collection of objects that group service instances." />
- </xml-properties>
- <xml-root-element name="service-subscriptions" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.att.com.v9.ServiceSubscription" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceSubscription">
- <xml-root-element name="service-subscription" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This property will be deleted from A&amp;AI in the near future. Only stop gap solution." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstances" name="service-instances" type="inventory.aai.att.com.v9.ServiceInstances">
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Object that group service instances." />
- <xml-property name="indexedProps" value="service-type" />
- <xml-property name="dependentOn" value="customer" />
- <xml-property name="container" value="service-subscriptions" />
- <xml-property name="crossEntityReference" value="service-instance,service-type" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceInstances">
- <xml-properties>
- <xml-property name="description" value="Collection of service instances" />
- </xml-properties>
- <xml-root-element name="service-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.att.com.v9.ServiceInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceInstance">
- <xml-root-element name="service-instance" />
- <java-attributes>
- <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Uniquely identifies this instance of a service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="This field will store a name assigned to the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL customers will use to access the vHN Portal." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Operational status of the service-instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.att.com.v9.Metadata" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Instance of a service" />
- <xml-property name="indexedProps" value="service-instance-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id" />
- <xml-property name="nameProps" value="service-instance-name" />
- <xml-property name="searchable" value="service-instance-id,service-instance-name" />
- <xml-property name="uniqueProps" value="service-instance-id" />
- <xml-property name="dependentOn" value="service-subscription" />
- <xml-property name="container" value="service-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceDesignAndCreation">
- <xml-properties>
- <xml-property name="description" value="Namespace for objects managed by ASDC" />
- </xml-properties>
- <xml-root-element name="service-design-and-creation" />
- <java-attributes>
- <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.att.com.v9.VnfImages" />
- <xml-element java-attribute="services" name="services" type="inventory.aai.att.com.v9.Services" />
- <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.att.com.v9.ServiceCapabilities" />
- <xml-element java-attribute="models" name="models" type="inventory.aai.att.com.v9.Models" />
- <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.att.com.v9.NamedQueries" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImages">
- <xml-properties>
- <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- </xml-properties>
- <xml-root-element name="vnf-images" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.att.com.v9.VnfImage" />
- </java-attributes>
- </java-type>
-
- <java-type name="VnfImage">
- <xml-root-element name="vnf-image" />
- <java-attributes>
- <xml-element java-attribute="attUuid" name="att-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of this asset" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The application that the image instantiates." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The vendor of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The version of the application." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers. This is a kludge." />
- <xml-property name="indexedProps" value="application,att-uuid,application-vendor,application-version" />
- <xml-property name="uniqueProps" value="att-uuid" />
- <xml-property name="container" value="vnf-images" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Services">
- <xml-properties>
- <xml-property name="description" value="Collection of service model definitions. Likely to be deprecated in favor of models from ASDC." />
- </xml-properties>
- <xml-root-element name="services" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.att.com.v9.Service" />
- </java-attributes>
- </java-type>
-
- <java-type name="Service">
- <xml-root-element name="service" />
- <java-attributes>
- <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description of the service" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceSelflink" name="service-selflink" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="URL to endpoint where AAI can get more details" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceVersion" name="service-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="service version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Stand-in for service model definitions. Likely to be deprecated in favor of models from ASDC." />
- <xml-property name="indexedProps" value="service-description,service-id" />
- <xml-property name="container" value="services" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="ServiceCapabilities">
- <xml-properties>
- <xml-property name="description" value="Collection of service capabilities." />
- </xml-properties>
- <xml-root-element name="service-capabilities" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.att.com.v9.ServiceCapability" />
- </java-attributes>
- </java-type>
-
- <java-type name="ServiceCapability">
- <xml-root-element name="service-capability" />
- <java-attributes>
- <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models. No new use should be made of this." />
- <xml-property name="indexedProps" value="service-type,vnf-type" />
- <xml-property name="container" value="service-capabilities" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- </java-type>
-
- <java-type name="Network">
- <xml-properties>
- <xml-property name="description" value="Namespace for network inventory resources." />
- </xml-properties>
- <xml-root-element name="network" />
- <java-attributes>
- <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.att.com.v9.LogicalLinks" />
- <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.att.com.v9.SitePairSets" />
- <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.att.com.v9.VpnBindings" />
- <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.att.com.v9.VplsPes" />
- <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.att.com.v9.MulticastConfigurations" />
- <xml-element java-attribute="vces" name="vces" type="inventory.aai.att.com.v9.Vces" />
- <xml-element java-attribute="vpes" name="vpes" type="inventory.aai.att.com.v9.Vpes" />
- <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.att.com.v9.Vnfcs" />
- <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.att.com.v9.L3Networks" />
- <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.att.com.v9.NetworkPolicies" />
- <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.att.com.v9.GenericVnfs" />
- <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.att.com.v9.LagLinks" />
- <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.att.com.v9.Newvces" />
- <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.att.com.v9.Pnfs" />
- <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.att.com.v9.PhysicalLinks" />
- <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.att.com.v9.IpsecConfigurations" />
- <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.att.com.v9.RouteTableReferences" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of logical connections" />
- </xml-properties>
- <xml-root-element name="logical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.att.com.v9.LogicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LogicalLink">
- <xml-root-element name="logical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of logical link, e.g., evc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4, v6, or ds for dual stack (should be att-ip-version)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="For example, static or BGP" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of operational status of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indication of the network use of the logical link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
- <xml-property name="indexedProps" value="link-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,link-id" />
- <xml-property name="uniqueProps" value="link-id" />
- <xml-property name="container" value="logical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairSets">
- <xml-properties>
- <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
- </xml-properties>
- <xml-root-element name="site-pair-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.att.com.v9.SitePairSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePairSet">
- <xml-root-element name="site-pair-set" />
- <java-attributes>
- <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of site pair set." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routingInstances" name="routing-instances" type="inventory.aai.att.com.v9.RoutingInstances" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
- <xml-property name="indexedProps" value="site-pair-set-id" />
- <xml-property name="uniqueProps" value="site-pair-set-id" />
- <xml-property name="container" value="site-pair-sets" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="RoutingInstances">
- <xml-properties>
- <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
- </xml-properties>
- <xml-root-element name="routing-instances" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.att.com.v9.RoutingInstance" />
- </java-attributes>
- </java-type>
-
- <java-type name="RoutingInstance">
- <xml-root-element name="routing-instance" />
- <java-attributes>
- <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of routing instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rpm owner" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sitePairs" name="site-pairs" type="inventory.aai.att.com.v9.SitePairs" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="routing-instance-id" />
- <xml-property name="uniqueProps" value="routing-instance-id" />
- <xml-property name="dependentOn" value="site-pair-set" />
- <xml-property name="container" value="routing-instances" />
- </xml-properties>
- </java-type>
-
- <java-type name="SitePairs">
- <xml-properties>
- <xml-property name="description" value="probe within a set" />
- </xml-properties>
- <xml-root-element name="site-pairs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.att.com.v9.SitePair" />
- </java-attributes>
- </java-type>
-
- <java-type name="SitePair">
- <xml-root-element name="site-pair" />
- <java-attributes>
- <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Prefix address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version, v4, v6" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The type of destinatination equipment. Could be Router, UCPE, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="classesOfService" name="classes-of-service" type="inventory.aai.att.com.v9.ClassesOfService" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="site-pair-id" />
- <xml-property name="uniqueProps" value="site-pair-id" />
- <xml-property name="dependentOn" value="routing-instance" />
- <xml-property name="container" value="site-pairs" />
- </xml-properties>
- </java-type>
-
- <java-type name="ClassesOfService">
- <xml-properties>
- <xml-property name="description" value="class-of-service of probe" />
- </xml-properties>
- <xml-root-element name="classes-of-service" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.att.com.v9.ClassOfService" />
- </java-attributes>
- </java-type>
-
- <java-type name="ClassOfService">
- <xml-root-element name="class-of-service" />
- <java-attributes>
- <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type of probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="cos" />
- <xml-property name="dependentOn" value="site-pair" />
- <xml-property name="container" value="classes-of-service" />
- </xml-properties>
- </java-type>
-
- <java-type name="VpnBindings">
- <xml-root-element name="vpn-bindings" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.att.com.v9.VpnBinding" />
- </java-attributes>
- </java-type>
-
- <java-type name="VpnBinding">
- <xml-root-element name="vpn-binding" />
- <java-attributes>
- <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="VPN ID, globally unique within A&amp;AI" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="VPN Name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Number used to identify a VPN, globally unique in the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList">
- <xml-properties>
- <xml-property name="description" value="l3-networks relate to vpn-bindings" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPN binding" />
- <xml-property name="nameProps" value="vpn-name" />
- <xml-property name="indexedProps" value="vpn-name,vpn-id,global-route-target" />
- <xml-property name="searchable" value="vpn-id,vpn-name" />
- <xml-property name="uniqueProps" value="vpn-id" />
- <xml-property name="container" value="vpn-bindings" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="VplsPes">
- <xml-properties>
- <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
- </xml-properties>
- <xml-root-element name="vpls-pes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.att.com.v9.VplsPe" />
- </java-attributes>
- </java-type>
-
- <java-type name="VplsPe">
- <xml-root-element name="vpls-pe" />
- <java-attributes>
- <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.att.com.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="VPLS Provider Edge routers." />
- <xml-property name="indexedProps" value="prov-status,equipment-name" />
- <xml-property name="container" value="vpls-pes" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="MulticastConfigurations">
- <xml-properties>
- <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
- </xml-properties>
- <xml-root-element name="multicast-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.att.com.v9.MulticastConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="MulticastConfiguration">
- <xml-root-element name="multicast-configuration" />
- <java-attributes>
- <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of multicast configuration." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="protocol of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="rp type of multicast configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="multicast-configuration-id" />
- <xml-property name="uniqueProps" value="multicast-configuration-id" />
- <xml-property name="container" value="multicast-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vces">
- <xml-properties>
- <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma. This object is deprecated." />
- </xml-properties>
- <xml-root-element name="vces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.att.com.v9.Vce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vce">
- <xml-root-element name="vce" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC. Expect this to change as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network role being played by this VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router. Implied length of /64." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Entitlement resource uuid" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.att.com.v9.PortGroups" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma. This object is deprecated." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
- <xml-property name="searchable" value="vpe-id,vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vces" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="PortGroups">
- <xml-root-element name="port-groups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.att.com.v9.PortGroup" />
- </java-attributes>
- </java-type>
-
- <java-type name="PortGroup">
- <xml-root-element name="port-group" />
- <java-attributes>
- <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of the interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network name of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupId" name="port-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique ID for port group in vmware" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Likely to duplicate value of neutron network name" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.att.com.v9.CvlanTags" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
- <xml-property name="nameProps" value="port-group-name" />
- <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
- <xml-property name="dependentOn" value="vce" />
- <xml-property name="container" value="port-groups" />
- </xml-properties>
- </java-type>
-
- <java-type name="CvlanTags">
- <xml-root-element name="cvlan-tags" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.att.com.v9.CvlanTagEntry" />
- </java-attributes>
- </java-type>
-
- <java-type name="CvlanTagEntry">
- <xml-root-element name="cvlan-tag-entry" />
- <java-attributes>
- <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="dependentOn" value="port-group" />
- <xml-property name="indexedProps" value="cvlan-tag" />
- <xml-property name="container" value="cvlan-tags" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vpes">
- <xml-properties>
- <xml-property name="description" value="Virtual provider edge router. In 1504, A&amp;AI will populate this object through an M&amp;P and tool provided to operations." />
- </xml-properties>
- <xml-root-element name="vpes" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vpe" name="vpe" type="inventory.aai.att.com.v9.Vpe" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vpe">
- <xml-root-element name="vpe" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
- <xml-properties>
- <xml-property name="description" value="Prefix length for oam-address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Gateway address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="v4Loopback0IpAddress" name="v4-loopback0-ip-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="Temporary location for stag to get to VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VPE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the vpe operation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether vpe access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Relationship-list must include related to info for complex." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,regional-resource-zone,prov-status,service-id" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="vpes" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- </xml-properties>
- </java-type>
-
- <java-type name="Vnfcs">
- <xml-properties>
- <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
- </xml-properties>
- <xml-root-element name="vnfcs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.att.com.v9.Vnfc" />
- </java-attributes>
- </java-type>
-
- <java-type name="Vnfc">
- <xml-root-element name="vnfc" />
- <java-attributes>
- <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vnfc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcFunctionCode" name="vnfc-function-code" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="function code" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfcType" name="vnfc-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="type" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="prov status of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Oam V4 vip address of this vnfc" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group notation of VNFC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation" />
- <xml-property name="searchable" value="vnfc-name" />
- <xml-property name="container" value="vnfcs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="L3Networks">
- <xml-root-element name="l3-networks" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.att.com.v9.L3Network" />
- </java-attributes>
- </java-type>
-
- <java-type name="L3Network">
- <xml-root-element name="l3-network" />
- <java-attributes>
- <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Network ID, should be uuid. Unique across A&amp;AI." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the network, governed by some naming convention.." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the network - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Role the network plans - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network technology - who defines these values?" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron network id of this Interface" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Set to true if bound to VPN" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="network role instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the network" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the physical network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.att.com.v9.Subnets" />
- <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.att.com.v9.CtagAssignments" />
- <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.att.com.v9.SegmentationAssignments" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" >
- <xml-properties>
- <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Generic network definition" />
- <xml-property name="nameProps" value="network-name" />
- <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-network-fqdn" />
- <xml-property name="searchable" value="network-id,network-name" />
- <xml-property name="uniqueProps" value="network-id" />
- <xml-property name="container" value="l3-networks" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="NetworkPolicies">
- <xml-root-element name="network-policies" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.att.com.v9.NetworkPolicy" />
- </java-attributes>
- </java-type>
- <java-type name="NetworkPolicy">
- <xml-root-element name="network-policy" />
- <java-attributes>
- <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID representing unique key to this instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contrail FQDN for the policy" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID for the openStack Heat instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="nameProps" value="network-policy-fqdn" />
- <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
- <xml-property name="uniqueProps" value="network-policy-id" />
- <xml-property name="container" value="network-policies" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
- <java-type name="CtagAssignments">
- <xml-root-element name="ctag-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.att.com.v9.CtagAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="CtagAssignment">
- <xml-root-element name="ctag-assignment" />
- <java-attributes>
- <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="id." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="vlan-id-inner" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="ctag-assignments" />
- </xml-properties>
- </java-type>
-
- <java-type name="Subnets">
- <xml-root-element name="subnets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.att.com.v9.Subnet" />
- </java-attributes>
- </java-type>
-
- <java-type name="Subnet">
- <xml-root-element name="subnet" />
- <java-attributes>
- <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Subnet ID, should be UUID." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name associated with the subnet." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Neutron id of this subnet" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="gateway ip address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="network start address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="cidr mask" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ip version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="dhcp enabled" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the start address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the last address reserved for use by dhcp" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="indexedProps" value="subnet-id,subnet-name" />
- <xml-property name="nameProps" value="subnet-name" />
- <xml-property name="uniqueProps" value="subnet-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="subnets" />
- </xml-properties>
- </java-type>
-
- <java-type name="GenericVnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of VNFs" />
- </xml-properties>
- <xml-root-element name="generic-vnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.att.com.v9.GenericVnf" />
- </java-attributes>
- </java-type>
-
- <java-type name="GenericVnf">
- <xml-root-element name="generic-vnf" />
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Unique identifier of service from ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- <xml-property name="suggestionVerbs" value="is,in,at,with,on,off,changed,changing"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
- <xml-property name="suggestibleOnSearch" value="true"/>
- <xml-property name="suggestionVerbs" value="is,in,at,with,on,off,changed,changing"/>
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by ATT or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 Loopback address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 management address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
- <xml-properties>
- <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="summaryStatus" name="summary-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="details regarding the generic-vnf operation" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the specific entitlement resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the license assignment group" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="UUID of the actual license resource" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="as-number of the VNF" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="represents sub zone of the rr plane" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.att.com.v9.VfModules" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="General purpose VNF" />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version" />
- <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="container" value="generic-vnfs" />
- <xml-property name="namespace" value="network" />
- <xml-property name="extends" value="vnf" />
- <xml-property name="containsSuggestibleProps" value="true" />
- <xml-property name="suggestionAliases" value="VNFs" />
- </xml-properties>
- </java-type>
-
- <java-type name="VfModules">
- <xml-properties>
- <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
- </xml-properties>
- <xml-root-element name="vf-modules" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.att.com.v9.VfModule" />
- </java-attributes>
- </java-type>
-
- <java-type name="VfModule">
- <xml-root-element name="vf-module" />
- <java-attributes>
- <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique ID of vf-module." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of vf-module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelId" name="persona-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model id for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC model version for this resource or service model." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="the Contrail unique ID for a service-instance" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="a deployment unit of VNFCs" />
- <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,persona-model-id,persona-model-version,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
- <xml-property name="searchable" value="vf-module-id, vf-module-name" />
- <xml-property name="dependentOn" value="generic-vnf" />
- <xml-property name="container" value="vf-modules" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="LagLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of link aggregation connections" />
- </xml-properties>
- <xml-root-element name="lag-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.att.com.v9.LagLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="LagLink">
- <xml-root-element name="lag-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="LAG links can connect lag-interfaces" />
- <xml-property name="indexedProps" value="link-name" />
- <xml-property name="container" value="lag-links" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Newvces">
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- </xml-properties>
- <xml-root-element name="newvces" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.att.com.v9.Newvce" />
- </java-attributes>
- </java-type>
-
- <java-type name="Newvce">
- <xml-root-element name="newvce" />
- <java-attributes>
- <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Alternate name of VNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource. This field has been overloaded and clients should expect changes to occur in the future to this field as ASDC matures." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="operationalState" name="operational-state" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicator for whether the resource is considered operational" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="License key" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Address tail-f uses to configure vpe, also used for troubleshooting and is IP used for traps generated by VPE (v4-loopback0-ip-address)." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Client should send valid enumerated value, e.g., VPE." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 Loopback0 address" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.att.com.v9.LInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf. This object will be retired with vce." />
- <xml-property name="nameProps" value="vnf-name" />
- <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
- <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
- <xml-property name="uniqueProps" value="vnf-id2" />
- <xml-property name="container" value="newvces" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="Pnfs">
- <xml-properties>
- <xml-property name="description" value="Collection of Physical Network Functions." />
- </xml-properties>
- <xml-root-element name="pnfs" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.att.com.v9.Pnf" />
- </java-attributes>
- </java-type>
-
- <java-type name="Pnf">
- <xml-root-element name="pnf" />
- <java-attributes>
- <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="unique name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="name of Physical Network Function." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="source of name2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="id of pnf" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment type. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment vendor. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Equipment model. Source of truth should define valid values." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="identifier of managed by ATT or customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="orchestration-status is the status of orchestration on the PNF." />
- </xml-properties>
- </xml-element>
- <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
- <xml-properties>
- <xml-property name="defaultValue" value="false"/>
- <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.att.com.v9.PInterfaces" />
- <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.att.com.v9.LagInterfaces" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE." />
- <xml-property name="indexedProps" value="pnf-name,orchestration-status" />
- <xml-property name="searchable" value="pnf-name" />
- <xml-property name="uniqueProps" value="pnf-name" />
- <xml-property name="container" value="pnfs" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="PhysicalLinks">
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- </xml-properties>
- <xml-root-element name="physical-links" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.att.com.v9.PhysicalLink" />
- </java-attributes>
- </java-type>
-
- <java-type name="PhysicalLink">
- <xml-root-element name="physical-link" />
- <java-attributes>
- <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the numeric part of the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Captures the units corresponding to the speed" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Circuit it" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="To provide information on who manages this circuit. A&amp;AI or 3rd party transport provider" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the service Provider on this link." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
- <xml-property name="indexedProps" value="circuit-id,link-name" />
- <xml-property name="alternateKeys1" value="circuit-id" />
- <xml-property name="container" value="physical-links" />
- <xml-property name="namespace" value="network" />
- <xml-property name="searchable" value="link-name,circuit-id" />
- </xml-properties>
- </java-type>
-
- <java-type name="VigServers">
- <xml-root-element name="vig-servers" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.att.com.v9.VigServer" />
- </java-attributes>
- </java-type>
-
- <java-type name="VigServer">
- <xml-root-element name="vig-server" />
- <java-attributes>
- <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v4 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="v6 IP of the vig server" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
- <xml-property name="indexedProps" value="vig-address-type" />
- <xml-property name="dependentOn" value="ipsec-configuration" />
- <xml-property name="container" value="vig-servers" />
- </xml-properties>
- </java-type>
-
- <java-type name="IpsecConfigurations">
- <xml-root-element name="ipsec-configurations" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.att.com.v9.IpsecConfiguration" />
- </java-attributes>
- </java-type>
-
- <java-type name="IpsecConfiguration">
- <xml-root-element name="ipsec-configuration" />
- <java-attributes>
- <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="UUID of this configuration" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="ATT can offer a shared DMZ or a DMZ specific to a customer" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Network address of shared DMZ" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="can be 1 or 2" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="pre-shared key for the above group name " />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Lifetime for IKEv1 SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="md5, sha1, sha256, sha384" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Life time for IPSec SA" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="enable PFS or not" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="user ID for xAuth, sm-user,ucpeHostName,nmteHostName" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="The time between DPD probe" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.att.com.v9.VigServers" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
- <xml-property name="indexedProps" value="ipsec-configuration-id" />
- <xml-property name="uniqueProps" value="ipsec-configuration-id" />
- <xml-property name="container" value="ipsec-configurations" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
-
- <java-type name="NotificationEvent">
- <xml-root-element name="notification-event" />
- <java-attributes>
- <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
- <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.att.com.v9.NotificationEventHeader" />
- <xml-any-element java-attribute="entity" />
- </java-attributes>
- </java-type>
- <java-type name="NotificationEventHeader">
- <xml-root-element name="notification-event-header" />
- <java-attributes>
- <xml-element java-attribute="id" name="id" type="java.lang.String" />
- <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
- <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
- <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
- <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
- <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
- <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
- <xml-element java-attribute="version" name="version" type="java.lang.String" />
- <xml-element java-attribute="action" name="action" type="java.lang.String" />
- <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
- <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
- <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
- <xml-element java-attribute="status" name="status" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="AaiInternal">
- <xml-root-element name="aai-internal" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.att.com.v9.ReservedPropNames" />
- <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.att.com.v9.EdgePropNames" />
- </java-attributes>
- </java-type>
- <java-type name="ReservedPropNames">
- <xml-properties>
- <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
- <xml-property name="uniqueProps" value="aai-unique-key" />
- <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type" />
- </xml-properties>
- <xml-root-element name="reserved-prop-names" />
- <java-attributes>
- <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
- <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
- <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
- <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
- <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
- <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
- </java-attributes>
- </java-type>
- <java-type name="EdgePropNames">
- <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
- <xml-properties>
- <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
- <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
- </xml-properties>
- <xml-root-element name="edge-prop-names" />
- <java-attributes>
- <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
- <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
- <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
- <xml-element java-attribute="isParent" name="isParent" type="java.lang.Boolean" />
- <xml-element java-attribute="usesResource" name="usesResource" type="java.lang.Boolean" />
- <xml-element java-attribute="hasDelTarget" name="hasDelTarget" type="java.lang.Boolean" />
- <xml-element java-attribute="SVC-INFRA" name="SVC-INFRA" type="java.lang.String" />
- <xml-element java-attribute="SVC-INFRA-REV" name="SVC-INFRA-REV" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="Models">
- <xml-properties>
- <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
- </xml-properties>
- <xml-root-element name="models" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.att.com.v9.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="Model">
- <xml-properties>
- <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models" />
- <xml-property name="nameProps" value="model-name,model-type" />
- <xml-property name="indexedProps" value="model-name-version-id,model-type,model-name,model-id,model-version" />
- <xml-property name="alternateKeys1" value="model-id,model-version" />
- <xml-property name="uniqueProps" value="model-name-version-id" />
- <xml-property name="container" value="models" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="model" />
- <java-attributes>
- <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Name of the model, which can change from version to version." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Version" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelDescription" name="model-description" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Description" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.att.com.v9.ModelElements" />
- <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.att.com.v9.Metadata" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElements">
- <xml-root-element name="model-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.att.com.v9.ModelElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelElement">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
- <xml-property name="uniqueProps" value="model-element-uuid" />
- <xml-property name="indexedProps" value="model-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-elements" />
- </xml-properties>
- <xml-root-element name="model-element" />
- <java-attributes>
- <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="How many of this type of element are required/allowed" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-point" type="java.lang.String">
- <xml-element-wrapper name="linkage-points" />
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.att.com.v9.ModelElements">
- <xml-properties>
- <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.att.com.v9.ModelConstraints">
- <xml-properties>
- <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraints">
- <xml-root-element name="model-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.att.com.v9.ModelConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelConstraint">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="model-constraint-uuid" />
- <xml-property name="indexedProps" value="model-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="model-constraints" />
- </xml-properties>
- <xml-root-element name="model-constraint" />
- <java-attributes>
- <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
- <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.att.com.v9.ConstrainedElementSets" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSets">
- <xml-root-element name="constrained-element-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.att.com.v9.ConstrainedElementSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ConstrainedElementSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
- <xml-property name="indexedProps" value="constrained-element-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="constrained-element-sets" />
- </xml-properties>
- <xml-root-element name="constrained-element-set" />
- <java-attributes>
- <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.att.com.v9.ElementChoiceSets" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSets">
- <xml-root-element name="element-choice-sets" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.att.com.v9.ElementChoiceSet" />
- </java-attributes>
- </java-type>
-
- <java-type name="ElementChoiceSet">
- <xml-properties>
- <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
- <xml-property name="uniqueProps" value="element-choice-set-uuid" />
- <xml-property name="indexedProps" value="element-choice-set-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="element-choice-sets" />
- </xml-properties>
- <xml-root-element name="element-choice-set" />
- <java-attributes>
- <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.att.com.v9.ModelElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueries">
- <xml-root-element name="named-queries" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.att.com.v9.NamedQuery" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQuery">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="nameProps" value="named-query-name" />
- <xml-property name="uniqueProps" value="named-query-uuid" />
- <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
- <xml-property name="container" value="named-queries" />
- <xml-property name="namespace" value="service-design-and-creation" />
- </xml-properties>
- <xml-root-element name="named-query" />
- <java-attributes>
- <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
- <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String">
- <xml-element-wrapper name="required-input-params" />
- </xml-element>
- <xml-element java-attribute="description" name="description" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.att.com.v9.NamedQueryElements" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElements">
- <xml-root-element name="named-query-elements" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.att.com.v9.NamedQueryElement" />
- </java-attributes>
- </java-type>
-
- <java-type name="NamedQueryElement">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="named-query-element-uuid" />
- <xml-property name="indexedProps" value="named-query-element-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="named-query-elements" />
- </xml-properties>
- <xml-root-element name="named-query-element" />
- <java-attributes>
- <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
- <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
- <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.att.com.v9.NamedQueryElements" />
- <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.att.com.v9.RelatedLookups" />
- <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.att.com.v9.PropertyConstraints" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookups">
- <xml-root-element name="related-lookups" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.att.com.v9.RelatedLookup" />
- </java-attributes>
- </java-type>
-
- <java-type name="RelatedLookup">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="related-lookup-uuid" />
- <xml-property name="indexedProps" value="related-lookup-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="related-lookups" />
- </xml-properties>
- <xml-root-element name="related-lookup" />
- <java-attributes>
- <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraints">
- <xml-root-element name="property-constraints" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.att.com.v9.PropertyConstraint" />
- </java-attributes>
- </java-type>
-
- <java-type name="PropertyConstraint">
- <xml-properties>
- <xml-property name="description" value="TBD" />
- <xml-property name="uniqueProps" value="property-constraint-uuid" />
- <xml-property name="indexedProps" value="property-constraint-uuid" />
- <xml-property name="allowDirectRead" value="true" />
- <xml-property name="allowDirectWrite" value="false" />
- <xml-property name="container" value="property-constraints" />
- </xml-properties>
- <xml-root-element name="property-constraint" />
- <java-attributes>
- <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="autoGenerateUuid" value="true" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
- <xml-element java-attribute="property-name" name="property-name" required="true" type="java.lang.String" />
- <xml-element java-attribute="property-value" name="property-value" required="true" type="java.lang.String" />
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ModelAndNamedQuerySearch">
- <xml-properties>
- <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="model-and-named-query-search" />
- <java-attributes>
- <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.att.com.v9.QueryParameters" />
- <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.att.com.v9.InstanceFilters" />
- <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="QueryParameters">
- <xml-properties>
- <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="query-parameters" />
- <java-attributes>
- <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.att.com.v9.NamedQuery" />
- <xml-element java-attribute="model" name="model" type="inventory.aai.att.com.v9.Model" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilters">
- <xml-properties>
- <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
- </xml-properties>
- <xml-root-element name="instance-filters" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.att.com.v9.InstanceFilter" />
- </java-attributes>
- </java-type>
-
- <java-type name="InstanceFilter">
- <xml-properties>
- <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
- <xml-property name="container" value="instance-filters" />
- </xml-properties>
- <xml-root-element name="instance-filter" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
- </java-attributes>
- </java-type>
-
- <java-type name="Properties">
- <xml-properties>
- <xml-property name="description" value="Property holder for query properties or instance properties" />
- </xml-properties>
- <xml-root-element name="properties" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
- </java-attributes>
- </java-type>
-
- <java-type name="ResponseList">
- <xml-properties>
- <xml-property name="description" value="Response container for the results of a named-query or model query" />
- </xml-properties>
- <xml-root-element name="response-list" />
- <java-attributes>
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.att.com.v9.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItems">
- <xml-properties>
- <xml-property name="description" value="Container for inventory items in response list" />
- <xml-property name="container" value="response-list" />
- </xml-properties>
- <xml-root-element name="inventory-response-items" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.att.com.v9.InventoryResponseItem" />
- </java-attributes>
- </java-type>
-
- <java-type name="InventoryResponseItem">
- <xml-properties>
- <xml-property name="description" value="Inventory item for response list" />
- <xml-property name="container" value="inventory-response-items" />
- </xml-properties>
- <xml-root-element name="inventory-response-item" />
- <java-attributes>
- <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
- <xml-any-element java-attribute="item" />
- <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.att.com.v9.ExtraProperties" />
- <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.att.com.v9.InventoryResponseItems" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperties">
- <xml-properties>
- <xml-property name="description" value="Extra properties for inventory item for response list" />
- </xml-properties>
- <xml-root-element name="extra-properties" />
- <java-attributes>
- <xml-any-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.att.com.v9.ExtraProperty" />
- </java-attributes>
- </java-type>
-
- <java-type name="ExtraProperty">
- <xml-root-element name="extra-property" />
- <java-attributes>
- <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
- <xml-any-element java-attribute="propertyValue" lax="true" name="property-value" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReferences">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack route table references" />
- </xml-properties>
- <xml-root-element name="route-table-references" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.att.com.v9.RouteTableReference" />
- </java-attributes>
- </java-type>
-
- <java-type name="RouteTableReference">
- <xml-root-element name="route-table-reference" />
- <java-attributes>
- <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="FQDN entry in the route table." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
-
- <xml-properties>
- <xml-property name="description" value="Openstack route table reference." />
- <xml-property name="nameProps" value="route-table-reference-fqdn" />
- <xml-property name="uniqueProps" value="route-table-reference-id" />
- <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
- <xml-property name="container" value="route-table-references" />
- <xml-property name="namespace" value="network" />
- </xml-properties>
- </java-type>
-
- <java-type name="SegmentationAssignments">
- <xml-properties>
- <xml-property name="description" value="Collection of openstack segmentation assignments" />
- </xml-properties>
- <xml-root-element name="segmentation-assignments" />
- <java-attributes>
- <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.att.com.v9.SegmentationAssignment" />
- </java-attributes>
- </java-type>
-
- <java-type name="SegmentationAssignment">
- <xml-root-element name="segmentation-assignment" />
- <java-attributes>
- <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
- <xml-properties>
- <xml-property name="description" value="Concurrency value" />
- </xml-properties>
- </xml-element>
- <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.att.com.v9.RelationshipList" />
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Openstack segmentation assignment." />
- <xml-property name="indexedProps" value="segmentation-id" />
- <xml-property name="dependentOn" value="l3-network" />
- <xml-property name="container" value="segmentation-assignments" />
- </xml-properties>
- </java-type>
- <java-type name="Vnf">
- <xml-root-element name="vnf"/>
- <java-attributes>
- <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
- <xml-properties>
- <xml-property name="description" value="Unique id of VNF. This is unique across the graph." />
- </xml-properties>
- </xml-element>
- </java-attributes>
- <xml-properties>
- <xml-property name="description" value="Abstract vnf class" />
- <xml-property name="indexedProps" value="vnf-id" />
- <xml-property name="uniqueProps" value="vnf-id" />
- <xml-property name="inheritors" value="vce,vpe,generic-vnf" />
- <xml-property name="abstract" value="true" />
- </xml-properties>
- </java-type>
- </java-types>
-</xml-bindings> \ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/BOOT-INF/classes/portal.properties
index 04a19555e2..35b714a5e9 100644
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal.properties
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/BOOT-INF/classes/portal.properties
@@ -1,16 +1,16 @@
-######################################################################################
-############################## eCOMP Portal properties ###############################
-######################################################################################
+################################################################################
+############################## Portal properties ###############################
+################################################################################
# Java class that implements the ECOMP role and user mgt API
-portal.api.impl.class = org.openecomp.sparky.security.portal.PortalRestAPIServiceImpl
+portal.api.impl.class = org.onap.aai.sparky.security.portal.PortalRestAPIServiceImpl
# Instance of ECOMP Portal where the app has been on-boarded
# use insecure http for dev purposes to avoid self-signed certificate
-ecomp_rest_url = http://portalapps.{{.Release.Namespace}}:8989/ONAPPORTAL/auxapi
+ecomp_rest_url = http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/auxapi
# Standard global logon page
-ecomp_redirect_url = http://portalapps.{{.Release.Namespace}}:8989/ONAPPORTAL/login.htm
+ecomp_redirect_url = http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/login.htm
# Name of cookie to extract on login request
csp_cookie_name = EPService
@@ -20,4 +20,4 @@ csp_gate_keeper_prod_key = PROD
# Toggles use of UEB
ueb_listeners_enable = false
# IDs application withing UEB flow
-ueb_app_key = qFKles9N8gDTV0Zc
+ueb_app_key = qFKles9N8gDTV0Zc
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal-authentication.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal-authentication.properties
index 0873fc1c61..a0e3308435 100644
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal-authentication.properties
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/portal-authentication.properties
@@ -1,14 +1,14 @@
-##########################################################################################
-############################## eCOMP Portal Auth Properties ##############################
-##########################################################################################
-
-############################## Auth ##############################
-username=aaiui
-password=1t2v1vfv1unz1vgz1t3b
-
-############################## ##############################
-#
-# ONAP Cookie Processing - During initial development, this flag, if true, will
-# prevent the portal interface's login processing from searching for a user
-# specific cookie, and will instead allow passage if a valid session cookie is discovered.
-onap_enabled=true \ No newline at end of file
+#####################################################################################
+############################## Portal Auth Properties ##############################
+#####################################################################################
+
+############################## Auth ##############################
+username={{.Values.config.portalUsername}}
+password={{.Values.config.portalPassword}}
+
+############################## ##############################
+#
+# ONAP Cookie Processing - During initial development, this flag, if true, will
+# prevent the portal interface's login processing from searching for a user
+# specific cookie, and will instead allow passage if a valid session cookie is discovered.
+onap_enabled={{.Values.config.portalOnapEnabled}}
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/roles.config b/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/roles.config
new file mode 100644
index 0000000000..b8313bd378
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/portal/roles.config
@@ -0,0 +1,6 @@
+[
+ {
+ "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
index b8313bd378..4d5d43e2ce 100644
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/roles.config
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/roles.config
@@ -1,6 +1,6 @@
-[
- {
- "id":1,
- "name":"View"
- }
+[
+ {
+ "id":1,
+ "name":"View"
+ }
] \ 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
new file mode 100644
index 0000000000..78576172fb
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestMappings.json
@@ -0,0 +1,10 @@
+{
+ "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
new file mode 100644
index 0000000000..4525be12fc
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/autoSuggestSettings.json
@@ -0,0 +1,21 @@
+{
+ "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
new file mode 100644
index 0000000000..09a00acdf6
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/dynamicMappings.json
@@ -0,0 +1,14 @@
+{
+ "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
new file mode 100644
index 0000000000..84e3aec4c7
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/entityCountHistoryMappings.json
@@ -0,0 +1,16 @@
+{
+ "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
new file mode 100644
index 0000000000..216e3d96b6
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_mappings.json
@@ -0,0 +1,32 @@
+{
+ "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
new file mode 100644
index 0000000000..21a357c615
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/schemas/es_settings.json
@@ -0,0 +1,36 @@
+{
+ "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/search-service.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/search-service.properties
deleted file mode 100644
index f28047333a..0000000000
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/search-service.properties
+++ /dev/null
@@ -1,32 +0,0 @@
-########################################################################################
-############################## Search Data Service Config ##############################
-########################################################################################
-
-############################## Networking ##############################
-#
-# The ip address/hostname and port to the desired Search Data Service instance
-#
-search-service.ipAddress=aai-search-data.{{.Release.Namespace}}
-search-service.httpPort=9509
-
-############################## Indexes ##############################
-#
-# Index values that will be associated with searches
-#
-# Searchable entities
-search-service.indexName=entitysearchindex
-# Inventory searches
-search-service.topographicalIndexName=topographicalsearchindex
-search-service.entityCountHistoryIndexName=entitycounthistoryindex
-
-############################## Version ##############################
-#
-# Search Data Service version and type (see Search Data Service for more details)
-#
-search-service.version=v1
-search-service.type=default
-
-############################## Certs ##############################
-search-service.ssl.cert-name=client-cert-onap.p12
-search-service.ssl.keystore-password=OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
-search-service.ssl.keystore=tomcat_keystore
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
new file mode 100644
index 0000000000..b246676fa7
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-application.properties
@@ -0,0 +1,11 @@
+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
new file mode 100644
index 0000000000..f81a5976ef
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-http-config.properties
@@ -0,0 +1 @@
+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
new file mode 100644
index 0000000000..b9e5d16aac
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/sparky-ssl-config.properties
@@ -0,0 +1,3 @@
+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
new file mode 100644
index 0000000000..694ea1bf0f
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-aggregateVnfSearchProvider.xml
@@ -0,0 +1,33 @@
+<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
new file mode 100644
index 0000000000..8b5f27727d
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-apigw.xml
@@ -0,0 +1,31 @@
+<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
new file mode 100644
index 0000000000..dedd7e2d16
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-gizmo.xml
@@ -0,0 +1,29 @@
+<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
new file mode 100644
index 0000000000..0763f94cd1
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-sync.xml
@@ -0,0 +1,373 @@
+<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_generic-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="entityautosuggestindex" />
+ <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="topographicalsearchindex" />
+ <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="entitysearchindex" />
+ <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
new file mode 100644
index 0000000000..c146e6ef2b
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspect.xml
@@ -0,0 +1,55 @@
+<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
new file mode 100644
index 0000000000..072c935574
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core-viewInspectSearchProvider.xml
@@ -0,0 +1,34 @@
+<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
new file mode 100644
index 0000000000..8f5d42d25a
--- /dev/null
+++ b/kubernetes/aai/charts/aai-sparky-be/resources/config/spring-beans/sparky-core.xml
@@ -0,0 +1,241 @@
+<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>
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/suggestive-search.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/suggestive-search.properties
deleted file mode 100644
index b82baffc14..0000000000
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/suggestive-search.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-######################################################################################
-############################## Suggestive Search Config ##############################
-######################################################################################
-
-# Indexes to be taken into account when generating suggestion entries
-suggestion.indexes=elasticsearch.autosuggestIndexname,elasticsearch.indexName
-# List of stop words to be used during suggestive search
-suggestion.stopwords=a,an,and,are,as,at,be,but,by,called,for,if,in,into,is,it,no,not,of,on,or,such,that,the,their,then,there,these,they,this,to,was,will,with
-# Assigns which class, within sparky, will process the searches related to an assosiated index
-suggestion.routing=elasticsearch.autosuggestIndexname:SearchServiceWrapper,elasticsearch.indexName:VnfSearchService
-
-############################## Pairings ##############################
-#
-# "called" pairings, keys reference types within the OXM, and the value
-# is the suggestion term used for matches with any of the "called" keys.
-# e.g. "x called vserver-id" (but actual value of vserver-id)
-suggestion.pairing.called.key=volume-group-id,volume-group-name,physical-location-id,data-center-code,complex-name,tenant-id,tenant-name,vserver-id,vserver-name,vserver-name2,hostname,pserver-name2,pserver-id,global-customer-id,subscriber-name,service-instance-id,service-instance-name,link-name,vpn-id,vpn-name,vpe-id,vnf-id,vnf-name,vnf-name2,vnfc-name,network-id,network-name,network-policy-id,vf-module-id,vf-module-name,vnf-id2,pnf-name,circuit-id
-suggestion.pairing.called.value=called
-#
-# Exact same explanation as the "called" pairings above.
-# e.g. "x at ipv4-oam-address"
-suggestion.pairing.at.key=street1,street2,postal-code,ipv4-oam-address,network-policy-fqdn
-suggestion.pairing.at.value=at
-#
-# Default pairing values for any OXM types that aren't part of the the other
-# pairing lists.
-suggestion.pairing.default.value=with \ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/resources/config/synchronizer.properties b/kubernetes/aai/charts/aai-sparky-be/resources/config/synchronizer.properties
deleted file mode 100644
index 0b84f06abe..0000000000
--- a/kubernetes/aai/charts/aai-sparky-be/resources/config/synchronizer.properties
+++ /dev/null
@@ -1,33 +0,0 @@
-##############################################################################################
-############################## ElasticSearchSynchronizer Config ##############################
-##############################################################################################
-
-# Initial delay on startup before starting synchronization tasks
-synchronizer.syncTask.initialDelayInMs=60000
-# The frequency at which the synchronizationtask will be run
-synchronizer.syncTask.taskFrequencyInDay=2
-
-# Time at which to run synchronization. Format = hh:mm:ss UTC(-/+)hh:mm
-synchronizer.syncTask.startTimestamp=05:00:00 UTC+00:00
-
-# Generates a count in elasticsearch related to inventory
-synchronizer.historicalEntitySummarizerEnabled=true
-# Toggles the suggestion synchronizer
-synchronizer.autosuggestSynchronizationEnabled=true
-# Frequency at which above count is generated
-synchronizer.historicalEntitySummarizedFrequencyInMinutes=60
-
-# Elasticsearch scroll api context keep alive value
-synchronizer.scrollContextTimeToLiveInMinutes=5
-# Elasticsearch scroll api context max items per batch request
-synchronizer.numScrollContextItemsToRetrievePerRequest=5000
-
-
-############################## Deprecated, to be removed or updated ##############################
-synchronizer.resolver.progressLogFrequencyInMs=60000
-synchronizer.resolver.queueMonitorFrequencyInMs=1000
-synchronizer.resolver.displayVerboseQueueManagerStats=false
-synchronizer.indexIntegrityValidator.enabled=false
-synchronizer.indexIntegrityValidatorFrequencyInMs=3600000
-synchronizer.suppressResourceNotFoundErrors=true
-synchronizer.applyNodesOnlyModifier=false \ No newline at end of file
diff --git a/kubernetes/aai/charts/aai-sparky-be/templates/configmap.yaml b/kubernetes/aai/charts/aai-sparky-be/templates/configmap.yaml
index 68fa1e4966..1f6ed74029 100644
--- a/kubernetes/aai/charts/aai-sparky-be/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-sparky-be/templates/configmap.yaml
@@ -9,23 +9,64 @@ data:
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-model
+ name: {{ include "common.fullname" . }}-portal
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/model/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/portal/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-portal
+ name: {{ include "common.fullname" . }}-log
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/portal/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-log
+ 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
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/filters/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-schemas
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/schemas/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-spring-beans
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/spring-beans/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-boot-inf
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/portal/BOOT-INF/classes/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/aai/charts/aai-sparky-be/templates/deployment.yaml b/kubernetes/aai/charts/aai-sparky-be/templates/deployment.yaml
index 278a32728e..c1b2c3ccae 100644
--- a/kubernetes/aai/charts/aai-sparky-be/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-sparky-be/templates/deployment.yaml
@@ -36,62 +36,60 @@ spec:
spec:
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: CONFIG_HOME
- value: /opt/app/sparky/config/
- - name: KEY_MANAGER_PASSWORD
- value: {{ .Values.config.keyManagerPassword }}
- - name: KEY_STORE_PASSWORD
+ 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: 'true'
+ - name: SPARKY_PORTAL_ENABLED
+ value: 'false'
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /opt/app/sparky/config/auth/
+ - mountPath: /opt/app/sparky/appconfig/auth/
name: {{ include "common.fullname" . }}-auth-config
- - mountPath: /opt/app/sparky/config/synchronizer.properties
- subPath: synchronizer.properties
+ - 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/config/suggestive-search.properties
- subPath: suggestive-search.properties
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/search-service.properties
- subPath: search-service.properties
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/roles.config
- subPath: roles.config
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/elasticsearch.properties
- subPath: elasticsearch.properties
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/aai.properties
- subPath: aai.properties
- name: {{ include "common.fullname" . }}-config
- - mountPath: /opt/app/sparky/config/model/
- name: {{ include "common.fullname" . }}-model-config
- - mountPath: /opt/app/sparky/config/portal/
+ - mountPath: /opt/app/sparky/appconfig/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: /var/log/onap
name: {{ include "common.fullname" . }}-logs
- - mountPath: /opt/app/sparky/bundleconfig/etc/logback.xml
+ - mountPath: /opt/app/sparky/appconfig/logging/
name: {{ include "common.fullname" . }}-log-conf
- subPath: logback.xml
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 eq .Values.liveness.enabled true }}
livenessProbe:
tcpSocket:
- port: {{ .Values.service.internalPort }}
+ port: {{ .Values.service.internalPort2 }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
{{ end -}}
readinessProbe:
tcpSocket:
- port: {{ .Values.service.internalPort }}
+ port: {{ .Values.service.internalPort2 }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
resources:
@@ -125,15 +123,30 @@ spec:
- name: {{ include "common.fullname" . }}-config
configMap:
name: {{ include "common.fullname" . }}
- - name: {{ include "common.fullname" . }}-model-config
+ - name: {{ include "common.fullname" . }}-auth-config
+ secret:
+ secretName: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-camel-rests-config
configMap:
- name: {{ include "common.fullname" . }}-model
+ 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" . }}-auth-config
- secret:
- secretName: {{ include "common.fullname" . }}
+ - 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
+ configMap:
+ name: {{ include "common.fullname" . }}-spring-beans
- name: filebeat-conf
configMap:
name: aai-filebeat
@@ -143,7 +156,7 @@ spec:
emptyDir: {}
- name: {{ include "common.fullname" . }}-log-conf
configMap:
- name: {{ include "common.fullname" . }}-log
+ name: {{ include "common.fullname" . }}-log
restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-sparky-be/templates/service.yaml b/kubernetes/aai/charts/aai-sparky-be/templates/service.yaml
index 41bc163696..e97935aedd 100644
--- a/kubernetes/aai/charts/aai-sparky-be/templates/service.yaml
+++ b/kubernetes/aai/charts/aai-sparky-be/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.name" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
diff --git a/kubernetes/aai/charts/aai-sparky-be/values.yaml b/kubernetes/aai/charts/aai-sparky-be/values.yaml
index 34be1befb2..91c4026381 100644
--- a/kubernetes/aai/charts/aai-sparky-be/values.yaml
+++ b/kubernetes/aai/charts/aai-sparky-be/values.yaml
@@ -3,20 +3,38 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
-
+ aai:
+ serviceName: aai-aai
+ aaiElasticsearch:
+ serviceName: aai-elasticsearch
+ gizmo:
+ serviceName: aai-gizmo
+ searchData:
+ serviceName: aai-search-data
# application image
repository: nexus3.onap.org:10001
-image: onap/sparky-be:v1.1.0
+image: onap/sparky-be:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
+dockerhubRepository: registry.hub.docker.com
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
# application configuration
config:
elasticsearchHttpPort: 9200
keyStorePassword: OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
- keyManagerPassword: OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
+ keystoreAliasPassword: OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
+ gerritBranch: master
+ gerritProject: http://gerrit.onap.org/r/aai/test-config
+ portalUsername: aaiui
+ portalPassword: 1t2v1vfv1unz1vgz1t3b
+
+# ONAP Cookie Processing - During initial development, the following flag, if true, will
+# prevent the portal interface's login processing from searching for a user
+# specific cookie, and will instead allow passage if a valid session cookie is discovered.
+ portalOnapEnabled: true
+#
# override chart name (sparky-be) to share a common namespace
# suffix with parent chart (aai)
@@ -46,6 +64,7 @@ service:
type: ClusterIP
name: aai-sparky-be
internalPort: 9517
+ internalPort2: 8000
ingress:
enabled: false
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties b/kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties
new file mode 100644
index 0000000000..735609b424
--- /dev/null
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/aaiconfig.properties
@@ -0,0 +1,115 @@
+#
+# ============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.
+#
+
+####################################################################
+# 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.global.callback.url=https://aai.{{ include "common.namespace" . }}:8443/aai/
+
+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.notification.current.version=v11
+aai.notificationEvent.default.status=UNPROCESSED
+aai.notificationEvent.default.eventType=AAI-EVENT
+aai.notificationEvent.default.domain=dev
+aai.notificationEvent.default.sourceName=aai
+aai.notificationEvent.default.sequenceNumber=0
+aai.notificationEvent.default.severity=NORMAL
+aai.notificationEvent.default.version=v11
+# 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.logging.trace.enabled=true
+aai.logging.trace.logrequest=false
+aai.logging.trace.logresponse=false
+
+aai.transaction.logging=true
+aai.transaction.logging.get=false
+aai.transaction.logging.post=false
+
+aai.realtime.clients=SDNC,MSO,SO,robot-ete
+
+#timeout for traversal enabled flag
+aai.traversal.timeoutenabled=true
+
+#timeout app specific
+aai.traversal.timeout.appspecific=JUNITTESTAPP1,1|JUNITTESTAPP2,-1|DCAE-CCS,-1|DCAES,-1|AAI-FILEGEN-GFPIP,-1
+
+#default timeout limit added for traversal if not overridden (in ms)
+aai.traversal.timeoutlimit=180000
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/application.properties b/kubernetes/aai/charts/aai-traversal/resources/config/application.properties
new file mode 100644
index 0000000000..ebfe98b77d
--- /dev/null
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/application.properties
@@ -0,0 +1,72 @@
+# 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
+
+spring.application.name=aai-traversal
+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
+#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
+
+
+#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/
+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.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
+
+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
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties b/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties
new file mode 100644
index 0000000000..b9216bf8e0
--- /dev/null
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties
@@ -0,0 +1,49 @@
+#
+# ============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.
+#
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- $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
+#storage.cassandra.replication-strategy-options=MTA1cass,3
+
+#schema.default=none
+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-traversal/resources/config/janusgraph-realtime.properties b/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties
new file mode 100644
index 0000000000..a8504dc1c4
--- /dev/null
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties
@@ -0,0 +1,45 @@
+#
+# ============LICENSE_START=======================================================
+# 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.
+#
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- $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
+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-traversal/resources/config/localhost-access-logback.xml b/kubernetes/aai/charts/aai-traversal/resources/config/localhost-access-logback.xml
new file mode 100644
index 0000000000..a318796c57
--- /dev/null
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/localhost-access-logback.xml
@@ -0,0 +1,62 @@
+<!--
+
+ ============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
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/log/logback.xml b/kubernetes/aai/charts/aai-traversal/resources/config/log/logback.xml
deleted file mode 100644
index fb8d8a53bf..0000000000
--- a/kubernetes/aai/charts/aai-traversal/resources/config/log/logback.xml
+++ /dev/null
@@ -1,345 +0,0 @@
-<configuration debug="false" scan="true" scanPeriod="3 seconds">
- <contextName>${module.ajsc.namespace.name}</contextName>
- <jmxConfigurator />
- <property name="logDir" value="/var/log/onap" />
- <property name="componentName" value="aai"></property>
- <property name="restLogDirectory" value="${logDir}/${componentName}/rest" />
- <property name="dmaapLogDirectory" value="${logDir}/${componentName}/dmaapAAIEventConsumer" />
- <property name="perfLogsDirectory" value="${logDir}/${componentName}/perf-audit" />
- <!-- default eelf 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" />
- <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>ERROR</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <encoder>
- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="SANE">
- <file>${restLogDirectory}/sane.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/sane.%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="asyncSANE">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="SANE" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="METRIC">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${metricsLogName}.%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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncMETRIC">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="METRIC" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncDEBUG">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="DEBUG" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <file>${restLogDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncERROR">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="ERROR" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT">
- <file>${restLogDirectory}/${auditLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncAUDIT">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="AUDIT" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="translog">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <file>${restLogDirectory}/translog.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${restLogDirectory}/translog.%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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asynctranslog">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <appender-ref ref="translog" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumer">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <File>${dmaapLogDirectory}/${errorLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumerDebug">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>DEBUG</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <File>${dmaapLogDirectory}/${debugLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIEventConsumerMetric">
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <File>${dmaapLogDirectory}/${metricsLogName}.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${dmaapLogDirectory}/${metricsLogName}.%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 class="org.onap.aai.logging.EcompEncoder">
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- Spring related loggers -->
- <logger level="WARN" name="org.springframework" />
- <logger level="WARN" name="org.springframework.beans" />
- <logger level="WARN" name="org.springframework.web" />
- <logger level="WARN" name="com.blog.spring.jms" />
- <!-- AJSC Services (bootstrap services) -->
- <logger level="WARN" name="ajsc" />
- <logger level="WARN" name="ajsc.RouteMgmtService" />
- <logger level="WARN" name="ajsc.ComputeService" />
- <logger level="WARN" name="ajsc.VandelayService" />
- <logger level="WARN" name="ajsc.FilePersistenceService" />
- <logger level="WARN" name="ajsc.UserDefinedJarService" />
- <logger level="WARN" name="ajsc.UserDefinedBeansDefService" />
- <logger level="WARN" name="ajsc.LoggingConfigurationService" />
- <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet
- logging) -->
- <logger level="WARN" name="ajsc.utils" />
- <logger level="WARN" name="ajsc.utils.DME2Helper" />
- <logger level="WARN" name="ajsc.filters" />
- <logger level="WARN" name="ajsc.beans.interceptors" />
- <logger level="WARN" name="ajsc.restlet" />
- <logger level="WARN" name="ajsc.servlet" />
- <logger level="WARN" name="com.att.ajsc" />
- <logger level="WARN" name="com.att.ajsc.csi.logging" />
- <logger level="WARN" name="com.att.ajsc.filemonitor" />
- <!-- Other Loggers that may help troubleshoot -->
- <logger level="WARN" name="net.sf" />
- <logger level="WARN" name="org.apache.commons.httpclient" />
- <logger level="WARN" name="org.apache.commons" />
- <logger level="WARN" name="org.apache.coyote" />
- <logger level="WARN" name="org.apache.jasper" />
- <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging.
- May aid in troubleshooting) -->
- <logger level="WARN" name="org.apache.camel" />
- <logger level="WARN" name="org.apache.cxf" />
- <logger level="WARN" name="org.apache.camel.processor.interceptor" />
- <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" />
- <logger level="WARN" name="org.apache.cxf.service" />
- <logger level="WARN" name="org.restlet" />
- <logger level="WARN" name="org.apache.camel.component.restlet" />
- <!-- logback internals logging -->
- <logger level="WARN" name="ch.qos.logback.classic" />
- <logger level="WARN" name="ch.qos.logback.core" />
- <!-- logback jms appenders & loggers definition starts here -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="auditLogs">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
- <file>${perfLogsDirectory}/Audit-${lrmRVer}-${lrmRO}-${Pid}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${perfLogsDirectory}/Audit-${lrmRVer}-${lrmRO}-${Pid}.%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.core.rolling.RollingFileAppender" name="perfLogs">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
- <file>${perfLogsDirectory}/Perform-${lrmRVer}-${lrmRO}-${Pid}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${perfLogsDirectory}/Perform-${lrmRVer}-${lrmRO}-${Pid}.%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-audit">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="Audit-Record-Queue" />
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC-perf">
- <queueSize>${queueSize}</queueSize>
- <includeCallerData>true</includeCallerData>
- <discardingThreshold>0</discardingThreshold>
- <appender-ref ref="Performance-Tracker-Queue" />
- </appender>
- <logger additivity="false" level="INFO" name="AuditRecord">
- <appender-ref ref="ASYNC-audit" />
- <appender-ref ref="auditLogs" />
- </logger>
- <logger additivity="false" level="INFO" name="AuditRecord_DirectCall">
- <appender-ref ref="ASYNC-audit" />
- <appender-ref ref="auditLogs" />
- </logger>
- <logger additivity="false" level="INFO" name="PerfTrackerRecord">
- <appender-ref ref="ASYNC-perf" />
- <appender-ref ref="perfLogs" />
- </logger>
- <!-- logback jms appenders & loggers definition ends here -->
- <logger additivity="false" level="DEBUG" name="org.onap.aai.interceptors">
- <appender-ref ref="asynctranslog" />
- </logger>
- <logger level="DEBUG" name="org.onap.aai.interceptors.PreAaiAjscInterceptor">
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <logger level="DEBUG" name="org.onap.aai.interceptors.PostAaiAjscInterceptor">
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <logger additivity="false" level="DEBUG" name="org.onap.aai.dmaap">
- <appender-ref ref="dmaapAAIEventConsumer" />
- <appender-ref ref="dmaapAAIEventConsumerDebug" />
- <appender-ref ref="dmaapAAIEventConsumerMetric" />
- </logger>
- <logger level="WARN" name="org.apache" />
- <logger level="WARN" name="org.zookeeper" />
- <logger level="WARN" name="com.thinkaurelius" />
- <!-- ============================================================================ -->
- <!-- General EELF logger -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="WARN" name="com.att.eelf">
- <appender-ref ref="asyncDEBUG" />
- <appender-ref ref="asyncERROR" />
- <appender-ref ref="asyncMETRIC" />
- <appender-ref ref="asyncAUDIT" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncDEBUG" />
- <appender-ref ref="asyncERROR" />
- </root>
-</configuration>
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/logback.xml b/kubernetes/aai/charts/aai-traversal/resources/config/logback.xml
new file mode 100644
index 0000000000..2ed8f5c8f1
--- /dev/null
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/logback.xml
@@ -0,0 +1,365 @@
+<!--
+ ============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 scan="true" scanPeriod="60 seconds" debug="false">
+ <statusListener class="ch.qos.logback.core.status.NopStatusListener" />
+ <property resource="application.properties" />
+ <property name="namespace" value="aai-traversal"/>
+ <property name="AJSC_HOME" value="${AJSC_HOME:-.}" />
+ <jmxConfigurator />
+ <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}|%X{statusCode}|%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}|%X{statusCode}|%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}|%X{statusCode}|%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}|%X{statusCode}|%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>${eelfLogPattern}</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>
+ <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="OFF" />
+ <!-- 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>"%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" />
+ <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>
+ <appender name="miscLogs" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/misc/misc.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/misc/misc.log.%d{yyyy-MM-dd}</fileNamePattern>
+ </rollingPolicy>
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%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>
+ <logger name="MiscRecord" level="INFO" additivity="false">
+ <appender-ref ref="miscLogs" />
+ </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.apache" level="OFF" />
+ <logger name="org.zookeeper" level="OFF" />
+ <logger name="com.thinkaurelius" 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" />
+ </root>
+</configuration>
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/realm.properties b/kubernetes/aai/charts/aai-traversal/resources/config/realm.properties
new file mode 100644
index 0000000000..f0e0172d2d
--- /dev/null
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/realm.properties
@@ -0,0 +1,13 @@
+# 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-traversal/templates/configmap.yaml b/kubernetes/aai/charts/aai-traversal/templates/configmap.yaml
index a7e9428a88..373819e39e 100644
--- a/kubernetes/aai/charts/aai-traversal/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-traversal/templates/configmap.yaml
@@ -4,4 +4,52 @@ metadata:
name: {{ include "common.fullname" . }}-log
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
+{{ 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-traversal/templates/deployment.yaml b/kubernetes/aai/charts/aai-traversal/templates/deployment.yaml
index b4249aede1..25cd3a9537 100644
--- a/kubernetes/aai/charts/aai-traversal/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-traversal/templates/deployment.yaml
@@ -34,6 +34,7 @@ spec:
release: {{ .Release.Name }}
name: {{ include "common.name" . }}
annotations:
+ checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
msb.onap.org/service-info: '[
{
"serviceName": "_aai-generic-query",
@@ -245,11 +246,14 @@ spec:
}
]'
spec:
+ hostname: aai-traversal
initContainers:
- command:
- /root/ready.py
args:
- --container-name
+ - aai-cassandra
+ - --container-name
- aai-resources
env:
- name: NAMESPACE
@@ -262,35 +266,42 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- - name: CHEF_BRANCH
- value: master
- - name: AAI_CHEF_ENV
- value: simpledemo
- - name: AAI_CORE_VERSION
- value: {{ .Values.config.aaicoreversion }}
- - name: AAI_CHEF_LOC
- value: /var/chef/aai-data/environments
- - name: CHEF_GIT_URL
- value: http://gerrit.onap.org/r/aai
- - name: RESOURCES_HOSTNAME
- value: aai-resources.{{ include "common.namespace" . }}
+ - name: DISABLE_UPDATE_QUERY
+ value: {{ .Values.config.disableUpdateQuery | quote }}
+ - 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: /var/chef/aai-data/chef-config/dev/.knife/solo.rb
- subPath: solo.rb
- name: aai-chef-config
- - mountPath: /var/chef/aai-data/environments/
- name: aai-data
- - mountPath: /var/log/onap
- name: aai-traversal-logs
- - mountPath: /opt/app/aai-traversal/bundleconfig/etc/logback.xml
- name: aai-traversal-log-conf
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-db-real-conf
+ subPath: janusgraph-realtime.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-db-cached-conf
+ subPath: janusgraph-cached.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
+ name: {{ include "common.fullname" . }}-aaiconfig-conf
+ subPath: aaiconfig.properties
+ - mountPath: /opt/aai/logroot/AAI-GQ
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/aai-traversal/resources/logback.xml
+ name: {{ include "common.fullname" . }}-log-conf
subPath: logback.xml
+ - 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/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
ports:
- containerPort: {{ .Values.service.internalPort }}
- containerPort: {{ .Values.service.internalPort2 }}
@@ -328,30 +339,44 @@ spec:
subPath: filebeat.yml
name: filebeat-conf
- mountPath: /var/log/onap
- name: aai-traversal-logs
+ name: {{ include "common.fullname" . }}-logs
- mountPath: /usr/share/filebeat/data
- name: aai-traversal-filebeat
-
+ name: {{ include "common.fullname" . }}-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
- - name: aai-chef-config
- configMap:
- name: aai-chef-config
- - name: aai-data
- configMap:
- name: aai-resources-environments
- name: filebeat-conf
configMap:
name: aai-filebeat
- - name: aai-traversal-logs
+ - name: {{ include "common.fullname" . }}-logs
emptyDir: {}
- - name: aai-traversal-filebeat
+ - name: {{ include "common.fullname" . }}-filebeat
emptyDir: {}
- - name: aai-traversal-log-conf
+ - 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-sec
+ secret:
+ secretName: aai-auth-secret
restartPolicy: {{ .Values.global.restartPolicy | default .Values.restartPolicy }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-traversal/templates/job.yaml b/kubernetes/aai/charts/aai-traversal/templates/job.yaml
new file mode 100644
index 0000000000..46af0047f7
--- /dev/null
+++ b/kubernetes/aai/charts/aai-traversal/templates/job.yaml
@@ -0,0 +1,131 @@
+# Copyright © 2017-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.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-update-query-data
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - aai
+ 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" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - bash
+ - "-c"
+ - |
+ set -x
+ mkdir -p /opt/aai/logroot/AAI-GQ/misc
+ bash -x /opt/app/aai-traversal/docker-entrypoint.sh install/updateQueryData.sh
+ env:
+ - name: LOCAL_USER_ID
+ value: "1000"
+ - name: LOCAL_GROUP_ID
+ value: "1000"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-db-real-conf
+ subPath: janusgraph-realtime.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-db-cached-conf
+ subPath: janusgraph-cached.properties
+ - mountPath: /opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
+ name: {{ include "common.fullname" . }}-aaiconfig-conf
+ subPath: aaiconfig.properties
+ - mountPath: /var/log/onap
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/aai-traversal/resources/logback.xml
+ name: {{ include "common.fullname" . }}-log-conf
+ subPath: logback.xml
+ - 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/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
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: aai-filebeat
+ - name: {{ include "common.fullname" . }}-logs
+ hostPath:
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}-update-query
+ - 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-sec
+ secret:
+ secretName: aai-auth-secret
+ restartPolicy: OnFailure
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aai/charts/aai-traversal/templates/service.yaml b/kubernetes/aai/charts/aai-traversal/templates/service.yaml
index 8cea86cf54..9ba61fa00c 100644
--- a/kubernetes/aai/charts/aai-traversal/templates/service.yaml
+++ b/kubernetes/aai/charts/aai-traversal/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.name" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -14,15 +14,15 @@ spec:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName2 }}
{{- else -}}
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName2 }}
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/aai/charts/aai-traversal/values.yaml b/kubernetes/aai/charts/aai-traversal/values.yaml
index 17640338d1..c22ae75c3f 100644
--- a/kubernetes/aai/charts/aai-traversal/values.yaml
+++ b/kubernetes/aai/charts/aai-traversal/values.yaml
@@ -3,21 +3,26 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
# application image
repository: nexus3.onap.org:10001
-image: openecomp/aai-traversal:v1.1.0
+image: onap/aai-traversal:1.2-STAGING-latest
pullPolicy: Always
restartPolicy: Always
# application configuration
config:
aaicoreversion: 1.1.0-SNAPSHOT
+ userId: 1000
+ groupId: 1000
+ disableUpdateQuery: true
+persistence:
+ mountPath: /dockerdata-nfs
+ mountSubPath: aai/aai-traversal
# default number of instances
replicaCount: 1
@@ -40,8 +45,9 @@ readiness:
service:
type: ClusterIP
- name: aai-traversal
+ portName: aai-traversal-8446
internalPort: 8446
+ portName2: aai-traversal-5005
internalPort2: 5005
ingress:
diff --git a/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json b/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json
index 9795975c16..598a3ba1c4 100644
--- a/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json
+++ b/kubernetes/aai/resources/config/aai-data/environments/simpledemo.json
@@ -42,7 +42,7 @@
"AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
"APPLICATION_SERVERS": "aai.{{.Release.Namespace}}",
"AAI_DMAAP_PROTOCOL": "http",
- "AAI_DMAAP_HOST_PORT": "dmaap.{{.Release.Namespace}}:3904",
+ "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",
@@ -94,7 +94,7 @@
"AAI_KEYSTORE_PASSWD_X": "OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0",
"APPLICATION_SERVERS": "aai.{{.Release.Namespace}}",
"AAI_DMAAP_PROTOCOL": "http",
- "AAI_DMAAP_HOST_PORT": "dmaap.{{.Release.Namespace}}:3904",
+ "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",
diff --git a/kubernetes/aai/resources/config/aai/aai_keystore b/kubernetes/aai/resources/config/aai/aai_keystore
new file mode 100644
index 0000000000..30fee2f602
--- /dev/null
+++ b/kubernetes/aai/resources/config/aai/aai_keystore
Binary files differ
diff --git a/kubernetes/aai/templates/configmap.yaml b/kubernetes/aai/templates/configmap.yaml
index 78235bcd4f..00d2a80d9c 100644
--- a/kubernetes/aai/templates/configmap.yaml
+++ b/kubernetes/aai/templates/configmap.yaml
@@ -13,23 +13,25 @@ metadata:
name: aai-deployment-configmap
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/haproxy/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/haproxy/haproxy.cfg").AsConfig . | indent 2 }}
---
-# this is a shared resource for subcharts
apiVersion: v1
-kind: ConfigMap
+kind: Secret
metadata:
- name: aai-chef-config
+ name: aai-haproxy-secret
namespace: {{ include "common.namespace" . }}
+type: Opaque
data:
-{{ tpl (.Files.Glob "resources/config/aai-data/chef-config/dev/.knife/solo.rb").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/haproxy/aai.pem").AsSecrets . | indent 2 }}
+# This is a shared key for both resources and traversal
---
-# this is a shared resource for subcharts
apiVersion: v1
-kind: ConfigMap
+kind: Secret
metadata:
- name: aai-resources-environments
+ name: aai-auth-secret
namespace: {{ include "common.namespace" . }}
+type: Opaque
data:
-{{ tpl (.Files.Glob "resources/config/aai-data/environments/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/aai/aai_keystore").AsSecrets . | indent 2 }}
+
diff --git a/kubernetes/aai/values.yaml b/kubernetes/aai/values.yaml
index b06456800a..153379b06c 100644
--- a/kubernetes/aai/values.yaml
+++ b/kubernetes/aai/values.yaml
@@ -18,18 +18,45 @@
global: # global defaults
nodePortPrefix: 302
repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
dockerhubRepository: docker.io
busyboxImage: busybox
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ 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-aai
+ babel:
+ serviceName: aai-babel
+ champ:
+ serviceName: aai-champ
+ aaiElasticsearch:
+ serviceName: aai-elasticsearch
+ hbase:
+ serviceName: aai-hbase
+ resources:
+ serviceName: aai-resources
+ sparkyBe:
+ serviceName: aai-sparky-be
+ dataRouter:
+ serviceName: aai-data-router
+ gizmo:
+ serviceName: aai-gizmo
+ modelloader:
+ serviceName: aai-modelloader
+ searchData:
+ serviceName: aai-search-data
+ traversal:
+ serviceName: aai-traversal
+
# application image
dockerhubRepository: registry.hub.docker.com
-image: aaionap/haproxy:1.1.0
+image: aaionap/haproxy:1.2.2
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/appc/charts/appc-cdt/.helmignore b/kubernetes/appc/charts/appc-cdt/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/appc/charts/appc-cdt/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/appc/charts/appc-cdt/Chart.yaml b/kubernetes/appc/charts/appc-cdt/Chart.yaml
new file mode 100644
index 0000000000..b7720f7864
--- /dev/null
+++ b/kubernetes/appc/charts/appc-cdt/Chart.yaml
@@ -0,0 +1,4 @@
+apiVersion: v1
+description: ONAP APPC Self Service Controller Design Tool
+name: appc-cdt
+version: 2.0.0
diff --git a/kubernetes/appc/charts/appc-cdt/requirements.yaml b/kubernetes/appc/charts/appc-cdt/requirements.yaml
new file mode 100644
index 0000000000..8cddd3029f
--- /dev/null
+++ b/kubernetes/appc/charts/appc-cdt/requirements.yaml
@@ -0,0 +1,4 @@
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/appc/charts/appc-cdt/templates/NOTES.txt b/kubernetes/appc/charts/appc-cdt/templates/NOTES.txt
new file mode 100644
index 0000000000..c4b9989618
--- /dev/null
+++ b/kubernetes/appc/charts/appc-cdt/templates/NOTES.txt
@@ -0,0 +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={{ include "common.fullname" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/appc/charts/appc-cdt/templates/deployment.yaml b/kubernetes/appc/charts/appc-cdt/templates/deployment.yaml
new file mode 100644
index 0000000000..2226b75bbf
--- /dev/null
+++ b/kubernetes/appc/charts/appc-cdt/templates/deployment.yaml
@@ -0,0 +1,61 @@
+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:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ # 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 }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ 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 }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/appc/charts/appc-cdt/templates/service.yaml b/kubernetes/appc/charts/appc-cdt/templates/service.yaml
new file mode 100644
index 0000000000..86442a2740
--- /dev/null
+++ b/kubernetes/appc/charts/appc-cdt/templates/service.yaml
@@ -0,0 +1,26 @@
+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.externalPort }}
+ 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 }}
diff --git a/kubernetes/appc/charts/appc-cdt/values.yaml b/kubernetes/appc/charts/appc-cdt/values.yaml
new file mode 100644
index 0000000000..123098cdd2
--- /dev/null
+++ b/kubernetes/appc/charts/appc-cdt/values.yaml
@@ -0,0 +1,64 @@
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/appc-cdt-image:1.3.0-SNAPSHOT-latest
+pullPolicy: Always
+
+# application configuration
+config: {}
+
+# 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: appc-cdt
+ externalPort: 80
+ internalPort: 80
+ nodePort: 89
+
+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/appc/resources/config/appc/opt/onap/appc/bin/installAppcDb.sh b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installAppcDb.sh
index f260f3d84a..abc293572b 100755
--- a/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installAppcDb.sh
+++ b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/installAppcDb.sh
@@ -18,8 +18,8 @@
# ============LICENSE_END=========================================================
###
-SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
-APPC_HOME=${APPC_HOME:-/opt/openecomp/appc}
+SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk}
+APPC_HOME=${APPC_HOME:-/opt/onap/appc}
MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
APPC_DB_USER=${APPC_DB_USER:-appcctl}
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh
index 0b9e63127b..e13193f364 100755
--- a/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh
+++ b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh
@@ -32,10 +32,6 @@ function enable_odl_cluster(){
exit
fi
- echo "Installing Opendaylight cluster features"
- ${ODL_HOME}/bin/client -u karaf feature:install odl-mdsal-clustering
- ${ODL_HOME}/bin/client -u karaf feature:install odl-jolokia
-
echo "Update cluster information statically"
hm=$(hostname)
echo "Get current Hostname ${hm}"
@@ -53,13 +49,15 @@ function enable_odl_cluster(){
}
ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
-ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U}
-SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
+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}}}
ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false}
+appcInstallStartTime=$(date +%s)
+
#
# Adding the DMAAP_TOPIC_ENV variable into APPC-ASDC-LISTENER properties
#
@@ -93,25 +91,38 @@ if [ ! -f ${SDNC_HOME}/.installed ]
then
echo "Installing SDNC database"
${SDNC_HOME}/bin/installSdncDb.sh
+
echo "Installing APPC database"
${APPC_HOME}/bin/installAppcDb.sh
+
+ echo "Installing ODL Host Key"
+ ${SDNC_HOME}/bin/installOdlHostKey.sh
+
echo "Starting OpenDaylight"
${ODL_HOME}/bin/start
+
echo "Waiting ${SLEEP_TIME} seconds for OpenDaylight to initialize"
sleep ${SLEEP_TIME}
- echo "Inserting modified installFeatures.sh for sdnc"
- rm ${SDNC_HOME}/bin/installFeatures.sh
- cp ${APPC_HOME}/data/sdncInstallFeatures.sh ${SDNC_HOME}/bin/installFeatures.sh
+
+ echo "Copying a working version of the logging configuration into the opendaylight etc folder"
+ cp ${APPC_HOME}/data/org.ops4j.pax.logging.cfg ${ODL_HOME}/etc/org.ops4j.pax.logging.cfg
+ echo "Copying a new version of aaf cadi shiro into the opendaylight deploy folder"
+ cp ${APPC_HOME}/data/aaf-shiro-aafrealm-osgi-bundle.jar ${ODL_HOME}/deploy/aaf-shiro-aafrealm-osgi-bundle.jar
+
echo "Installing SDNC platform features"
${SDNC_HOME}/bin/installFeatures.sh
+
if [ -x ${SDNC_HOME}/svclogic/bin/install.sh ]
then
echo "Installing directed graphs"
${SDNC_HOME}/svclogic/bin/install.sh
fi
+ if $ENABLE_ODL_CLUSTER ; then echo "Installing Opendaylight cluster features" ; ${ODL_HOME}/bin/client feature:install odl-mdsal-clustering ; ${ODL_HOME}/bin/client feature:install odl-jolokia ; fi
+
echo "Installing APPC platform features"
${APPC_HOME}/bin/installFeatures.sh
+
if [ -x ${APPC_HOME}/svclogic/bin/install.sh ]
then
echo "Installing APPC DGs using platform-logic"
@@ -126,10 +137,41 @@ then
if $ENABLE_ODL_CLUSTER ; then enable_odl_cluster ; fi
+ echo "Adding a property system.properties for AAF cadi.properties location"
+ echo "" >> ${ODL_HOME}/etc/system.properties
+ echo "cadi_prop_files=${APPC_HOME}/data/properties/cadi.properties" >> ${ODL_HOME}/etc/system.properties
+ echo "" >> ${ODL_HOME}/etc/system.properties
+
+ echo "Copying the aaa shiro configuration into opendaylight"
+ cp ${APPC_HOME}/data/aaa-app-config.xml ${ODL_HOME}/etc/opendaylight/datastore/initial/config/aaa-app-config.xml
+
+
echo "Restarting OpenDaylight"
${ODL_HOME}/bin/stop
+ checkRun () {
+ running=0
+ while read a b c d e f g h
+ do
+ if [ "$h" == "/bin/sh /opt/opendaylight/current/bin/karaf server" ]
+ then
+ running=1
+ fi
+ done < <(ps -eaf)
+ echo $running
+ }
+
+ while [ $( checkRun ) == 1 ]
+ do
+ echo "Karaf is still running, waiting..."
+ sleep 5s
+ done
+ echo "Karaf process has stopped"
+ sleep 10s
echo "Installed at `date`" > ${SDNC_HOME}/.installed
fi
+ appcInstallEndTime=$(date +%s)
+ echo "Total Appc install took $(expr $appcInstallEndTime - $appcInstallStartTime) seconds"
+
exec ${ODL_HOME}/bin/karaf
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/aaiclient.properties b/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/aaiclient.properties
index b2f7102d8c..3ce748339e 100644
--- a/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/aaiclient.properties
+++ b/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/aaiclient.properties
@@ -25,8 +25,10 @@
#
# Certificate keystore and truststore
#
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/openecomp/appc/data/stores/truststore.openecomp.client.jks
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=adminadmin
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/onap/appc/data/stores/ONAPall.p12
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=changeit
+org.onap.ccsdk.sli.adaptors.aai.ssl.key=/opt/onap/appc/data/stores/ONAPall.p12
+org.onap.ccsdk.sli.adaptors.aai.ssl.key.psswd=changeit
org.onap.ccsdk.sli.adaptors.aai.host.certificate.ignore=true
org.onap.ccsdk.sli.adaptors.aai.client.name=AAI
@@ -39,106 +41,105 @@ org.onap.ccsdk.sli.adaptors.aai.application=openECOMP
#
# Configuration file for A&AI Client
#
-org.onap.ccsdk.sli.adaptors.aai.uri=https://aai-service.{{.Release.Namespace}}:8443
-
+org.onap.ccsdk.sli.adaptors.aai.uri=https://aai.{{.Release.Namespace}}:8443
# query
-org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v11/search/sdn-zone-query
-org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v11/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
-org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v11/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
+org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v13/search/sdn-zone-query
+org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v13/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
+org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v13/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
# named query
org.onap.ccsdk.sli.adaptors.aai.query.named=/aai/search/named-query
#update
-org.onap.ccsdk.sli.adaptors.aai.update=/aai/v11/actions/update
+org.onap.ccsdk.sli.adaptors.aai.update=/aai/v13/actions/update
# vce
-org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v11/network/vces/vce/
-org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v11/network/vces/
+org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v13/network/vces/vce/
+org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v13/network/vces/
# vpe
-org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v11/network/vpes/vpe/
-org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v11/network/vpes/
+org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v13/network/vpes/vpe/
+org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v13/network/vpes/
# customer
-org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v11/business/customers/customer/{customer-id}
+org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v13/business/customers/customer/{customer-id}
# service subscription
-org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
+org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v13/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
# service instance
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v11/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v11/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
-org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v13/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances
+org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v13/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
+org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v13/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
# complex
-org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v11/cloud-infrastructure/complexes
-org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}
+org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v13/cloud-infrastructure/complexes
+org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v13/cloud-infrastructure/complexes/complex/{physical-location-id}
# tenant
-org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
-org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name}
+org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
+org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name}
# vservers
-org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/
-org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
+org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/
+org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
# vpls-pe
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v11/network/vpls-pes/
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v11/network/vpls-pes/vpls-pe/
+org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v13/network/vpls-pes/
+org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v13/network/vpls-pes/vpls-pe/
# ctag-pool
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
+org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v13/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools
+org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v13/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
#
#-------------- 1510 ----------------------
#
# pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v11/cloud-infrastructure/pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}
+org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v13/cloud-infrastructure/pservers
+org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}
# generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v11/network/generic-vnfs
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v13/network/generic-vnfs
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}
# dvs-switch
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
+org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches
+org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
# L3 Networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v11/network/l3-networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v11/network/l3-networks/l3-network/{network-id}
-org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v11/network/l3-networks/l3-network?network-name={network-name}
+org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v13/network/l3-networks
+org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v13/network/l3-networks/l3-network/{network-id}
+org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v13/network/l3-networks/l3-network?network-name={network-name}
# P-Interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
# Physical Link
-org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v11/network/physical-links
-org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v11/network/physical-links/physical-link/{link-name}
+org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v13/network/physical-links
+org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v13/network/physical-links/physical-link/{link-name}
# VPN Bindings
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v11/network/vpn-bindings/
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v11/network/vpn-bindings/vpn-binding/{vpn-id}
+org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v13/network/vpn-bindings/
+org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v13/network/vpn-bindings/vpn-binding/{vpn-id}
# VNF IMAGES
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v11/service-design-and-creation/vnf-images
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v11/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v11/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v13/service-design-and-creation/vnf-images
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v13/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v13/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
# UBB Notify
-org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v11/actions/notify
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai-service.{{.Release.Namespace}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai-service.{{.Release.Namespace}}:8443/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
+org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v13/actions/notify
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai.{{.Release.Namespace}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai.{{.Release.Namespace}}:8443/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
# Service
-org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v11/service-design-and-creation/services/service/{service-id}
-org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v11/service-design-and-creation/services
+org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v13/service-design-and-creation/services/service/{service-id}
+org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v13/service-design-and-creation/services
#
@@ -146,98 +147,98 @@ org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v11/service-design-and-creati
#
# VNFC
-org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v11/network/vnfcs/vnfc/{vnfc-name}
+org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v13/network/vnfcs/vnfc/{vnfc-name}
# class-of-service
-org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id}
+org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v13/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id}
# site-pair
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
+org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v13/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
# routing-instance
-org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v13/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
# site-pair-set
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}
+org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v13/network/site-pair-sets/site-pair-set/{site-pair-set-id}
# license key resource
-org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v11/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v11/license-management/license-key-resources/license-key-resource/{att-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v13/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v13/license-management/license-key-resources/license-key-resource/{att-uuid}
# logical-link
-org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v11/network/logical-links/logical-link/{link-name}
+org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v13/network/logical-links/logical-link/{link-name}
# virtual-data-center
-org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v11/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
+org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v13/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
# wan-connector
-org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v11/business/connectors/connector/{resource-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v13/business/connectors/connector/{resource-instance-id}
# l-interface
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
# l-interface pnf
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v13/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v13/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
# subinterface
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v13/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v13/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
# vlans
-org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
# l3-interface-ipv4-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
# l3-interface-ipv6-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
# ipsec-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
+org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v13/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
# vig server
-org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
+org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v13/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
# l3-network
-org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v11/network/l3-networks/l3-network/{network-id}
+org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v13/network/l3-networks/l3-network/{network-id}
# subnet
-org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v11/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
+org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v13/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
# multicast-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v11/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
+org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v13/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.vlan.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv6.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
# volume.group
-org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
+org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
#cloud region
-org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
+org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v13/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
# vf-module
-org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
+org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
# l-interface through generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
+org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v13/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
# network-policy
-org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v11/network/network-policies/network-policy/{network-policy-id}
+org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v13/network/network-policies/network-policy/{network-policy-id}
# pnf
-org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}
+org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v13/network/pnfs/pnf/{pnf-name}
#
# Formatting
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/appc.properties b/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/appc.properties
index f4ee6fcfc7..d59d20d736 100644
--- a/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/appc.properties
+++ b/kubernetes/appc/resources/config/appc/opt/onap/appc/data/properties/appc.properties
@@ -22,7 +22,7 @@
### ###
### Properties for demo ###
### ###
-appc.demo.poolMembers=dmaap.{{.Release.Namespace}}:3904
+appc.demo.poolMembers=message-router.{{.Release.Namespace}}:3904
appc.demo.topic.read=APPC-CL
appc.demo.topic.write=APPC-CL
appc.demo.client.name=appcDemoEventListener
@@ -31,9 +31,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=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+appc.demo.provider.pass=admin
appc.demo.provider.url=http://localhost:8181/restconf/operations/appc-provider
-appc.provider.vfodl.url=http://admin:Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U@appc-sdnhost.{{.Release.Namespace}}:8282/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:admin@appc-sdnhost.{{.Release.Namespace}}:8282/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,29 +41,25 @@ 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.openecomp.appc.db.url.appcctl=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/appcctl
-org.openecomp.appc.db.user.appcctl=appcctl
-org.openecomp.appc.db.pass.appcctl=appcctl
+org.onap.appc.db.url.appcctl=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/appcctl
+org.onap.appc.db.user.appcctl=appcctl
+org.onap.appc.db.pass.appcctl=appcctl
-org.openecomp.appc.db.url.sdnctl=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
-org.openecomp.appc.db.user.sdnctl=sdnctl
-org.openecomp.appc.db.pass.sdnctl=gamma
+org.onap.appc.db.url.sdnctl=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:3306/sdnctl
+org.onap.appc.db.user.sdnctl=sdnctl
+org.onap.appc.db.pass.sdnctl=gamma
### ###
### OpenStack credentials (these properties also are used in appc-rest-adapter-bundle, appc-chef-adapter-bundle, appc-iaas-adapter-bundle) ###
### ###
-provider1.type=OpenStackProvider
-provider1.name=OpenStack
-provider1.identity=http://localhost:8181/apidoc/explorer/index.html
-provider1.tenant1.name=default
-provider1.tenant1.domain=default
-provider1.tenant1.userid=admin
-provider1.tenant1.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
-
-
-
-
+provider1.type={{.Values.config.openStackType}}
+provider1.name={{.Values.config.openStackName}}
+provider1.identity={{.Values.config.openStackKeyStoneUrl}}
+provider1.tenant1.name={{.Values.config.openStackServiceTenantName}}
+provider1.tenant1.domain={{.Values.config.openStackDomain}}
+provider1.tenant1.userid={{.Values.config.openStackUserName}}
+provider1.tenant1.password={{.Values.config.openStackEncryptedPassword}}
### ###
### Properties that are not covered or being replaced from default.properties files. Default value for DMaaP IP is 10.0.11.1:3904 ###
@@ -74,23 +70,24 @@ provider1.tenant1.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
# Property below is valid in appc-command-executor-core, appc-license-manager-core, appc-lifecycle-management-core,
# appc-request-handler-core, appc-workflow-management-core (all from the appc-dispatcher package).
-dmaap.poolMembers=dmaap.{{.Release.Namespace}}:3904
+dmaap.poolMembers=message-router.{{.Release.Namespace}}:3904
# appc-event-listener-bundle properties (only defined in src/test of default.properties)
-appc.LCM.poolMembers=dmaap.{{.Release.Namespace}}:3904
+appc.LCM.poolMembers=message-router.{{.Release.Namespace}}:3904
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=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+appc.LCM.provider.pass=admin
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
# properties from appc-netconf-adapter-bundle, appc-dg-common, appc-dmaap-adapter-bundle
-poolMembers=dmaap.{{.Release.Namespace}}:3904
-event.pool.members=dmaap.{{.Release.Namespace}}:3904
+poolMembers=message-router.{{.Release.Namespace}}:3904
+event.pool.members=message-router.{{.Release.Namespace}}:3904
restconf.user=admin
-restconf.pass=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+restconf.pass=admin
# properties found in appc-rest-adapter-bundle, appc-chef-adapter-bundle, appc-iaas-adapter-bundle)
@@ -103,7 +100,7 @@ test.vmid=test
# Port 8774 below is default port for OpenStack's Nova API Service
test.url=http://api.appc.local/vm/9999999/test/99999999-9999-9999-9999-999999999999
#skips hypervisor check which usually occurs during iaas-adapter-bundle startup
-org.openecomp.appc.iaas.skiphypervisorcheck=true
+org.onap.appc.iaas.skiphypervisorcheck=true
# Properties from default.properties in the src/test and src/main paths of appc-asdc-listener-bundle
appc.sdc.host=sdc-be.{{.Release.Namespace}}:8443
@@ -118,15 +115,15 @@ appc.sdc.provider.url=http://localhost:8181/restconf/operations/AsdcMessage:conf
DCAE.dmaap.event.topic.write=EventSenderTest
DCAE.dmaap.appc.username=test
DCAE.dmaap.appc.password=test
-DCAE.dmaap.event.pool.members=dmaap.{{.Release.Namespace}}:3904
+DCAE.dmaap.event.pool.members=message-router.{{.Release.Namespace}}:3904
#OAM Listener
appc.OAM.disabled=true
appc.OAM.provider.url=http://localhost:8181/restconf/operations/appc-oam
-appc.OAM.poolMembers=dmaap.{{.Release.Namespace}}:3904
+appc.OAM.poolMembers=message-router.{{.Release.Namespace}}:3904
appc.OAM.service=ueb
appc.OAM.topic.read=testOAM
appc.OAM.topic.write=testOAM
appc.OAM.client.name=testOAM
appc.OAM.provider.user=admin
-appc.OAM.provider.pass=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+appc.OAM.provider.pass=admin
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/bin/installSdncDb.sh b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/installSdncDb.sh
index 25560fbef4..deca2ff382 100755
--- a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/bin/installSdncDb.sh
+++ b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/installSdncDb.sh
@@ -21,7 +21,7 @@
# ============LICENSE_END=========================================================
###
-SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
+SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk}
MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
SDNC_DB_USER=${SDNC_DB_USER:-sdnctl}
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/bin/startODL.sh b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/startODL.sh
index a84893c00f..a84893c00f 100755
--- a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/bin/startODL.sh
+++ b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/bin/startODL.sh
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/aaiclient.properties b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/aaiclient.properties
index b2f7102d8c..1afbf93b97 100644
--- a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/aaiclient.properties
+++ b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/aaiclient.properties
@@ -39,7 +39,7 @@ org.onap.ccsdk.sli.adaptors.aai.application=openECOMP
#
# Configuration file for A&AI Client
#
-org.onap.ccsdk.sli.adaptors.aai.uri=https://aai-service.{{.Release.Namespace}}:8443
+org.onap.ccsdk.sli.adaptors.aai.uri=https://aai.{{.Release.Namespace}}:8443
# query
@@ -133,8 +133,8 @@ org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v11/service-design-and
# UBB Notify
org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v11/actions/notify
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai-service.{{.Release.Namespace}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai-service.{{.Release.Namespace}}:8443/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai.{{.Release.Namespace}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai.{{.Release.Namespace}}:8443/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
# Service
org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v11/service-design-and-creation/services/service/{service-id}
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/dblib.properties b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/dblib.properties
index f603977013..f603977013 100644
--- a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/dblib.properties
+++ b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/dblib.properties
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/svclogic.properties b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/svclogic.properties
index 908d60a089..908d60a089 100644
--- a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/data/properties/svclogic.properties
+++ b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/data/properties/svclogic.properties
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/svclogic/bin/showActiveGraphs.sh b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/svclogic/bin/showActiveGraphs.sh
index a568dfdc20..a568dfdc20 100755
--- a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/svclogic/bin/showActiveGraphs.sh
+++ b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/svclogic/bin/showActiveGraphs.sh
diff --git a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/svclogic/config/svclogic.properties b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/svclogic/config/svclogic.properties
index 44ae32f9cc..44ae32f9cc 100644
--- a/kubernetes/appc/resources/config/appc/opt/onap/sdnc/svclogic/config/svclogic.properties
+++ b/kubernetes/appc/resources/config/appc/opt/onap/ccsdk/svclogic/config/svclogic.properties
diff --git a/kubernetes/appc/templates/configmap.yaml b/kubernetes/appc/templates/configmap.yaml
index 0574cfcf22..67b409a3e8 100644
--- a/kubernetes/appc/templates/configmap.yaml
+++ b/kubernetes/appc/templates/configmap.yaml
@@ -4,7 +4,7 @@ metadata:
name: {{ include "common.fullname" . }}-onap-sdnc-bin
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/appc/opt/onap/sdnc/bin/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/appc/opt/onap/ccsdk/bin/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
@@ -12,7 +12,7 @@ metadata:
name: {{ include "common.fullname" . }}-onap-sdnc-data-properties
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/appc/opt/onap/sdnc/data/properties/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/appc/opt/onap/ccsdk/data/properties/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
@@ -20,7 +20,7 @@ metadata:
name: {{ include "common.fullname" . }}-onap-sdnc-svclogic-bin
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/appc/opt/onap/sdnc/svclogic/bin/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/appc/opt/onap/ccsdk/svclogic/bin/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
@@ -28,7 +28,7 @@ metadata:
name: {{ include "common.fullname" . }}-onap-sdnc-svclogic-config
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/appc/opt/onap/sdnc/svclogic/config/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/appc/opt/onap/ccsdk/svclogic/config/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
diff --git a/kubernetes/appc/templates/pv.yaml b/kubernetes/appc/templates/pv.yaml
new file mode 100644
index 0000000000..10214097e3
--- /dev/null
+++ b/kubernetes/appc/templates/pv.yaml
@@ -0,0 +1,130 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+{{ $pvNum := default 1 .Values.replicaCount | int }}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data0
+ 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 }}0
+{{ if gt $pvNum 1 }}
+---
+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 -}}
diff --git a/kubernetes/appc/templates/service.yaml b/kubernetes/appc/templates/service.yaml
index 6ffef221a6..6c85985854 100644
--- a/kubernetes/appc/templates/service.yaml
+++ b/kubernetes/appc/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -27,14 +27,17 @@ spec:
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: "{{ .Values.service.name }}-8282"
+ name: "{{ .Values.service.portName }}-8282"
- port: {{ .Values.service.externalPort2 }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: "{{ .Values.service.name }}-1830"
+ name: "{{ .Values.service.portName }}-1830"
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}-8282
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}-1830
{{- end}}
selector:
app: {{ include "common.name" . }}
@@ -43,7 +46,7 @@ spec:
apiVersion: v1
kind: Service
metadata:
- name: {{ .Values.service.name }}-cluster
+ name: {{ include "common.servicename" . }}-cluster
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -52,7 +55,7 @@ metadata:
service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
spec:
ports:
- - name: "{{ .Values.service.name }}-cluster-port"
+ - name: "{{ .Values.service.portName }}-cluster-port"
port: {{ .Values.service.clusterPort }}
clusterIP: None
selector:
diff --git a/kubernetes/appc/templates/statefulset.yaml b/kubernetes/appc/templates/statefulset.yaml
index 6ecfc19342..d2da2ec756 100644
--- a/kubernetes/appc/templates/statefulset.yaml
+++ b/kubernetes/appc/templates/statefulset.yaml
@@ -18,6 +18,8 @@ spec:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
initContainers:
- command:
- /root/ready.py
@@ -35,7 +37,7 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command:
- /opt/appc/bin/startODL.sh
@@ -91,27 +93,29 @@ spec:
- mountPath: /opt/onap/appc/bin/installAppcDb.sh
name: onap-appc-bin
subPath: installAppcDb.sh
- - mountPath: /opt/onap/sdnc/data/properties/dblib.properties
+ - mountPath: /opt/onap/ccsdk/data/properties/dblib.properties
name: onap-sdnc-data-properties
subPath: dblib.properties
- - mountPath: /opt/onap/sdnc/data/properties/svclogic.properties
+ - mountPath: /opt/onap/ccsdk/data/properties/svclogic.properties
name: onap-sdnc-data-properties
subPath: svclogic.properties
- - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties
+ - mountPath: /opt/onap/ccsdk/data/properties/aaiclient.properties
name: onap-sdnc-data-properties
subPath: aaiclient.properties
- - mountPath: /opt/onap/sdnc/svclogic/config/svclogic.properties
+ - mountPath: /opt/onap/ccsdk/svclogic/config/svclogic.properties
name: onap-sdnc-svclogic-config
subPath: svclogic.properties
- - mountPath: /opt/onap/sdnc/svclogic/bin/showActiveGraphs.sh
+ - mountPath: /opt/onap/ccsdk/svclogic/bin/showActiveGraphs.sh
name: onap-sdnc-svclogic-bin
subPath: showActiveGraphs.sh
- - mountPath: /opt/onap/sdnc/bin/startODL.sh
+ - mountPath: /opt/onap/ccsdk/bin/startODL.sh
name: onap-sdnc-bin
subPath: startODL.sh
- - mountPath: /opt/onap/sdnc/bin/installSdncDb.sh
+ - mountPath: /opt/onap/ccsdk/bin/installSdncDb.sh
name: onap-sdnc-bin
subPath: installSdncDb.sh
+ - mountPath: {{ .Values.persistence.mdsalPath }}
+ name: {{ include "common.fullname" . }}-data
- mountPath: /var/log/onap
name: logs
- mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg
@@ -182,5 +186,19 @@ spec:
configMap:
name: {{ include "common.fullname" . }}-onap-sdnc-bin
defaultMode: 0755
- imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key"
+{{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ emptyDir: {}
+{{ else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-data
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-data
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{ end }}
diff --git a/kubernetes/appc/values.yaml b/kubernetes/appc/values.yaml
index b5a13ef87c..79991f51a4 100644
--- a/kubernetes/appc/values.yaml
+++ b/kubernetes/appc/values.yaml
@@ -17,14 +17,12 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
-# If mountPath is over NFS (e.g. /dockerdata-nfs is NFS mounted between the nodes), uncomment following lines.
-# persistence:
-# mountPath: /dockerdata
+ persistence:
+ mountPath: /dockerdata-nfs
#################################################################
# Application configuration defaults.
@@ -45,6 +43,13 @@ config:
dmaapTopic: SUCCESS
logstashServiceName: log-ls
logstashPort: 5044
+ openStackType: OpenStackProvider
+ openStackName: OpenStack
+ openStackKeyStoneUrl: http://localhost:8181/apidoc/explorer/index.html
+ openStackServiceTenantName: default
+ openStackDomain: default
+ openStackUserName: admin
+ openStackEncryptedPassword: admin
mysql:
nameOverride: appc-db
@@ -59,11 +64,14 @@ mysql:
dgbuilder:
nameOverride: appc-dgbuilder
- dbPodName: appc-db
- dbServiceName: appc-dbhost
+ config:
+ dbPodName: appc-db
+ dbServiceName: appc-dbhost
+ service:
+ name: appc-dgbuilder
# default number of instances
-replicaCount: 3
+replicaCount: 1
nodeSelector: {}
@@ -84,6 +92,7 @@ readiness:
service:
type: NodePort
name: appc
+ portName: appc
#targetPort
internalPort: 8181
#port
@@ -94,6 +103,28 @@ service:
nodePort2: 31
clusterPort: 2550
+## 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)
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: appc/mdsal
+ mdsalPath: /opt/opendaylight/current/daexim
+
ingress:
enabled: false
diff --git a/kubernetes/clamp/charts/clamp-dash-es/Chart.yaml b/kubernetes/clamp/charts/clamp-dash-es/Chart.yaml
new file mode 100644
index 0000000000..e18fb77e13
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-es/Chart.yaml
@@ -0,0 +1,20 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+description: ONAP Clamp Dashboard Elasticsearch
+name: clamp-dash-es
+version: 2.0.0
diff --git a/kubernetes/clamp/charts/clamp-dash-es/requirements.yaml b/kubernetes/clamp/charts/clamp-dash-es/requirements.yaml
new file mode 100644
index 0000000000..2202d75b88
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-es/requirements.yaml
@@ -0,0 +1,20 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local' \ No newline at end of file
diff --git a/kubernetes/clamp/charts/clamp-dash-es/resources/config/elasticsearch.yml b/kubernetes/clamp/charts/clamp-dash-es/resources/config/elasticsearch.yml
new file mode 100644
index 0000000000..ab3ec43eba
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-es/resources/config/elasticsearch.yml
@@ -0,0 +1,133 @@
+# ======================== Elasticsearch Configuration =========================
+#
+# NOTE: Elasticsearch comes with reasonable defaults for most settings.
+# Before you set out to tweak and tune the configuration, make sure you
+# understand what are you trying to accomplish and the consequences.
+#
+# The primary way of configuring a node is via this file. This template lists
+# the most important settings you may want to configure for a production cluster.
+#
+# Please consult the documentation for further information on configuration options:
+# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
+#
+# ---------------------------------- Cluster -----------------------------------
+#
+# Name of the Elasticsearch cluster.
+# A node can only join a cluster when it shares its cluster.name with all the other nodes in the cluster.
+# The default name is elasticsearch, but you should change it to an appropriate name which describes the
+# purpose of the cluster.
+#
+cluster.name: "clamp-dashboard"
+#
+# 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.
+# More : https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-transport.html
+#transport.publish_port:$transport.publish_port
+#
+# The host address to publish for nodes in the cluster to connect to.
+# Required for Elasticsearch's nodes running on different cluster nodes.
+# More : https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-transport.html
+#transport.publish_host:$transport.publish_host
+#
+# ------------------------------------ Node ------------------------------------
+#
+# It is better to provide different meaningfull names fot different elastic nodes.
+# By default, Elasticsearch will take the 7 first character of the randomly generated uuid used as the node id.
+# Note that the node id is persisted and does not change when a node restarts
+#
+#node.name: $node.name
+#
+# Add custom attributes to the node:
+#
+#node.attr.rack: r1
+#
+# ----------------------------------- Paths ------------------------------------
+#
+# The location of the data files of each index / shard allocated on the node. Can hold multiple locations separated by coma.
+# In production, we should not keep this default to "/elasticsearch/data", as on upgrading Elasticsearch, directory structure
+# may change & can deal to data loss.
+path.data: /usr/share/elasticsearch/data
+#
+# Elasticsearch's log files location. In production, we should not keep this default to "/elasticsearch/logs",
+# as on upgrading Elasticsearch, directory structure may change.
+path.logs: /usr/share/elasticsearch/logs
+#
+# ----------------------------------- Memory -----------------------------------
+#
+# It is vitally important to the health of your node that none of the JVM is ever swapped out to disk.
+# Lock the memory on startup.
+#
+bootstrap.memory_lock: false
+#
+# Make sure that the heap size is set to about half the memory available
+# on the system and that the owner of the process is allowed to use this
+# limit.
+#
+# Elasticsearch performs poorly when the system is swapping the memory.
+#
+# ---------------------------------- Network -----------------------------------
+#
+# Set the bind address to a specific IP (IPv4 or IPv6):
+# In order to communicate and to form a cluster with nodes on other servers, your node will need to bind to a
+# non-loopback address.
+network.host: 0.0.0.0
+#
+# Set a custom port for HTTP: If required, default is 9200-9300
+#
+#http.port: $http.port
+#
+# For more information, consult the network module documentation.
+#
+# --------------------------------- Discovery ----------------------------------
+#
+# Pass an initial list of hosts to perform discovery when new node is started
+# To form a cluster with nodes on other servers, you have to provide a seed list of other nodes in the cluster
+# that are likely to be live and contactable.
+# By default, Elasticsearch will bind to the available loopback addresses and will scan ports 9300 to 9305 to try
+# to connect to other nodes running on the same server.
+#
+#$discovery.zen.ping.unicast.hosts
+#
+# This setting tells Elasticsearch to not elect a master unless there are enough master-eligible nodes
+# available. Only then will an election take place.
+# Prevent the "split brain" by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1):
+discovery.zen.minimum_master_nodes: 1
+#
+# For more information, consult the zen discovery module documentation.
+#
+# ---------------------------------- Gateway -----------------------------------
+#
+# Block initial recovery after a full cluster restart until N nodes are started:
+#
+#gateway.recover_after_nodes: 3
+#
+# For more information, consult the gateway module documentation.
+#
+# ---------------------------------- Various -----------------------------------
+#
+# Require explicit names when deleting indices:
+#
+#action.destructive_requires_name: true
+# Set a custom port for HTTP: If required, default is 9200-9300
+# This is used for REST APIs
+http.port: {{.Values.service.externalPort}}
+# Port to bind for communication between nodes. Accepts a single value or a range.
+# If a range is specified, the node will bind to the first available port in the range.
+# Defaults to 9300-9400.
+# More info:
+transport.tcp.port: {{.Values.service.externalPort2}}
+
+xpack.graph.enabled: false
+#Set to false to disable X-Pack graph features.
+
+xpack.ml.enabled: false
+#Set to false to disable X-Pack machine learning features.
+
+xpack.monitoring.enabled: false
+#Set to false to disable X-Pack monitoring features.
+
+xpack.security.enabled: false
+#Set to false to disable X-Pack security features.
+
+xpack.watcher.enabled: false
+#Set to false to disable Watcher.
diff --git a/kubernetes/clamp/charts/clamp-dash-es/templates/configmap.yaml b/kubernetes/clamp/charts/clamp-dash-es/templates/configmap.yaml
new file mode 100644
index 0000000000..f41a7c2f87
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-es/templates/configmap.yaml
@@ -0,0 +1,23 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: ConfigMap
+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
diff --git a/kubernetes/clamp/charts/clamp-dash-es/templates/deployment.yaml b/kubernetes/clamp/charts/clamp-dash-es/templates/deployment.yaml
new file mode 100644
index 0000000000..b740091108
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-es/templates/deployment.yaml
@@ -0,0 +1,120 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+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:
+ - /bin/sh
+ - -c
+ - |
+ sysctl -w vm.max_map_count=262144
+ mkdir -p /usr/share/elasticsearch/logs
+ mkdir -p /usr/share/elasticsearch/data
+ chmod -R 777 /usr/share/elasticsearch
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ securityContext:
+ privileged: true
+ image: {{ .Values.global.busyboxRepository | default .Values.busyboxRepository }}/{{ .Values.busyboxImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: init-sysctl
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /usr/share/elasticsearch/logs/
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /usr/share/elasticsearch/data/
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ include "common.servicename" . }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ name: {{ include "common.servicename" . }}2
+# 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.internalPort2 }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/share/elasticsearch/config/elasticsearch.yml
+ name: {{ include "common.fullname" . }}-config
+ subPath: elasticsearch.yml
+ - mountPath: /usr/share/elasticsearch/data/
+ name: {{ include "common.fullname" . }}-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: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: elasticsearch.yml
+ path: elasticsearch.yml
+ - name: {{ include "common.fullname" . }}-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-logs
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPathLogs }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/clamp/charts/clamp-dash-es/templates/pv.yaml b/kubernetes/clamp/charts/clamp-dash-es/templates/pv.yaml
new file mode 100644
index 0000000000..31230a9ed7
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-es/templates/pv.yaml
@@ -0,0 +1,21 @@
+{{- 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/common/mysql/templates/pvc.yaml b/kubernetes/clamp/charts/clamp-dash-es/templates/pvc.yaml
index a2949fef36..c046f4604a 100644
--- a/kubernetes/common/mysql/templates/pvc.yaml
+++ b/kubernetes/clamp/charts/clamp-dash-es/templates/pvc.yaml
@@ -2,10 +2,10 @@
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
- name: {{ include "common.fullname" . }}-data
+ name: {{ include "common.fullname" . }}
namespace: {{ include "common.namespace" . }}
labels:
- app: {{ include "common.fullname" . }}
+ app: {{ include "common.name" . }}
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
release: "{{ .Release.Name }}"
heritage: "{{ .Release.Service }}"
@@ -14,10 +14,12 @@ metadata:
{{ toYaml .Values.persistence.annotations | indent 4 }}
{{- end }}
spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
accessModes:
- {{ .Values.persistence.accessMode }}
resources:
requests:
storage: {{ .Values.persistence.size }}
- storageClassName: "{{ include "common.fullname" . }}-data"
-{{- end -}} \ No newline at end of file
+{{- end -}}
diff --git a/kubernetes/clamp/charts/clamp-dash-es/templates/service.yaml b/kubernetes/clamp/charts/clamp-dash-es/templates/service.yaml
new file mode 100644
index 0000000000..2da42854bc
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-es/templates/service.yaml
@@ -0,0 +1,69 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+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:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.config.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.config.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}-tcp
+ 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.type2 }}
+ ports:
+ {{if eq .Values.service.type2 "NodePort" -}}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.config.portName2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.config.portName2 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/clamp/charts/clamp-dash-es/values.yaml b/kubernetes/clamp/charts/clamp-dash-es/values.yaml
new file mode 100644
index 0000000000..7a8becf66f
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-es/values.yaml
@@ -0,0 +1,117 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# BusyBox image
+busyboxRepository: registry.hub.docker.com
+busyboxImage: library/busybox:latest
+
+# application image
+loggingRepository: docker.elastic.co
+image: elasticsearch/elasticsearch:5.6.9
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## 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)
+ accessMode: ReadWriteMany
+ size: 4Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: clamp/dashboard-elasticsearch/data
+ mountSubPathLogs: clamp
+
+service:
+ type: ClusterIP
+ name: cdash-es
+ portName: cdash-es-rest
+ externalPort: 9200
+ internalPort: 9200
+ type2: ClusterIP
+ portName2: cdash-es-tcp
+ externalPort2: 9300
+ internalPort2: 9300
+
+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/clamp/charts/clamp-dash-kibana/Chart.yaml b/kubernetes/clamp/charts/clamp-dash-kibana/Chart.yaml
new file mode 100644
index 0000000000..df79cc3cc1
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/Chart.yaml
@@ -0,0 +1,20 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+description: ONAP Clamp Dashboard Kibana
+name: clamp-dash-kibana
+version: 2.0.0
diff --git a/kubernetes/clamp/charts/clamp-dash-kibana/requirements.yaml b/kubernetes/clamp/charts/clamp-dash-kibana/requirements.yaml
new file mode 100644
index 0000000000..2202d75b88
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/requirements.yaml
@@ -0,0 +1,20 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local' \ No newline at end of file
diff --git a/kubernetes/clamp/charts/clamp-dash-kibana/resources/config/default.json b/kubernetes/clamp/charts/clamp-dash-kibana/resources/config/default.json
new file mode 100644
index 0000000000..6e8fa5f590
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/resources/config/default.json
@@ -0,0 +1,18 @@
+{"_index":".kibana","_type":"visualization","_id":"AWI967sW8kHy-lwNJZrR","_score":1,"_source":{"title":"CL Total Activity","visState":"{\"title\":\"CL Total Activity\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"sum\",\"schema\":\"metric\",\"params\":{\"field\":\"eventDuration\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk9P-qDjJ4k3sPXRcQ","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"index-pattern","_id":"AWIk7j2UDjJ4k3sPXRaY","_score":1,"_source":{"title":"logstash-*","timeFieldName":"closedLoopAlarmStart","notExpandable":true,"fields":"[{\"name\":\"@timestamp\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"@version\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"@version.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.cloud-region.identity-url\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.cloud-region.identity-url.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.complex.physical-location-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.complex.physical-location-id.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.generic-vnf.service-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.generic-vnf.service-id.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.generic-vnf.vnf-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.generic-vnf.vnf-name.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.tenant.tenant-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.tenant.tenant-id.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.is-closed-loop-disabled\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.is-closed-loop-disabled.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.prov-status\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.prov-status.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.vserver-id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.vserver-id.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.vserver-name\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.vserver-name.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"AAI.vserver.vserver-selflink\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"AAI.vserver.vserver-selflink.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"OPS_CL_timer\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"_id\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"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\":\"closedLoopAlarmEnd\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"closedLoopAlarmStart\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"closedLoopControlName\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"closedLoopControlName.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"closedLoopEventClient\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"closedLoopEventClient.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"closedLoopEventStatus\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"closedLoopEventStatus.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"from\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"from.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.actor\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.actor.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.end\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.message\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.message.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.operation\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.operation.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.outcome\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.outcome.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.start\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.subRequestId\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.subRequestId.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"history.target\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"history.target.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"notification\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"notification.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"notificationTime\",\"type\":\"date\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"policyName\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"policyName.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"policyScope\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"policyScope.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"policyVersion\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"policyVersion.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"requestID\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"requestID.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"target\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"target.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"target_type\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"target_type.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"version\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"version.keyword\",\"type\":\"string\",\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"eventDuration\",\"type\":\"number\",\"count\":0,\"scripted\":true,\"script\":\"if (doc.containsKey('closedLoopEventStatus') && doc.get('closedLoopEventStatus.keyword').value == 'ABATED') { \\n return doc.get('closedLoopAlarmEnd').value- doc.get('closedLoopAlarmStart').value; \\n} \\nreturn null\",\"lang\":\"painless\",\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false}]","fieldFormatMap":"{\"eventDuration\":{\"id\":\"duration\",\"params\":{\"inputFormat\":\"milliseconds\"}}}"}}
+{"_index":".kibana","_type":"visualization","_id":"AWIk-5O-DjJ4k3sPXRd1","_score":1,"_source":{"title":"ClosedLoopActivationsTable","visState":"{\"title\":\"ClosedLoopActivationsTable\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":true,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk8yDIDjJ4k3sPXRbu","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"search","_id":"AWIk9P-qDjJ4k3sPXRcQ","_score":1,"_source":{"title":"ABATED","description":"","columns":["closedLoopAlarmStart","closedLoopAlarmEnd","closedLoopControlName","closedLoopEventStatus","notification"],"sort":["closedLoopAlarmStart","desc"],"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"highlightAll\":true,\"version\":true,\"query\":{\"query_string\":{\"query\":\"closedLoopEventStatus: \\\"ABATED\\\"\",\"analyze_wildcard\":true}},\"filter\":[{\"meta\":{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"negate\":false,\"disabled\":false,\"alias\":\"ABATED\",\"type\":\"phrase\",\"key\":\"closedLoopEventStatus.keyword\",\"value\":\"ABATED\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ABATED\",\"type\":\"phrase\"}}},\"$state\":{\"store\":\"appState\"}},{\"meta\":{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"negate\":false,\"disabled\":true,\"alias\":\"ONSET\",\"type\":\"phrase\",\"key\":\"closedLoopEventStatus.keyword\",\"value\":\"ONSET\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ONSET\",\"type\":\"phrase\"}}},\"$state\":{\"store\":\"appState\"}}]}"}}}
+{"_index":".kibana","_type":"config","_id":"5.6.7","_score":1,"_source":{"buildNum":15610,"defaultIndex":"AWIk7j2UDjJ4k3sPXRaY"}}
+{"_index":".kibana","_type":"visualization","_id":"AWIlBLT7DjJ4k3sPXRe7","_score":1,"_source":{"title":"Closed loop failed action : needs attention","visState":"{\"title\":\"Closed loop failed action : needs attention\",\"type\":\"table\",\"params\":{\"perPage\":5,\"showMeticsAtAllLevels\":false,\"showPartialRows\":false,\"showTotal\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIlAjTaDjJ4k3sPXRe1","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWI91Rvl8kHy-lwNJZrN","_score":1,"_source":{"title":"CL efficiency - CL reponse time","visState":"{\"title\":\"CL efficiency - CL reponse time\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"eventDuration\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk9P-qDjJ4k3sPXRcQ","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJxqD67B2zw2CQxMIeq","_score":1,"_source":{"title":"Top Error Messages","visState":"{\"title\":\"Top Error Messages\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"history.actor.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Actor\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"history.message.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Message\"}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"history.operation.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\",\"customLabel\":\"Operation\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"query\":{\"match_all\":{}},\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWI922pp8kHy-lwNJZrP","_score":1,"_source":{"title":"CLEventDurationTables","visState":"{\"title\":\"CLEventDurationTables\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":false,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"eventDuration\",\"customLabel\":\"Event Duration\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"split\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\",\"row\":true}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"requestID.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk9P-qDjJ4k3sPXRcQ","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWIk_VLEDjJ4k3sPXReS","_score":1,"_source":{"title":"Top 5 closed loop success action","visState":"{\"title\":\"Top 5 closed loop success action\",\"type\":\"table\",\"params\":{\"perPage\":10,\"showPartialRows\":false,\"showMeticsAtAllLevels\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"showTotal\":true,\"totalFunc\":\"sum\",\"type\":\"table\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","description":"","savedSearchId":"AWIk9P-qDjJ4k3sPXRcQ","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJoFDTyr1AwiIiFoV5R","_score":1,"_source":{"title":"Hottest closed loops","visState":"{\"title\":\"Hottest closed loops\",\"type\":\"pie\",\"params\":{\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"isDonut\":false,\"type\":\"pie\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"legendOpen\":true}}","description":"","savedSearchId":"AWIk8yDIDjJ4k3sPXRbu","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"search","_id":"AWJsTEvYr1AwiIiFoV6S","_score":1,"_source":{"title":"FINAL: FAILURE","description":"","columns":["notification"],"sort":["closedLoopAlarmStart","desc"],"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"highlightAll\":true,\"version\":true,\"query\":{\"match_all\":{}},\"filter\":[{\"meta\":{\"negate\":false,\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"type\":\"phrase\",\"key\":\"notification\",\"value\":\"FINAL: FAILURE\",\"disabled\":false,\"alias\":null},\"query\":{\"match\":{\"notification\":{\"query\":\"FINAL: FAILURE\",\"type\":\"phrase\"}}},\"$state\":{\"store\":\"appState\"}}]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJsT-HUr1AwiIiFoV6T","_score":1,"_source":{"title":"CL Efficiency - Failed actions","visState":"{\"title\":\"CL Efficiency - Failed actions\",\"type\":\"gauge\",\"params\":{\"addLegend\":true,\"addTooltip\":true,\"gauge\":{\"backStyle\":\"Full\",\"colorSchema\":\"Green to Red\",\"colorsRange\":[{\"from\":0,\"to\":4},{\"from\":4,\"to\":6},{\"from\":7,\"to\":10}],\"extendRange\":false,\"gaugeColorMode\":\"Labels\",\"gaugeStyle\":\"Full\",\"gaugeType\":\"Arc\",\"invertColors\":false,\"labels\":{\"color\":\"black\",\"show\":true},\"orientation\":\"vertical\",\"percentageMode\":false,\"scale\":{\"color\":\"#333\",\"labels\":false,\"show\":true},\"style\":{\"bgColor\":false,\"bgFill\":\"#eee\",\"bgMask\":false,\"bgWidth\":0.9,\"fontSize\":60,\"labelColor\":true,\"mask\":false,\"maskBars\":50,\"subText\":\"\",\"width\":0.9},\"type\":\"meter\",\"verticalSplit\":true},\"isDisplayWarning\":true,\"type\":\"gauge\"},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}","uiStateJSON":"{\"vis\":{\"defaultColors\":{\"0 - 4\":\"rgb(0,104,55)\",\"4 - 6\":\"rgb(255,255,190)\",\"7 - 10\":\"rgb(165,0,38)\"}}}","description":"","savedSearchId":"AWJsTEvYr1AwiIiFoV6S","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[]}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJoJdIjr1AwiIiFoV5T","_score":1,"_source":{"title":"CL Onset/Abated Variance","visState":"{\"title\":\"CL Onset/Abated Variance\",\"type\":\"histogram\",\"params\":{\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"type\":\"category\",\"position\":\"left\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\"},\"labels\":{\"show\":true,\"rotate\":0,\"filter\":false,\"truncate\":200},\"title\":{\"text\":\"Closed Loop\"}}],\"valueAxes\":[{\"id\":\"ValueAxis-3\",\"name\":\"BottomAxis-1\",\"type\":\"value\",\"position\":\"bottom\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\",\"mode\":\"normal\"},\"labels\":{\"show\":true,\"rotate\":75,\"filter\":true,\"truncate\":100},\"title\":{\"text\":\"Count\"}}],\"seriesParams\":[{\"show\":true,\"type\":\"histogram\",\"mode\":\"normal\",\"data\":{\"label\":\"Count\",\"id\":\"1\"},\"valueAxis\":\"ValueAxis-3\",\"drawLinesBetweenPoints\":true,\"showCircles\":true}],\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"times\":[],\"addTimeMarker\":false,\"type\":\"horizontal_bar\",\"radiusRatio\":\"13\",\"orderBucketsBySum\":false},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"count\",\"schema\":\"metric\",\"params\":{}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\",\"customLabel\":\"Closed Loop\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"closedLoopEventStatus.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\"}}],\"listeners\":{}}","uiStateJSON":"{}","description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"query\":{\"match_all\":{}},\"filter\":[]}"}}}
+{"_index":".kibana","_type":"search","_id":"AWIlAjTaDjJ4k3sPXRe1","_score":1,"_source":{"title":"FAILURE NOTIFICATION","description":"","columns":["closedLoopAlarmStart","closedLoopAlarmEnd","closedLoopControlName","closedLoopEventStatus","notification"],"sort":["closedLoopAlarmStart","desc"],"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"highlightAll\":true,\"version\":true,\"query\":{\"match_all\":{}},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":\"ABATED\",\"disabled\":true,\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"key\":\"closedLoopEventStatus.keyword\",\"negate\":false,\"type\":\"phrase\",\"value\":\"ABATED\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ABATED\",\"type\":\"phrase\"}}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":\"ONSET\",\"disabled\":true,\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"key\":\"closedLoopEventStatus.keyword\",\"negate\":false,\"type\":\"phrase\",\"value\":\"ONSET\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ONSET\",\"type\":\"phrase\"}}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":\"FAILURE NOTIFICATION\",\"disabled\":false,\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"key\":\"notification.keyword\",\"negate\":false,\"type\":\"phrase\",\"value\":\"FINAL: FAILURE\"},\"query\":{\"match\":{\"notification.keyword\":{\"query\":\"FINAL: FAILURE\",\"type\":\"phrase\"}}}}]}"}}}
+{"_index":".kibana","_type":"search","_id":"AWIk8yDIDjJ4k3sPXRbu","_score":1,"_source":{"title":"ONSET","description":"","columns":["closedLoopAlarmStart","closedLoopAlarmEnd","closedLoopControlName","closedLoopEventStatus","notification"],"sort":["closedLoopAlarmStart","desc"],"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"highlightAll\":true,\"version\":true,\"query\":{\"match_all\":{}},\"filter\":[{\"meta\":{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"negate\":false,\"disabled\":false,\"alias\":null,\"type\":\"phrase\",\"key\":\"closedLoopEventStatus.keyword\",\"value\":\"ONSET\"},\"query\":{\"match\":{\"closedLoopEventStatus.keyword\":{\"query\":\"ONSET\",\"type\":\"phrase\"}}},\"$state\":{\"store\":\"appState\"}}]}"}}}
+{"_index":".kibana","_type":"dashboard","_id":"AWI-9KyytmDBG_mksMZL","_score":1,"_source":{"title":"CLAMP Dashboard","description":"","panelsJSON":"[{\"col\":5,\"id\":\"AWIk_VLEDjJ4k3sPXReS\",\"panelIndex\":1,\"row\":1,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":9,\"id\":\"AWIlBLT7DjJ4k3sPXRe7\",\"panelIndex\":2,\"row\":1,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"AWI967sW8kHy-lwNJZrR\",\"panelIndex\":3,\"row\":7,\"size_x\":5,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"AWI91Rvl8kHy-lwNJZrN\",\"panelIndex\":4,\"row\":4,\"size_x\":5,\"size_y\":3,\"type\":\"visualization\"},{\"col\":1,\"id\":\"AWJoFDTyr1AwiIiFoV5R\",\"panelIndex\":5,\"row\":1,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":9,\"id\":\"AWJoJdIjr1AwiIiFoV5T\",\"panelIndex\":6,\"row\":7,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":9,\"id\":\"AWJoMx0_r1AwiIiFoV5V\",\"panelIndex\":7,\"row\":4,\"size_x\":4,\"size_y\":3,\"type\":\"visualization\"},{\"col\":6,\"id\":\"AWJsT-HUr1AwiIiFoV6T\",\"panelIndex\":8,\"row\":4,\"size_x\":3,\"size_y\":6,\"type\":\"visualization\"},{\"size_x\":6,\"size_y\":3,\"panelIndex\":9,\"type\":\"visualization\",\"id\":\"AWJxqD67B2zw2CQxMIeq\",\"col\":1,\"row\":10}]","optionsJSON":"{\"darkTheme\":false}","uiStateJSON":"{\"P-1\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-2\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-3\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-4\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}},\"P-6\":{\"vis\":{\"legendOpen\":true}},\"P-8\":{\"vis\":{\"defaultColors\":{\"0 - 4\":\"rgb(0,104,55)\",\"4 - 6\":\"rgb(255,255,190)\",\"7 - 10\":\"rgb(165,0,38)\"},\"legendOpen\":false}},\"P-9\":{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}}","timeRestore":false,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"filter\":[{\"query\":{\"match_all\":{}}}],\"highlightAll\":true,\"version\":true}"}}}
+{"_index":".kibana","_type":"visualization","_id":"AWJoMx0_r1AwiIiFoV5V","_score":1,"_source":{"title":"CL Efficiency - Total Activity","visState":"{\"title\":\"CL Efficiency - Total Activity\",\"type\":\"line\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"labels\":{\"show\":true,\"truncate\":100},\"position\":\"bottom\",\"scale\":{\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{\"text\":\"closedLoopAlarmStart per 10 seconds\"},\"type\":\"category\"}],\"grid\":{\"categoryLines\":false,\"style\":{\"color\":\"#eee\"}},\"legendPosition\":\"right\",\"seriesParams\":[{\"data\":{\"id\":\"1\",\"label\":\"Sum of eventDuration\"},\"drawLinesBetweenPoints\":true,\"interpolate\":\"cardinal\",\"lineWidth\":2,\"mode\":\"normal\",\"show\":\"true\",\"showCircles\":true,\"type\":\"line\",\"valueAxis\":\"ValueAxis-1\"}],\"times\":[],\"type\":\"line\",\"valueAxes\":[{\"id\":\"ValueAxis-1\",\"labels\":{\"filter\":false,\"rotate\":0,\"show\":true,\"truncate\":100},\"name\":\"LeftAxis-1\",\"position\":\"left\",\"scale\":{\"defaultYExtents\":true,\"mode\":\"normal\",\"setYExtents\":false,\"type\":\"linear\"},\"show\":true,\"style\":{},\"title\":{\"text\":\"Sum of eventDuration\"},\"type\":\"value\"}]},\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"sum\",\"schema\":\"metric\",\"params\":{\"field\":\"eventDuration\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"closedLoopControlName.keyword\",\"size\":5,\"order\":\"desc\",\"orderBy\":\"_term\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"date_histogram\",\"schema\":\"segment\",\"params\":{\"field\":\"closedLoopAlarmStart\",\"interval\":\"auto\",\"customInterval\":\"2h\",\"min_doc_count\":0,\"extended_bounds\":{}}}],\"listeners\":{}}","uiStateJSON":"{}","description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"query\":{\"match_all\":{}},\"filter\":[{\"meta\":{\"index\":\"AWIk7j2UDjJ4k3sPXRaY\",\"negate\":false,\"disabled\":false,\"alias\":null,\"type\":\"exists\",\"key\":\"closedLoopAlarmEnd\",\"value\":\"exists\"},\"exists\":{\"field\":\"closedLoopAlarmEnd\"},\"$state\":{\"store\":\"appState\"}}]}"}}}
diff --git a/kubernetes/clamp/charts/clamp-dash-kibana/resources/config/kibana.yml b/kubernetes/clamp/charts/clamp-dash-kibana/resources/config/kibana.yml
new file mode 100644
index 0000000000..65d29dbd04
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/resources/config/kibana.yml
@@ -0,0 +1,114 @@
+xpack.graph.enabled: false
+#Set to false to disable X-Pack graph features.
+xpack.ml.enabled: false
+#Set to false to disable X-Pack machine learning features.
+xpack.monitoring.enabled: false
+#Set to false to disable X-Pack monitoring features.
+xpack.reporting.enabled: false
+#Set to false to disable X-Pack reporting features.
+xpack.security.enabled: false
+#Set to false to disable X-Pack security features.
+xpack.watcher.enabled: false
+#Set to false to disable Watcher.
+# Kibana is served by a back end server. This setting specifies the port to use.
+server.port: {{.Values.service.externalPort}}
+
+# Specifies the address to which the Kibana server will bind. IP addresses and host names are both valid values.
+# The default is 'localhost', which usually means remote machines will not be able to connect.
+# To allow connections from remote users, set this parameter to a non-loopback address.
+server.host: "0.0.0.0"
+
+# Enables you to specify a path to mount Kibana at if you are running behind a proxy. This only affects
+# the URLs generated by Kibana, your proxy is expected to remove the basePath value before forwarding requests
+# to Kibana. This setting cannot end in a slash.
+#server.basePath: ""
+
+# The maximum payload size in bytes for incoming server requests.
+#server.maxPayloadBytes: 1048576
+
+# The Kibana server's name. This is used for display purposes.
+server.name: "Clamp Dashboard"
+
+# The URL of the Elasticsearch instance to use for all your queries.
+elasticsearch.url: "http://{{.Values.config.elasticsearchServiceName}}.{{ include "common.namespace" . }}:{{.Values.config.elasticsearchPort}}"
+# When this setting's value is true Kibana uses the hostname specified in the server.host
+# setting. When the value of this setting is false, Kibana uses the hostname of the host
+# that connects to this Kibana instance.
+#elasticsearch.preserveHost: true
+
+# Kibana uses an index in Elasticsearch to store saved searches, visualizations and
+# dashboards. Kibana creates a new index if the index doesn't already exist.
+#kibana.index: ".kibana"
+
+# The default application to load.
+#kibana.defaultAppId: "discover"
+
+# If your Elasticsearch is protected with basic authentication, these settings provide
+# the username and password that the Kibana server uses to perform maintenance on the Kibana
+# index at startup. Your Kibana users still need to authenticate with Elasticsearch, which
+# is proxied through the Kibana server.
+#elasticsearch.username: "elastic"
+#elasticsearch.password: "changeme"
+# Enables SSL and paths to the PEM-format SSL certificate and SSL key files, respectively.
+# These settings enable SSL for outgoing requests from the Kibana server to the browser.
+#server.ssl.enabled: $server_ssl_enabled
+#server.ssl.certificate: $server_ssl_certificate
+#server.ssl.key: $server_ssl_key
+
+# Optional settings that provide the paths to the PEM-format SSL certificate and key files.
+# These files validate that your Elasticsearch backend uses the same key files.
+#elasticsearch.ssl.certificate: $elasticsearch_ssl_certificate
+#elasticsearch.ssl.key: $elasticsearch_ssl_key
+
+# Optional setting that enables you to specify a path to the PEM file for the certificate
+# authority for your Elasticsearch instance.
+#elasticsearch.ssl.certificateAuthorities: $elasticsearch_ssl_certificateAuthorities
+
+# To disregard the validity of SSL certificates, change this setting's value to 'none'.
+#elasticsearch.ssl.verificationMode: $elasticsearch_ssl_verificationMode
+
+# Time in milliseconds to wait for Elasticsearch to respond to pings. Defaults to the value of
+# the elasticsearch.requestTimeout setting.
+#elasticsearch.pingTimeout: 1500
+
+# Time in milliseconds to wait for responses from the back end or Elasticsearch. This value
+# must be a positive integer.
+#elasticsearch.requestTimeout: 30000
+
+# List of Kibana client-side headers to send to Elasticsearch. To send *no* client-side
+# headers, set this value to [] (an empty list).
+#elasticsearch.requestHeadersWhitelist: [ authorization ]
+
+# Header names and values that are sent to Elasticsearch. Any custom headers cannot be overwritten
+# by client-side headers, regardless of the elasticsearch.requestHeadersWhitelist configuration.
+#elasticsearch.customHeaders: {}
+
+# Time in milliseconds for Elasticsearch to wait for responses from shards. Set to 0 to disable.
+#elasticsearch.shardTimeout: 0
+
+# Time in milliseconds to wait for Elasticsearch at Kibana startup before retrying.
+#elasticsearch.startupTimeout: 5000
+
+# Specifies the path where Kibana creates the process ID file.
+#pid.file: /var/run/kibana.pid
+
+# Enables you specify a file where Kibana stores log output.
+#logging.dest: stdout
+
+# Set the value of this setting to true to suppress all logging output.
+#logging.silent: false
+
+# Set the value of this setting to true to suppress all logging output other than error messages.
+#logging.quiet: false
+
+# Set the value of this setting to true to log all events, including system usage information
+# and all requests.
+#logging.verbose: false
+
+# Set the interval in milliseconds to sample system and process performance
+# metrics. Minimum is 100ms. Defaults to 5000.
+#ops.interval: 5000
+
+# The default locale. This locale can be used in certain circumstances to substitute any missing
+# translations.
+#i18n.defaultLocale: "en"
diff --git a/kubernetes/clamp/charts/clamp-dash-kibana/templates/configmap.yaml b/kubernetes/clamp/charts/clamp-dash-kibana/templates/configmap.yaml
new file mode 100644
index 0000000000..7339832f36
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/templates/configmap.yaml
@@ -0,0 +1,23 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/clamp/charts/clamp-dash-kibana/templates/deployment.yaml b/kubernetes/clamp/charts/clamp-dash-kibana/templates/deployment.yaml
new file mode 100644
index 0000000000..16fad5195c
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/templates/deployment.yaml
@@ -0,0 +1,120 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+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
+ - clamp-dash-es
+ 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
+ - args:
+ - --output=http://{{.Values.config.elasticsearchServiceName}}.{{ include "common.namespace" . }}:{{.Values.config.elasticsearchPort}}/.kibana
+ - --input=/config/default.json
+ - --type=data
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.configRepository }}/{{ .Values.configImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-config
+ volumeMounts:
+ - mountPath: /config/default.json
+ name: {{ include "common.fullname" . }}
+ subPath: default.json
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ include "common.servicename" . }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+# 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 -}}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/share/kibana/config/kibana.yml
+ name: {{ include "common.fullname" . }}
+ subPath: kibana.yml
+ 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: {{ include "common.fullname" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: kibana.yml
+ path: kibana.yml
+ - key: default.json
+ path: default.json
+
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/clamp/charts/clamp-dash-kibana/templates/service.yaml b/kubernetes/clamp/charts/clamp-dash-kibana/templates/service.yaml
new file mode 100644
index 0000000000..9d0a51149e
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/templates/service.yaml
@@ -0,0 +1,42 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+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:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.config.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.config.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/clamp/charts/clamp-dash-kibana/values.yaml b/kubernetes/clamp/charts/clamp-dash-kibana/values.yaml
new file mode 100644
index 0000000000..60a504d515
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-kibana/values.yaml
@@ -0,0 +1,102 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.1.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# Configuration image
+configRepository: docker.io
+configImage: taskrabbit/elasticsearch-dump
+
+
+# BusyBox image
+busyboxRepository: registry.hub.docker.com
+busyboxImage: library/busybox:latest
+
+# application image
+loggingRepository: docker.elastic.co
+image: kibana/kibana:5.6.9
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ elasticsearchServiceName: cdash-es
+ elasticsearchPort: 9200
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 360
+ 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:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: NodePort
+ name: cdash-kibana
+ portName: cdash-kibana-http
+ externalPort: 5601
+ internalPort: 5601
+ nodePort: 90
+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/clamp/charts/clamp-dash-logstash/Chart.yaml b/kubernetes/clamp/charts/clamp-dash-logstash/Chart.yaml
new file mode 100644
index 0000000000..d7a84183de
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/Chart.yaml
@@ -0,0 +1,20 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+description: ONAP Clamp Dashboard Logstash
+name: clamp-dash-logstash
+version: 2.0.0
diff --git a/kubernetes/clamp/charts/clamp-dash-logstash/requirements.yaml b/kubernetes/clamp/charts/clamp-dash-logstash/requirements.yaml
new file mode 100644
index 0000000000..2202d75b88
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/requirements.yaml
@@ -0,0 +1,20 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local' \ No newline at end of file
diff --git a/kubernetes/clamp/charts/clamp-dash-logstash/resources/config/logstash.yml b/kubernetes/clamp/charts/clamp-dash-logstash/resources/config/logstash.yml
new file mode 100644
index 0000000000..3ddf63f9cc
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/resources/config/logstash.yml
@@ -0,0 +1,16 @@
+http.host: "0.0.0.0"
+## Path where pipeline configurations reside
+path.config: /usr/share/logstash/pipeline
+
+## Type of queue : memeory based or file based
+#queue.type: persisted
+## Size of queue
+#queue.max_bytes: 1024mb
+## Setting true makes logstash check periodically for change in pipeline configurations
+config.reload.automatic: true
+
+## xpack configurations
+#xpack.monitoring.elasticsearch.url: ["http://10.247.186.12:9200", "http://10.247.186.13:9200"]
+#xpack.monitoring.elasticsearch.username: elastic
+#xpack.monitoring.elasticsearch.password: changeme
+xpack.monitoring.enabled: false
diff --git a/kubernetes/clamp/charts/clamp-dash-logstash/resources/config/pipeline.conf b/kubernetes/clamp/charts/clamp-dash-logstash/resources/config/pipeline.conf
new file mode 100644
index 0000000000..aa087e3445
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/resources/config/pipeline.conf
@@ -0,0 +1,108 @@
+input {
+ http_poller {
+ urls => {
+ event_queue => {
+ method => get
+ url => "${dmaap_base_url}/events/${event_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
+ headers => {
+ Accept => "application/json"
+ }
+ add_field => { "topic" => "${event_topic}" }
+ }
+ notification_queue => {
+ method => get
+ url => "${dmaap_base_url}/events/${notification_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
+ headers => {
+ Accept => "application/json"
+ }
+ add_field => { "topic" => "${notification_topic}" }
+ }
+ request_queue => {
+ method => get
+ url => "${dmaap_base_url}/events/${request_topic}/${dmaap_consumer_group}/${dmaap_consumer_id}?timeout=15000"
+ headers => {
+ Accept => "application/json"
+ }
+ add_field => { "topic" => "${request_topic}" }
+ }
+ }
+ socket_timeout => 30
+ request_timeout => 30
+ interval => 60
+ codec => "plain"
+ }
+}
+
+filter {
+ # avoid noise if no entry in the list
+ if [message] == "[]" {
+ drop { }
+ }
+
+ # parse json, split the list into multiple events, and parse each event
+ json {
+ source => "[message]"
+ target => "message"
+ }
+ split {
+ field => "message"
+ }
+ json {
+ source => "message"
+ }
+ mutate { remove_field => [ "message" ] }
+ # express timestamps in milliseconds instead of microseconds
+ ruby {
+ code => "event.set('closedLoopAlarmStart', Integer(event.get('closedLoopAlarmStart')))"
+ }
+ date {
+ match => [ "closedLoopAlarmStart", UNIX_MS ]
+ target => "closedLoopAlarmStart"
+ }
+
+ if [closedLoopAlarmEnd] {
+ ruby {
+ code => "event.set('closedLoopAlarmEnd', Integer(event.get('closedLoopAlarmEnd')))"
+ }
+ date {
+ match => [ "closedLoopAlarmEnd", UNIX_MS ]
+ target => "closedLoopAlarmEnd"
+ }
+
+ }
+ #"yyyy-MM-dd HH:mm:ss"
+ if [notificationTime] {
+ mutate {
+ gsub => [
+ "notificationTime", " ", "T"
+ ]
+ }
+ date {
+ match => [ "notificationTime", ISO8601 ]
+ target => "notificationTime"
+ }
+ }
+}
+output {
+ stdout {
+ codec => rubydebug
+ }
+
+ if [http_request_failure] {
+ elasticsearch {
+ codec => "json"
+ hosts => ["${elasticsearch_base_url}"]
+ index => "errors-%{+YYYY.MM.DD}"
+ doc_as_upsert => true
+ }
+ } else {
+ elasticsearch {
+ codec => "json"
+ hosts => ["${elasticsearch_base_url}"]
+ index => "logstash-%{+YYYY.MM.DD}" # creates daily indexes
+ doc_as_upsert => true
+
+ }
+ }
+
+}
diff --git a/kubernetes/clamp/charts/clamp-dash-logstash/templates/configmap.yaml b/kubernetes/clamp/charts/clamp-dash-logstash/templates/configmap.yaml
new file mode 100644
index 0000000000..7339832f36
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/templates/configmap.yaml
@@ -0,0 +1,23 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/clamp/charts/clamp-dash-logstash/templates/deployment.yaml b/kubernetes/clamp/charts/clamp-dash-logstash/templates/deployment.yaml
new file mode 100644
index 0000000000..3cfdae3aeb
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/templates/deployment.yaml
@@ -0,0 +1,119 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+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
+ - clamp-dash-es
+ 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: "{{ .Values.global.loggingRepository| default .Values.loggingRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: dmaap_consumer_group
+ value: "{{ .Values.config.dmaapConsumerGroup }}"
+ - name: dmaap_consumer_id
+ value: "{{ .Values.config.dmaapConsumerId }}"
+ - name: event_topic
+ value: "{{ .Values.config.eventTopic }}"
+ - name: notification_topic
+ value: "{{ .Values.config.notificationTopic }}"
+ - name: request_topic
+ value: "{{ .Values.config.requestTopic }}"
+ - name: dmaap_base_url
+ value: {{ .Values.config.dmaapScheme }}://{{ .Values.config.dmaapHost }}.{{ include "common.namespace" . }}:{{ .Values.config.dmaapPort }}
+ - name: elasticsearch_base_url
+ value: "http://{{.Values.config.elasticsearchServiceName}}.{{.Release.Namespace}}.svc.cluster.local:{{.Values.config.elasticsearchPort}}"
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ include "common.servicename" . }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+# 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 -}}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/share/logstash/config/logstash.yml
+ name: {{ include "common.fullname" . }}
+ subPath: logstash.yml
+ - mountPath: /usr/share/logstash/pipeline/logstash.conf
+ name: {{ include "common.fullname" . }}
+ subPath: pipeline.conf
+ 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: {{ include "common.fullname" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: logstash.yml
+ path: logstash.yml
+ - key: pipeline.conf
+ path: pipeline.conf
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/clamp/charts/clamp-dash-logstash/templates/service.yaml b/kubernetes/clamp/charts/clamp-dash-logstash/templates/service.yaml
new file mode 100644
index 0000000000..9d0a51149e
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/templates/service.yaml
@@ -0,0 +1,42 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+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:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.config.portName }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.config.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/clamp/charts/clamp-dash-logstash/values.yaml b/kubernetes/clamp/charts/clamp-dash-logstash/values.yaml
new file mode 100644
index 0000000000..bb12210398
--- /dev/null
+++ b/kubernetes/clamp/charts/clamp-dash-logstash/values.yaml
@@ -0,0 +1,100 @@
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.1.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# application image
+loggingRepository: docker.elastic.co
+image: logstash/logstash:5.6.9
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ elasticsearchServiceName: cdash-es
+ elasticsearchPort: 9200
+ dmaapHost: message-router.{{ include "common.namespace" . }}
+ dmaapScheme: https
+ dmaapPort: 3905
+ dmaapConsumerGroup: "clampdashboard"
+ dmaapConsumerId: "clampdashboard"
+ eventTopic: "DCAE-CL-EVENT"
+ notificationTopic: "POLICY-CL-MGT"
+ requestTopic: "APPC-CL"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 120
+ 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:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: ClusterIP
+ name: cdash-ls
+ portName: cdash-ls-healthcheck
+ externalPort: 9600
+ internalPort: 9600
+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/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql
index 3312daf56f..7530d5a161 100644
--- a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql
+++ b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql
@@ -1,3 +1,18 @@
+/* Copyright © 2017 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.
+*/
+
#
# Create CLDS database objects (tables, etc.)
#
diff --git a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-stored-procedures.sql b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-stored-procedures.sql
index 112cb2b55e..fb131cc371 100644
--- a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-stored-procedures.sql
+++ b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-stored-procedures.sql
@@ -1,3 +1,18 @@
+/* Copyright © 2017 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.
+*/
+
#
# CLDS stored procedures
#
diff --git a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/drop/clds-drop-db-objects.sql b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/drop/clds-drop-db-objects.sql
index 478eaf0e09..eec9d52160 100644
--- a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/drop/clds-drop-db-objects.sql
+++ b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/drop/clds-drop-db-objects.sql
@@ -1,3 +1,18 @@
+/* Copyright © 2017 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.
+*/
+
#
# Drop CLDS database objects (tables, etc.)
#
diff --git a/kubernetes/clamp/charts/mariadb/templates/NOTES.txt b/kubernetes/clamp/charts/mariadb/templates/NOTES.txt
new file mode 100644
index 0000000000..57947a65da
--- /dev/null
+++ b/kubernetes/clamp/charts/mariadb/templates/NOTES.txt
@@ -0,0 +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.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 "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/clamp/charts/mariadb/templates/deployment.yaml b/kubernetes/clamp/charts/mariadb/templates/deployment.yaml
index e1db655f41..07dcc3607c 100644
--- a/kubernetes/clamp/charts/mariadb/templates/deployment.yaml
+++ b/kubernetes/clamp/charts/mariadb/templates/deployment.yaml
@@ -32,7 +32,7 @@ spec:
spec:
containers:
- name: {{ include "common.name" . }}
- image: {{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
diff --git a/kubernetes/clamp/charts/mariadb/templates/service.yaml b/kubernetes/clamp/charts/mariadb/templates/service.yaml
index 6995f078ee..55221b13f7 100644
--- a/kubernetes/clamp/charts/mariadb/templates/service.yaml
+++ b/kubernetes/clamp/charts/mariadb/templates/service.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -32,7 +32,7 @@ spec:
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
{{- end}}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
- release: {{ .Release.Name }} \ No newline at end of file
+ release: {{ .Release.Name }}
diff --git a/kubernetes/clamp/charts/mariadb/values.yaml b/kubernetes/clamp/charts/mariadb/values.yaml
index a35c854973..da62319cb4 100644
--- a/kubernetes/clamp/charts/mariadb/values.yaml
+++ b/kubernetes/clamp/charts/mariadb/values.yaml
@@ -17,7 +17,6 @@
#################################################################
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
persistence: {}
@@ -76,7 +75,8 @@ persistence:
service:
type: ClusterIP
- name: mariadb
+ name: clampdb
+ portName: clampdb
internalPort: 3306
externalPort: 3306
diff --git a/kubernetes/clamp/resources/config/sdc-controllers-config.json b/kubernetes/clamp/resources/config/sdc-controllers-config.json
new file mode 100644
index 0000000000..3adda95c11
--- /dev/null
+++ b/kubernetes/clamp/resources/config/sdc-controllers-config.json
@@ -0,0 +1,18 @@
+{
+ "sdc-connections":{
+ "sdc-controller":{
+ "user": "clamp",
+ "consumerGroup": "clamp",
+ "consumerId": "clamp",
+ "environmentName": "AUTO",
+ "sdcAddress": "sdc-be.{{ include "common.namespace" . }}:8443",
+ "password": "b7acccda32b98c5bb7acccda32b98c5b05D511BD6D93626E90D18E9D24D9B78CD34C7EE8012F0A189A28763E82271E50A5D4EC10C7D93E06E0A2D27CAE66B981",
+ "pollingInterval":30,
+ "pollingTimeout":30,
+ "activateServerTLSAuth":"false",
+ "keyStorePassword":"",
+ "keyStorePath":"",
+ "messageBusAddresses":["message-router.{{ include "common.namespace" . }}"]
+ }
+ }
+}
diff --git a/kubernetes/clamp/templates/NOTES.txt b/kubernetes/clamp/templates/NOTES.txt
index 91d8ed42f1..57947a65da 100644
--- a/kubernetes/clamp/templates/NOTES.txt
+++ b/kubernetes/clamp/templates/NOTES.txt
@@ -13,7 +13,7 @@
export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
{{- else if contains "ClusterIP" .Values.service.type }}
- export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ template "so.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ 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.service.internalPort }}
{{- end }}
diff --git a/kubernetes/clamp/templates/configmap.yaml b/kubernetes/clamp/templates/configmap.yaml
index b680487fc0..7a66c64755 100644
--- a/kubernetes/clamp/templates/configmap.yaml
+++ b/kubernetes/clamp/templates/configmap.yaml
@@ -23,4 +23,5 @@ metadata:
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
- spring_application_json: {{ .Values.config.springApplicationJson | quote }}
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+ spring_application_json: {{ tpl .Values.config.springApplicationJson . | quote }}
diff --git a/kubernetes/clamp/templates/deployment.yaml b/kubernetes/clamp/templates/deployment.yaml
index 20beabfb0c..38eabeb968 100644
--- a/kubernetes/clamp/templates/deployment.yaml
+++ b/kubernetes/clamp/templates/deployment.yaml
@@ -47,7 +47,7 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
@@ -65,6 +65,10 @@ spec:
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /opt/clamp/sdc-controllers-config.json
+ name: {{ include "common.fullname" . }}-config
+ subPath: sdc-controllers-config.json
env:
- name: SPRING_APPLICATION_JSON
valueFrom:
@@ -81,5 +85,12 @@ spec:
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: sdc-controllers-config.json
+ path: sdc-controllers-config.json
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/clamp/templates/service.yaml b/kubernetes/clamp/templates/service.yaml
index 59187228d1..ce29de9aee 100644
--- a/kubernetes/clamp/templates/service.yaml
+++ b/kubernetes/clamp/templates/service.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -28,11 +28,11 @@ spec:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/clamp/values.yaml b/kubernetes/clamp/values.yaml
index 8e01f4210f..71752fcfc6 100644
--- a/kubernetes/clamp/values.yaml
+++ b/kubernetes/clamp/values.yaml
@@ -17,9 +17,8 @@
#################################################################
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.0.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
@@ -28,7 +27,7 @@ subChartsOnly:
# application image
repository: nexus3.onap.org:10001
-image: onap/clamp
+image: onap/clamp:2.0-STAGING-latest
pullPolicy: Always
# flag to enable debugging - application support required
@@ -40,10 +39,22 @@ debugEnabled: false
config:
mysqlPassword: strong_pitchou
dataRootDir: /dockerdata-nfs
- springApplicationJson: '{
- "spring.datasource.camunda.url": "jdbc:mariadb:sequential://clamp-mariadb.{{include "common.namespace" .}}:3306/camundabpm?verifyServerCertificate=false&useSSL=false&requireSSL=false&autoReconnect=true&retriesAllDown=2147483647&failoverLoopRetries=2147483647",
- "spring.datasource.cldsdb.url": "jdbc:mariadb:sequential://clamp-mariadb.{{include "common.namespace" .}}:3306/cldsdb4?verifyServerCertificate=false&useSSL=false&requireSSL=false&autoReconnect=true&retriesAllDown=2147483647&failoverLoopRetries=2147483647"
- }'
+ springApplicationJson: >
+ {
+ "spring.datasource.cldsdb.url": "jdbc:mariadb:sequential://clampdb.{{ include "common.namespace" . }}:3306/cldsdb4?autoReconnect=true&connectTimeout=10000&socketTimeout=10000&retriesAllDown=3",
+ "clamp.config.sdc.catalog.url": "http://sdc-be.{{ include "common.namespace" . }}:8080/sdc/v1/catalog/",
+ "clamp.config.sdc.hostUrl": "http://sdc-be.{{ include "common.namespace" . }}:8080/",
+ "clamp.config.sdc.serviceUrl": "http://sdc-be.{{ include "common.namespace" . }}:8080/sdc/v1/catalog/services",
+ "clamp.config.sdc.serviceUsername": "clamp",
+ "clamp.config.sdc.servicePassword": "b7acccda32b98c5bb7acccda32b98c5b05D511BD6D93626E90D18E9D24D9B78CD34C7EE8012F0A189A28763E82271E50A5D4EC10C7D93E06E0A2D27CAE66B981",
+ "clamp.config.files.sdcController": "file:/opt/clamp/sdc-controllers-config.json",
+ "clamp.config.dcae.inventory.url": "http://dcaegen2.{{ include "common.namespace" . }}:8080",
+ "clamp.config.dcae.dispatcher.url": "http://dcaegen2.{{ include "common.namespace" . }}:8080",
+ "clamp.config.policy.pdpUrl1": "https://pdp.{{ include "common.namespace" . }}:9091/pdp/ , testpdp, alpha123",
+ "clamp.config.policy.pdpUrl2": "https://pdp.{{ include "common.namespace" . }}:9091/pdp/ , testpdp, alpha123",
+ "clamp.config.policy.papUrl": "https://pap.{{ include "common.namespace" . }}:8443/pap/ , testpap, alpha123",
+ "clamp.config.policy.clientKey": "5CE79532B3A2CB4D132FC0C04BF916A7"
+ }
# subchart configuration
mariadb:
@@ -59,7 +70,7 @@ affinity: {}
# probe configuration parameters
liveness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 30
periodSeconds: 10
# necessary to disable liveness probe when setting breakpoints
# in debugger so K8s doesn't restart unresponsive container
@@ -73,6 +84,7 @@ readiness:
service:
type: NodePort
name: clamp
+ portName: clamp
internalPort: 8080
nodePort: 95
diff --git a/kubernetes/cli/.helmignore b/kubernetes/cli/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/cli/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/cli/Chart.yaml b/kubernetes/cli/Chart.yaml
index 6befea70a8..0eb4ce6c97 100644
--- a/kubernetes/cli/Chart.yaml
+++ b/kubernetes/cli/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Command Line Interface
name: cli
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/cli/requirements.yaml b/kubernetes/cli/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/cli/requirements.yaml
@@ -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.
+
+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/cli/templates/NOTES.txt b/kubernetes/cli/templates/NOTES.txt
new file mode 100644
index 0000000000..91d8ed42f1
--- /dev/null
+++ b/kubernetes/cli/templates/NOTES.txt
@@ -0,0 +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.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 }}
diff --git a/kubernetes/cli/templates/cli-deployment.yaml b/kubernetes/cli/templates/cli-deployment.yaml
deleted file mode 100644
index 5afc6f8995..0000000000
--- a/kubernetes/cli/templates/cli-deployment.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableCliCli }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: cli
- name: cli
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: cli
- template:
- metadata:
- labels:
- app: cli
- name: cli
- spec:
- containers:
- - image: {{ .Values.image.cliImage}}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "cli"
- env:
- - name: CLI_MODE
- value: daemon
- ports:
- - containerPort: 80
- - containerPort: 8080
- name: cli
- readinessProbe:
- tcpSocket:
- port: 80
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/cli/templates/deployment.yaml b/kubernetes/cli/templates/deployment.yaml
new file mode 100644
index 0000000000..09e0e7f167
--- /dev/null
+++ b/kubernetes/cli/templates/deployment.yaml
@@ -0,0 +1,68 @@
+# 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 }}
+ - containerPort: {{ .Values.service.internalPort1 }}
+ # 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 }}
+ env:
+ - name: OPEN_CLI_MODE
+ value: "{{ .Values.config.climode }}"
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/cli/templates/service.yaml b/kubernetes/cli/templates/service.yaml
new file mode 100644
index 0000000000..e7e8277771
--- /dev/null
+++ b/kubernetes/cli/templates/service.yaml
@@ -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.
+
+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:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort1 }}
+ targetPort: {{ .Values.service.internalPort1 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort1 }}
+ name: {{ .Values.service.name }}{{ .Values.service.externalPort1 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort1 }}
+ targetPort: {{ .Values.service.internalPort1 }}
+ name: {{ .Values.service.name }}{{ .Values.service.externalPort1 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/cli/values.yaml b/kubernetes/cli/values.yaml
index f10711f1b4..dd034f7b76 100644
--- a/kubernetes/cli/values.yaml
+++ b/kubernetes/cli/values.yaml
@@ -12,8 +12,73 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/cli:2.0-STAGING-latest
pullPolicy: Always
-nodePortPrefix: 302
-image:
- cliImage: nexus3.onap.org:10001/onap/cli:v1.1.0
+
+# application configuration
+config:
+ climode: daemon
+
+# 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: cli
+ externalPort: 8080
+ externalPort1: 9090
+ internalPort: "80"
+ internalPort1: 8080
+ nodePort: "60"
+ nodePort1: "61"
+
+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/common/common/templates/_repository.tpl b/kubernetes/common/common/templates/_repository.tpl
new file mode 100644
index 0000000000..364ba7dc4c
--- /dev/null
+++ b/kubernetes/common/common/templates/_repository.tpl
@@ -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.
+*/}}
+
+{{/*
+ Resolve the name of the common image repository.
+ The value for .Values.repository is used by default,
+ unless either override mechanism is used.
+
+ - .Values.global.repository : override default image repository for all images
+ - .Values.repositoryOverride : override global and default image repository on a per image basis
+*/}}
+{{- define "common.repository" -}}
+ {{if .Values.repositoryOverride }}
+ {{- printf "%s" .Values.repositoryOverride -}}
+ {{else}}
+ {{- default .Values.repository .Values.global.repository -}}
+ {{end}}
+{{- end -}}
+
+
+{{/*
+ Resolve the image repository secret token.
+ The value for .Values.global.repositoryCred is used:
+ repositoryCred:
+ user: user
+ password: password
+ mail: email (optional)
+*/}}
+{{- define "common.repository.secret" -}}
+ {{- $repo := include "common.repository" . }}
+ {{- $cred := .Values.global.repositoryCred }}
+ {{- $mail := default "@" $cred.mail }}
+ {{- $auth := printf "%s:%s" $cred.user $cred.password | b64enc }}
+ {{- printf "{\"%s\":{\"username\":\"%s\",\"password\":\"%s\",\"email\":\"%s\",\"auth\":\"%s\"}}" $repo $cred.user $cred.password $mail $auth | b64enc -}}
+{{- end -}}
diff --git a/kubernetes/common/common/templates/_service.tpl b/kubernetes/common/common/templates/_service.tpl
new file mode 100644
index 0000000000..77b77d059a
--- /dev/null
+++ b/kubernetes/common/common/templates/_service.tpl
@@ -0,0 +1,31 @@
+{{/*
+# 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.
+*/}}
+
+{{/*
+ Resolve the name of a chart's service.
+
+ The default will be the chart name (or .Values.nameOverride if set).
+ And the use of .Values.service.name overrides all.
+
+ - .Values.service.name : override default service (ie. chart) name
+*/}}
+{{/*
+ Expand the service name for a chart.
+*/}}
+{{- define "common.servicename" -}}
+ {{- $name := default .Chart.Name .Values.nameOverride -}}
+ {{- default $name .Values.service.name | trunc 63 | trimSuffix "-" -}}
+{{- end -}} \ No newline at end of file
diff --git a/kubernetes/common/common/values.yaml b/kubernetes/common/common/values.yaml
index c8ded9a5dd..f7098ee80f 100644
--- a/kubernetes/common/common/values.yaml
+++ b/kubernetes/common/common/values.yaml
@@ -23,11 +23,10 @@ global:
# image repositories
repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# readiness check
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
# logging agent
loggingRepository: docker.elastic.co
diff --git a/kubernetes/common/dgbuilder/resources/config/svclogic.properties b/kubernetes/common/dgbuilder/resources/config/svclogic.properties
index fdaf5779e2..dc3980de21 100644
--- a/kubernetes/common/dgbuilder/resources/config/svclogic.properties
+++ b/kubernetes/common/dgbuilder/resources/config/svclogic.properties
@@ -1,5 +1,5 @@
org.onap.ccsdk.sli.dbtype=jdbc
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.dbServiceName}}.{{ include "common.namespace" . }}:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.dbServiceName}}.{{ include "common.namespace" . }}:3306/sdnctl
org.onap.ccsdk.sli.jdbc.database=sdnctl
org.onap.ccsdk.sli.jdbc.user=sdnctl
org.onap.ccsdk.sli.jdbc.password=gamma
diff --git a/kubernetes/common/dgbuilder/resources/scripts/createReleaseDir.sh b/kubernetes/common/dgbuilder/resources/scripts/createReleaseDir.sh
index 38f7fe2720..76d17700b0 100755
--- a/kubernetes/common/dgbuilder/resources/scripts/createReleaseDir.sh
+++ b/kubernetes/common/dgbuilder/resources/scripts/createReleaseDir.sh
@@ -6,7 +6,7 @@ then
echo "Usage $0 releaseDir loginId emailAddress [gitLocalRepository]"
echo "Note: Specify the gitLocalRepository path if you would want to be able to import flows from your local git repository"
exit
-fi
+fi
if [ ! -e "releases" ]
then
mkdir releases
@@ -15,7 +15,7 @@ releaseDir="$1"
name="Release $releaseDir"
loginId="$2"
emailid="$3"
-dbHost="{{.Values.dbServiceName}}.{{.Release.Namespace}}"
+dbHost="{{.Values.config.dbServiceName}}.{{.Release.Namespace}}"
dbPort="3306"
dbName="sdnctl"
dbUser="sdnctl"
@@ -76,7 +76,7 @@ fi
#echo "Created custom settings file $customSettingsFile"
echo "Done ....."
else
- echo "ERROR:customSettings file $customSettingsFile already exists for $releaseDir"
+ echo "ERROR:customSettings file $customSettingsFile already exists for $releaseDir"
exit
fi
#echo "Content of custom settings file"
@@ -86,17 +86,17 @@ fi
svclogicPropFile="./conf/svclogic.properties"
if [ ! -d "${appDir}/yangFiles" ]
then
- mkdir -p "${appDir}/yangFiles"
+ mkdir -p "${appDir}/yangFiles"
fi
if [ ! -d "${appDir}/generatedJS" ]
then
- mkdir -p "${appDir}/generatedJS"
+ mkdir -p "${appDir}/generatedJS"
fi
if [ ! -e "./$svclogicPropFile" ]
then
echo "org.onap.ccsdk.sli.dbtype=jdbc" >$svclogicPropFile
- echo "org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.dbServiceName}}.{{.Release.Namespace}}:3306/sdnctl" >>$svclogicPropFile
+ echo "org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.dbServiceName}}.{{.Release.Namespace}}:3306/sdnctl" >>$svclogicPropFile
echo "org.onap.ccsdk.sli.jdbc.database=sdnctl" >>$svclogicPropFile
echo "org.onap.ccsdk.sli.jdbc.user=sdnctl" >>$svclogicPropFile
echo "org.onap.ccsdk.sli.jdbc.password=gamma" >>$svclogicPropFile
diff --git a/kubernetes/common/dgbuilder/resources/scripts/customSettings.js b/kubernetes/common/dgbuilder/resources/scripts/customSettings.js
index f09d396f96..22810baabd 100644
--- a/kubernetes/common/dgbuilder/resources/scripts/customSettings.js
+++ b/kubernetes/common/dgbuilder/resources/scripts/customSettings.js
@@ -1,3 +1,18 @@
+/* Copyright © 2017 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.
+*/
+
module.exports={
"name": "Release sdnc1.0",
"emailAddress": "dguser@onap.org",
@@ -14,7 +29,7 @@ module.exports={
"user": "dguser",
"pass": "cc03e747a6afbbcbf8be7668acfebee5"
},
- "dbHost": "{{.Values.dbServiceName}}.{{ include "common.namespace" . }}",
+ "dbHost": "{{.Values.config.dbServiceName}}.{{ include "common.namespace" . }}",
"dbPort": "3306",
"dbName": "sdnctl",
"dbUser": "sdnctl",
diff --git a/kubernetes/common/dgbuilder/templates/deployment.yaml b/kubernetes/common/dgbuilder/templates/deployment.yaml
index 4e1f1019ee..b9c90f2681 100644
--- a/kubernetes/common/dgbuilder/templates/deployment.yaml
+++ b/kubernetes/common/dgbuilder/templates/deployment.yaml
@@ -21,7 +21,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - {{ .Values.dbPodName }}
+ - {{ .Values.config.dbPodName }}
env:
- name: NAMESPACE
valueFrom:
@@ -33,12 +33,10 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- command:
- - /bin/bash
- - -c
- - cd /opt/onap/sdnc/dgbuilder/ && ./start.sh sdnc1.0 && wait
+ command: ["/bin/bash"]
+ args: ["-c", "cd /opt/onap/ccsdk/dgbuilder/ && ./start.sh sdnc1.0 && wait"]
ports:
- containerPort: {{ .Values.service.internalPort }}
readinessProbe:
diff --git a/kubernetes/common/dgbuilder/templates/service.yaml b/kubernetes/common/dgbuilder/templates/service.yaml
index c61cdd549b..ffcc7112b7 100644
--- a/kubernetes/common/dgbuilder/templates/service.yaml
+++ b/kubernetes/common/dgbuilder/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -15,12 +15,12 @@ spec:
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
{{- end}}
selector:
app: {{ include "common.name" . }}
- release: {{ .Release.Name }} \ No newline at end of file
+ release: {{ .Release.Name }}
diff --git a/kubernetes/common/dgbuilder/values.yaml b/kubernetes/common/dgbuilder/values.yaml
index 23f8eea78e..e7c18c4140 100644
--- a/kubernetes/common/dgbuilder/values.yaml
+++ b/kubernetes/common/dgbuilder/values.yaml
@@ -8,11 +8,10 @@ global:
# image repositories
repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
# readiness check
readinessRepository: oomk8s
- readinessImage: readiness-check:1.0.0
+ readinessImage: readiness-check:2.0.0
# logging agent
loggingRepository: docker.elastic.co
@@ -28,13 +27,13 @@ global:
# flag to enable debugging - application support required
debugEnabled: true
-
+
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/ccsdk-dgbuilder-image:v0.1.0
+image: onap/ccsdk-dgbuilder-image:0.2-STAGING-latest
pullPolicy: Always
# flag to enable debugging - application support required
@@ -43,6 +42,9 @@ debugEnabled: false
# application configuration
config:
dbRootPassword: openECOMP1.0
+ dbPodName: mysql-db
+ dbServiceName: sdnc-dbhost
+
# default number of instances
replicaCount: 1
@@ -66,6 +68,7 @@ readiness:
service:
type: NodePort
name: dgbuilder
+ portName: dgbuilder
externalPort: 3000
internalPort: 3100
nodePort: 28
diff --git a/kubernetes/common/mariadb-galera/.helmignore b/kubernetes/common/mariadb-galera/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/common/mariadb-galera/Chart.yaml b/kubernetes/common/mariadb-galera/Chart.yaml
new file mode 100644
index 0000000000..85f36dc6fb
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/Chart.yaml
@@ -0,0 +1,11 @@
+apiVersion: v1
+description: Chart for MariaDB Galera cluster
+name: mariadb-galera
+version: 2.0.0
+keywords:
+ - mariadb
+ - mysql
+ - database
+ - sql
+ - galera
+ - cluster \ No newline at end of file
diff --git a/kubernetes/common/mariadb-galera/requirements.yaml b/kubernetes/common/mariadb-galera/requirements.yaml
new file mode 100644
index 0000000000..c169924d82
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/requirements.yaml
@@ -0,0 +1,4 @@
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: 'file://../common' \ No newline at end of file
diff --git a/kubernetes/common/mariadb-galera/templates/NOTES.txt b/kubernetes/common/mariadb-galera/templates/NOTES.txt
new file mode 100644
index 0000000000..3dd25ac4b7
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/templates/NOTES.txt
@@ -0,0 +1,12 @@
+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
+
+To connect to your database:
+
+1. Run a pod that you can use as a client:
+
+ kubectl run {{ include "common.fullname" . }}-client --rm --tty -i --image mariadb --command -- bash
+
+2. Connect using the mysql cli, then provide your password:
+ $ mysql -h {{ include "common.fullname" . }} {{- if .Values.mysqlRootPassword }} -p {{ .Values.mysqlRootPassword }}{{- end -}}
+
diff --git a/kubernetes/common/mariadb-galera/templates/configmap.yaml b/kubernetes/common/mariadb-galera/templates/configmap.yaml
new file mode 100644
index 0000000000..094a76cf45
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/templates/configmap.yaml
@@ -0,0 +1,18 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-confd
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/mariadb/conf.d/*").AsConfig . | indent 2 }}
+---
+{{- if .Values.externalConfig }}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-externalConfig
+ namespace: {{ include "common.namespace" . }}
+data:
+ my_extra.cnf: |-
+{{ toYaml .Values.externalConfig | indent 4 }}
+{{- end -}} \ No newline at end of file
diff --git a/kubernetes/common/mariadb-galera/templates/pv.yaml b/kubernetes/common/mariadb-galera/templates/pv.yaml
new file mode 100644
index 0000000000..184728f8ad
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/templates/pv.yaml
@@ -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/common/mariadb-galera/templates/pvc.yaml b/kubernetes/common/mariadb-galera/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/templates/pvc.yaml
@@ -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/common/mariadb-galera/templates/secrets.yaml b/kubernetes/common/mariadb-galera/templates/secrets.yaml
new file mode 100644
index 0000000000..101a7eba79
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/templates/secrets.yaml
@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: Secret
+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 }}"
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.mariadbRootPassword | b64enc | quote }}
+ user-password: {{ default "" .Values.config.userPassword | b64enc | quote }} \ No newline at end of file
diff --git a/kubernetes/common/mariadb-galera/templates/service.yaml b/kubernetes/common/mariadb-galera/templates/service.yaml
new file mode 100644
index 0000000000..d17d350b74
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/templates/service.yaml
@@ -0,0 +1,19 @@
+apiVersion: v1
+kind: Service
+metadata:
+ annotations:
+ service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+spec:
+ ports:
+ - name: {{ .Values.service.portName }}
+ port: {{ .Values.service.internalPort }}
+ clusterIP: None
+ selector:
+ app: {{ include "common.fullname" . }}
diff --git a/kubernetes/common/mariadb-galera/templates/statefulset.yaml b/kubernetes/common/mariadb-galera/templates/statefulset.yaml
new file mode 100644
index 0000000000..ed7e1fc578
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/templates/statefulset.yaml
@@ -0,0 +1,119 @@
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+spec:
+ serviceName: {{ include "common.fullname" . }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.fullname" . }}
+ annotations:
+ pod.alpha.kubernetes.io/initialized: "true"
+ spec:
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end }}
+ volumes:
+ {{- if .Values.externalConfig }}
+ - name: config
+ configMap:
+ name: {{ include "common.fullname" . }}-externalConfig
+ {{- end}}
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: {{ include "common.namespace" . }}-docker-registry-key
+ containers:
+ - name: {{ include "common.fullname" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy | quote}}
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ - name: MYSQL_USER
+ value: {{ default "" .Values.config.userName | quote }}
+ - name: MYSQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: user-password
+ - name: MYSQL_DATABASE
+ value: {{ default "" .Values.config.mysqlDatabase | quote }}
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ - containerPort: {{ .Values.service.sstPort }}
+ name: {{ .Values.service.sstName }}
+ - containerPort: {{ .Values.service.replicationPort }}
+ name: {{ .Values.service.replicationName }}
+ - containerPort: {{ .Values.service.istPort }}
+ name: {{ .Values.service.istName }}
+ readinessProbe:
+ exec:
+ command:
+ - /usr/share/container-scripts/mysql/readiness-probe.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command: ["mysqladmin", "ping"]
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ {{- end }}
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ volumeMounts:
+ {{- if .Values.externalConfig }}
+ - mountPath: /etc/config
+ name: config
+ {{- end}}
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+{{- 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 }}"
+ command: ["sh", "-c", "chown -R 27:27 /var/lib/mysql"]
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/mysql
+ 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 }}
+ spec:
+ accessModes:
+ - {{ .Values.persistence.accessMode | quote }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size | quote }}
+{{- end }}
diff --git a/kubernetes/common/mariadb-galera/values.yaml b/kubernetes/common/mariadb-galera/values.yaml
new file mode 100644
index 0000000000..6e5fb5a972
--- /dev/null
+++ b/kubernetes/common/mariadb-galera/values.yaml
@@ -0,0 +1,115 @@
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ persistence: {}
+ repository: nexus3.onap.org:10001
+
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+#repository: mysql
+repository: nexus3.onap.org:10001
+image: adfinissygroup/k8s-mariadb-galera-centos:v002
+imageInit: busybox
+pullPolicy: IfNotPresent
+
+# application configuration
+config:
+ mariadbRootPassword: secretpassword
+ userName: my-user
+ userPassword: my-password
+ mysqlDatabase: my-database
+
+# default number of instances in the StatefulSet
+replicaCount: 3
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 5
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 15
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: false
+
+ ## 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: ReadWriteOnce
+ size: 2Gi
+
+
+service:
+ internalPort: 3306
+ name: mariadb-galera
+ portName: mariadb-galera
+ sstPort: 4444
+ sstName: sst
+ replicationPort: 4567
+ replicationName: replication
+ istPort: 4568
+ istName: ist
+
+ingress:
+ enabled: false
+
+
+## Configure MariaDB-Galera with a custom my.cnf file
+## ref: https://mariadb.com/kb/en/mariadb/configuring-mariadb-with-mycnf/#example-of-configuration-file
+##
+externalConfig: {}
+# externalConfig: |-
+ # [mysqld]
+ # innodb_buffer_pool_size=2G
+
+#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
+
+# Name for mariadb-galera cluster - should be unique accross all projects or other clusters
+nameOverride: mariadb-galera
+
+# DNS name for mariadb-galera cluster - should be unique accross all projects other clusters
+#dnsnameOverride: mariadb-galera
diff --git a/kubernetes/common/mysql/Chart.yaml b/kubernetes/common/mysql/Chart.yaml
index 99e7c44fb9..b2e7d4aa93 100644
--- a/kubernetes/common/mysql/Chart.yaml
+++ b/kubernetes/common/mysql/Chart.yaml
@@ -1,3 +1,17 @@
+# 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: MySQL Server
name: mysql
diff --git a/kubernetes/common/mysql/requirements.yaml b/kubernetes/common/mysql/requirements.yaml
index acca8ef7e2..ce82a2f838 100644
--- a/kubernetes/common/mysql/requirements.yaml
+++ b/kubernetes/common/mysql/requirements.yaml
@@ -1,4 +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' \ No newline at end of file
+ repository: '@local'
diff --git a/kubernetes/common/mysql/templates/configmap.yaml b/kubernetes/common/mysql/templates/configmap.yaml
index dd2b5b7db2..d8c29fb551 100644
--- a/kubernetes/common/mysql/templates/configmap.yaml
+++ b/kubernetes/common/mysql/templates/configmap.yaml
@@ -1,3 +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.
+*/}}
+
apiVersion: v1
kind: ConfigMap
metadata:
@@ -7,12 +23,14 @@ data:
master.cnf: |
# Apply this config only on the master.
[mysqld]
+ sql_mode = "NO_ENGINE_SUBSTITUTION"
log-bin
[localpathprefix]
master
slave.cnf: |
# Apply this config only on slaves.
[mysqld]
+ sql_mode = "NO_ENGINE_SUBSTITUTION"
super-read-only
[localpathprefix]
slave
diff --git a/kubernetes/common/mysql/templates/nfs-provisoner.yaml b/kubernetes/common/mysql/templates/nfs-provisoner.yaml
index 478224e1a1..355ad38235 100644
--- a/kubernetes/common/mysql/templates/nfs-provisoner.yaml
+++ b/kubernetes/common/mysql/templates/nfs-provisoner.yaml
@@ -1,4 +1,20 @@
-#{{ if not .Values.disableNfsProvisioner }}
+{{/*
+# 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 not .Values.disableNfsProvisioner }}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
@@ -58,5 +74,5 @@ spec:
volumes:
- name: export-volume
hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}
-#{{ end }}
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{ end }}
diff --git a/kubernetes/common/mysql/templates/pv.yaml b/kubernetes/common/mysql/templates/pv.yaml
index ba128b95d0..3bef651916 100644
--- a/kubernetes/common/mysql/templates/pv.yaml
+++ b/kubernetes/common/mysql/templates/pv.yaml
@@ -1,8 +1,25 @@
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+{{/*
+# 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 (and (.Values.persistence.enabled) (not .Values.persistence.existingClaim)) ( .Values.disableNfsProvisioner)) -}}
+{{ $pvNum := default 1 .Values.replicaCount | int }}
kind: PersistentVolume
apiVersion: v1
metadata:
- name: {{ include "common.fullname" . }}-data
+ name: {{ include "common.fullname" . }}-mysql0
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -15,8 +32,31 @@ spec:
storage: {{ .Values.persistence.size}}
accessModes:
- {{ .Values.persistence.accessMode }}
- storageClassName: "{{ include "common.fullname" . }}-data"
+ storageClassName: "{{ include "common.fullname" . }}-mysql"
persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}0
+{{ if gt $pvNum 1 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-mysql1
+ 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" . }}-mysql"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}1
+{{ end }}
{{- end -}}
diff --git a/kubernetes/common/mysql/templates/secrets.yaml b/kubernetes/common/mysql/templates/secrets.yaml
index 7604be8239..7f9b1230eb 100644
--- a/kubernetes/common/mysql/templates/secrets.yaml
+++ b/kubernetes/common/mysql/templates/secrets.yaml
@@ -1,3 +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.
+*/}}
+
apiVersion: v1
kind: Secret
metadata:
@@ -10,4 +26,4 @@ metadata:
heritage: {{ .Release.Service }}
type: Opaque
data:
- db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }} \ No newline at end of file
+ db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }}
diff --git a/kubernetes/common/mysql/templates/service.yaml b/kubernetes/common/mysql/templates/service.yaml
index c6a28c4605..ed4f72adc5 100644
--- a/kubernetes/common/mysql/templates/service.yaml
+++ b/kubernetes/common/mysql/templates/service.yaml
@@ -1,7 +1,23 @@
+{{/*
+# 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.service.name }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -11,7 +27,7 @@ metadata:
spec:
ports:
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
@@ -45,14 +61,14 @@ spec:
apiVersion: v1
kind: Service
metadata:
- name: {{ .Values.service.name }}-read
+ name: {{ include "common.servicename" . }}-read
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
spec:
ports:
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
@@ -67,7 +83,7 @@ metadata:
spec:
ports:
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
@@ -83,8 +99,32 @@ metadata:
spec:
ports:
- port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
clusterIP: None
+---
+{{ if .Values.geoEnabled }}
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}-nodeport
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+spec:
+ ports:
+ - name: {{ .Values.service.internalPort }}
+ port: {{ .Values.service.internalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort1 }}
+ - name: {{ .Values.xtrabackup.internalPort }}
+ port: {{ .Values.xtrabackup.internalPort }}
+ targetPort: {{ .Values.xtrabackup.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort2 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+ release: {{ .Release.Name }}
+{{ end }}
diff --git a/kubernetes/common/mysql/templates/statefulset.yaml b/kubernetes/common/mysql/templates/statefulset.yaml
index 7b55bf2be0..0f340f00b5 100644
--- a/kubernetes/common/mysql/templates/statefulset.yaml
+++ b/kubernetes/common/mysql/templates/statefulset.yaml
@@ -1,3 +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.
+*/}}
+
apiVersion: apps/v1beta1
kind: StatefulSet
metadata:
@@ -35,7 +51,7 @@ spec:
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
#{{ end }}
- name: init-mysql
- image: "{{ .Values.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ .Values.dockerHubRepository }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command:
- bash
@@ -45,10 +61,11 @@ spec:
# Generate mysql server-id from pod ordinal index.
[[ `hostname` =~ -([0-9]+)$ ]] || exit 1
ordinal=${BASH_REMATCH[1]}
+ siteId={{ .Values.geoSiteId }}
echo BASH_REMATCH=${BASH_REMATCH}
echo [mysqld] > /mnt/conf.d/server-id.cnf
# Add an offset to avoid reserved server-id=0 value.
- echo server-id=$((100 + $ordinal)) >> /mnt/conf.d/server-id.cnf
+ echo server-id=$(($siteId*100 + $ordinal)) >> /mnt/conf.d/server-id.cnf
# Copy appropriate conf.d files from config-map to emptyDir.
if [[ $ordinal -eq 0 ]]; then
cp /mnt/config-map/master.cnf /mnt/conf.d/
@@ -83,21 +100,19 @@ spec:
echo ${BASH_REMATCH}
[[ $ordinal -eq 0 ]] && exit 0
# Clone data from previous peer.
- ncat --recv-only {{ template "common.name" . }}-$(($ordinal-1)).{{ .Values.service.name }}.{{ include "common.namespace" . }} 3307 | xbstream -x -C /var/lib/mysql
+ ncat --recv-only {{ include "common.fullname" . }}-$(($ordinal-1)).{{ .Values.service.name }}.{{ include "common.namespace" . }} 3307 | xbstream -x -C {{ .Values.persistence.mysqlPath }}
# Prepare the backup.
xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --prepare --target-dir=/var/lib/mysql
- ls -l /var/lib/mysql
+ ls -l {{ .Values.persistence.mysqlPath }}
volumeMounts:
- - name: {{ include "common.fullname" . }}-data
- mountPath: /var/lib/mysql
- subPath: mysql
+ - name: {{ include "common.fullname" . }}-mysql
+ mountPath: {{ .Values.persistence.mysqlPath }}
- name: conf
mountPath: /etc/mysql/conf.d
-
+
containers:
- #sdnc-db-container
- name: {{ include "common.name" . }}
- image: "{{ .Values.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ .Values.dockerHubRepository }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
@@ -127,9 +142,8 @@ spec:
- name: MYSQL_ALLOW_EMPTY_PASSWORD
value: {{ .Values.config.dbAllowEmptyPassword | default "0" | quote }}
volumeMounts:
- - mountPath: /var/lib/mysql
- name: {{ include "common.fullname" . }}-data
- subPath: mysql
+ - mountPath: {{ .Values.persistence.mysqlPath }}
+ name: {{ include "common.fullname" . }}-mysql
- mountPath: /etc/mysql/conf.d
name: conf
resources:
@@ -160,7 +174,7 @@ spec:
- "-c"
- |
set -ex
- cd /var/lib/mysql
+ cd {{ .Values.persistence.mysqlPath }}
ls -l
# Determine binlog position of cloned data, if any.
if [[ -f xtrabackup_slave_info ]]; then
@@ -179,20 +193,24 @@ spec:
MASTER_LOG_POS=${BASH_REMATCH[2]}" > change_master_to.sql.in
fi
+ [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
+ ordinal=${BASH_REMATCH[1]}
+ echo $ordinal
+
+ mysqlhost={{ include "common.fullname" . }}-$(($ordinal)).{{ .Values.service.name }}.{{ include "common.namespace" . }}
+ echo $mysqlhost
+
# Check if we need to complete a clone by starting replication.
if [[ -f change_master_to.sql.in ]]; then
echo "Waiting for mysqld to be ready (accepting connections)"
- [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
- ordinal=${BASH_REMATCH[1]}
- echo $ordinal
- until mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h localhost -e "SELECT 1"; do sleep 1; done
+ until mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h $mysqlhost -e "SELECT 1"; do sleep 1; done
echo "Initializing replication from clone position"
# In case of container restart, attempt this at-most-once.
mv change_master_to.sql.in change_master_to.sql.orig
- mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h localhost <<EOF
+ mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h $mysqlhost <<EOF
$(<change_master_to.sql.orig),
- MASTER_HOST="{{ template "common.name" . }}-0.{{ .Values.service.name }}.{{ include "common.namespace" . }}",
+ MASTER_HOST="{{ include "common.fullname" . }}-0.{{ .Values.service.name }}.{{ include "common.namespace" . }}",
MASTER_USER="root",
MASTER_PASSWORD="$MYSQL_ROOT_PASSWORD",
MASTER_CONNECT_RETRY=10;
@@ -202,11 +220,10 @@ spec:
# Start a server to send backups when requested by peers.
exec ncat --listen --keep-open --send-only --max-conns=1 3307 -c \
- "xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --backup --slave-info --stream=xbstream --host=localhost"
+ "xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --backup --slave-info --stream=xbstream --host=$mysqlhost"
volumeMounts:
- - name: {{ include "common.fullname" . }}-data
- mountPath: /var/lib/mysql
- subPath: mysql
+ - name: {{ include "common.fullname" . }}-mysql
+ mountPath: {{ .Values.persistence.mysqlPath }}
- name: conf
mountPath: /etc/mysql/conf.d
volumes:
@@ -218,21 +235,20 @@ spec:
- name: localtime
hostPath:
path: /etc/localtime
- - name: {{ include "common.fullname" . }}-data
-#{{ if not .Values.disableNfsProvisioner }}
+ - name: {{ include "common.fullname" . }}-mysql
+ {{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-mysql
+ emptyDir: {}
+ {{ else }}
volumeClaimTemplates:
- metadata:
- name: {{ include "common.fullname" . }}-data
- annotations:
- volume.beta.kubernetes.io/storage-class: "{{ include "common.fullname" . }}-data"
+ name: {{ include "common.fullname" . }}-mysql
+ labels:
+ name: {{ include "common.fullname" . }}
spec:
- accessModes: ["ReadWriteMany"]
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-mysql
resources:
requests:
- storage: 1Gi
-#{{ else if .Values.persistence.enabled }}
- persistentVolumeClaim:
- claimName: {{ include "common.fullname" . }}-data
-#{{ else }}
- emptyDir: {}
-#{{ end }}
+ storage: {{ .Values.persistence.size }}
+ {{ end }}
diff --git a/kubernetes/common/mysql/templates/storageclass.yaml b/kubernetes/common/mysql/templates/storageclass.yaml
index 1a4e6b6bb7..4edb477144 100644
--- a/kubernetes/common/mysql/templates/storageclass.yaml
+++ b/kubernetes/common/mysql/templates/storageclass.yaml
@@ -1,6 +1,24 @@
+{{/*
+# 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 not .Values.disableNfsProvisioner }}
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
- name: "{{ include "common.fullname" . }}-data"
+ name: "{{ include "common.fullname" . }}-mysql"
namespace: {{ include "common.namespace" . }}
provisioner: {{ include "common.fullname" . }}/nfs
+{{ end }}
diff --git a/kubernetes/common/mysql/values.yaml b/kubernetes/common/mysql/values.yaml
index c0beb6fd22..b12e72d0a2 100644
--- a/kubernetes/common/mysql/values.yaml
+++ b/kubernetes/common/mysql/values.yaml
@@ -1,20 +1,32 @@
+# 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
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
persistence: {}
readinessRepository: oomk8s
- readinessImage: readiness-check:1.0.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
#################################################################
-#repository: mysql
-repository: registry.hub.docker.com
+dockerHubRepository: registry.hub.docker.com
image: library/mysql:5.7
pullPolicy: Always
@@ -29,6 +41,8 @@ nodeSelector: {}
affinity: {}
+disableNfsProvisioner: true
+
# probe configuration parameters
liveness:
initialDelaySeconds: 30
@@ -44,7 +58,7 @@ readiness:
## Persist data to a persitent volume
persistence:
- enabled: false
+ enabled: true
## A manually managed Persistent Volume and Claim
## Requires persistence.enabled: true
@@ -58,13 +72,15 @@ persistence:
## 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)
- accessMode: ReadWriteMany
+ accessMode: ReadWriteOnce
size: 1Gi
mountPath: /dockerdata-nfs
- mountSubPath: mysql/data
+ mountSubPath: "mysql/data"
+ mysqlPath: /var/lib/mysql
service:
name: mysql
+ portName: mysql
internalPort: 3306
# nfs provisioner ports
nfsPort: 2049
@@ -109,3 +125,6 @@ nfsprovisionerImage: kubernetes_incubator/nfs-provisioner:v1.0.8
nfsprovisionerPrefix: mysql
sdnctlPrefix: mysql
+
+geoEnabled: false
+geoSiteId: 1
diff --git a/kubernetes/common/postgres/.helmignore b/kubernetes/common/postgres/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/common/postgres/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/common/postgres/Chart.yaml b/kubernetes/common/postgres/Chart.yaml
new file mode 100644
index 0000000000..1d00b8526b
--- /dev/null
+++ b/kubernetes/common/postgres/Chart.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: ONAP Postgres Server
+name: postgres
+version: 2.0.0
diff --git a/kubernetes/common/postgres/requirements.yaml b/kubernetes/common/postgres/requirements.yaml
new file mode 100644
index 0000000000..e597fca563
--- /dev/null
+++ b/kubernetes/common/postgres/requirements.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/common/postgres/templates/pv.yaml b/kubernetes/common/postgres/templates/pv.yaml
new file mode 100644
index 0000000000..144a3f793b
--- /dev/null
+++ b/kubernetes/common/postgres/templates/pv.yaml
@@ -0,0 +1,58 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data0
+ 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 }}0
+---
+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 -}}
diff --git a/kubernetes/common/postgres/templates/secrets.yaml b/kubernetes/common/postgres/templates/secrets.yaml
new file mode 100644
index 0000000000..29de3af260
--- /dev/null
+++ b/kubernetes/common/postgres/templates/secrets.yaml
@@ -0,0 +1,31 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ pg-primary-password: {{ .Values.config.pgPrimaryPassword | b64enc | quote }}
+ pg-user-password: {{ .Values.config.pgUserPassword | b64enc | quote }}
+ pg-root-password: {{ .Values.config.pgRootPassword | b64enc | quote }}
+
diff --git a/kubernetes/common/postgres/templates/service.yaml b/kubernetes/common/postgres/templates/service.yaml
new file mode 100644
index 0000000000..2a4e369ef4
--- /dev/null
+++ b/kubernetes/common/postgres/templates/service.yaml
@@ -0,0 +1,95 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+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.externalPort }}
+ 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 }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name2 }}
+ 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.type2 }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- end}}
+ selector:
+ name: "{{.Values.container.name.primary}}"
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name3 }}
+ 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.type3 }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.name3 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.name3 }}
+ {{- end}}
+ selector:
+ name: "{{.Values.container.name.replica}}"
+ release: {{ .Release.Name }}
diff --git a/kubernetes/common/postgres/templates/statefulset.yaml b/kubernetes/common/postgres/templates/statefulset.yaml
new file mode 100644
index 0000000000..c3f86748cb
--- /dev/null
+++ b/kubernetes/common/postgres/templates/statefulset.yaml
@@ -0,0 +1,147 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ .Values.service.name }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /bin/sh
+ - -c
+ - |
+ for i in $(seq 0 $(({{ .Values.replicaCount }}-1))); do mkdir -p /podroot/data$i; done
+ chmod 777 /podroot/*
+ env:
+ - name: POD_NAME
+ valueFrom: { fieldRef: { fieldPath: metadata.name } }
+ securityContext:
+ privileged: true
+ image: {{ .Values.global.busyboxRepository | default .Values.busyboxRepository }}/{{ .Values.busyboxImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: init-sysctl
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-init
+ mountPath: /podroot/
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.postgresRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: postgres
+ # 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 }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: PGHOST
+ value: /tmp
+ - name: PG_PRIMARY_USER
+ value: primaryuser
+ - name: PG_MODE
+ value: set
+ - name: PG_PRIMARY_HOST
+ value: "{{.Values.container.name.primary}}"
+ - name: PG_REPLICA_HOST
+ value: "{{.Values.container.name.replica}}"
+ - name: PG_PRIMARY_PORT
+ value: "{{.Values.service.internalPort}}"
+ - name: PG_PRIMARY_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-primary-password
+ - name: PG_USER
+ value: "{{.Values.config.pgUserName}}"
+ - name: PG_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-user-password
+ - name: PG_DATABASE
+ value: "{{.Values.config.pgDatabase}}"
+ - name: PG_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-root-password
+ volumeMounts:
+ - mountPath: /pgdata
+ name: {{ include "common.fullname" . }}-data
+ - mountPath: /backup
+ name: {{ include "common.fullname" . }}-backup
+ 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 }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-init
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountInitPath }}
+ - name: {{ include "common.fullname" . }}-backup
+ emptyDir: {}
+#{{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ emptyDir: {}
+#{{ else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-data
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-data
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+#{{ end }}
diff --git a/kubernetes/common/postgres/values.yaml b/kubernetes/common/postgres/values.yaml
new file mode 100644
index 0000000000..a570028900
--- /dev/null
+++ b/kubernetes/common/postgres/values.yaml
@@ -0,0 +1,126 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ persistence: {}
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# BusyBox image
+busyboxRepository: registry.hub.docker.com
+busyboxImage: library/busybox:latest
+
+postgresRepository: crunchydata
+image: crunchy-postgres:centos7-10.3-1.8.2
+pullPolicy: Always
+
+# application configuration
+config:
+ pgUserName: testuser
+ pgDatabase: userdb
+ pgPrimaryPassword: password
+ pgUserPassword: password
+ pgRootPassword: password
+
+container:
+ name:
+ primary: pgset-primary
+ replica: pgset-replica
+
+# default number of instances
+replicaCount: 2
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 5
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 5
+ 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)
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: postgres/data
+ mountInitPath: postgres
+
+service:
+ type: ClusterIP
+ name: pgset
+ externalPort: 5432
+ internalPort: 5432
+ type2: ClusterIP
+ name2: pgset-primary
+ externalPort2: 5432
+ internalPort2: 5432
+ type3: ClusterIP
+ name3: pgset-replica
+ externalPort3: 5432
+ internalPort3: 5432
+
+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/config/docker/init/src/config/dcae/common-event/config/console.properties b/kubernetes/config/docker/init/src/config/dcae/common-event/config/console.properties
deleted file mode 100755
index 4cf2ef0882..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/common-event/config/console.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-localhost.endpoint=http://localhost:9999
-localhost.user=console
-localhost.password=MDBmMzE0NTgyMDU1NmVj
-localhost.timeout=3600000
-#localhost.debug=true
-
diff --git a/kubernetes/config/docker/init/src/config/dcae/common-event/config/gui.properties b/kubernetes/config/docker/init/src/config/dcae/common-event/config/gui.properties
deleted file mode 100755
index 8b13789179..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/common-event/config/gui.properties
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/kubernetes/config/docker/init/src/config/dcae/common-event/config/log4j.properties b/kubernetes/config/docker/init/src/config/dcae/common-event/config/log4j.properties
deleted file mode 100755
index 1bbbf797b7..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/common-event/config/log4j.properties
+++ /dev/null
@@ -1,58 +0,0 @@
-#log4j.debug=0
-log4j.rootLogger=warn, file
-log4j.logger.org.openecomp.ncomp=info, file
-log4j.additivity.org.openecomp.ncomp=false
-
-
-#log4j.logger.org.apache.http.headers=debug, file
-#log4j.logger.org.apache.http.wire=debug, file
-
-log4j.appender.file=org.apache.log4j.RollingFileAppender
-log4j.appender.file.File=logs/manager.log
-log4j.appender.file.layout=org.apache.log4j.PatternLayout
-log4j.appender.file.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.file.MaxFileSize=50MB
-log4j.appender.file.MaxBackupIndex=5
-
-log4j.appender.uploaded=org.apache.log4j.RollingFileAppender
-log4j.appender.uploaded.File=logs/manager-uploaded.log
-log4j.appender.uploaded.layout=org.apache.log4j.PatternLayout
-log4j.appender.uploaded.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.uploaded.MaxFileSize=50MB
-log4j.appender.uploaded.MaxBackupIndex=5
-
-### ECOMP Logging
-log4j.logger.org.openecomp.audit=info, audit
-log4j.additivity.org.openecomp.audit=false
-log4j.logger.org.openecomp.metrics=info, metrics
-log4j.additivity.org.openecomp.metrics=false
-log4j.logger.org.openecomp.error=info, error
-log4j.additivity.org.openecomp.error=false
-log4j.logger.com.att.eelf.debug=info, debug
-log4j.additivity.org.openecomp.debug=false
-log4j.appender.audit=org.apache.log4j.RollingFileAppender
-log4j.appender.audit.File=logs/audit.log
-log4j.appender.audit.layout=org.apache.log4j.PatternLayout
-log4j.appender.audit.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%5p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.audit.MaxFileSize=50MB
-log4j.appender.audit.MaxBackupIndex=5
-log4j.appender.metrics=org.apache.log4j.RollingFileAppender
-log4j.appender.metrics.File=logs/metrics.log
-log4j.appender.metrics.layout=org.apache.log4j.PatternLayout
-log4j.appender.metrics.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.metrics.MaxFileSize=50MB
-log4j.appender.metrics.MaxBackupIndex=5
-log4j.appender.error=org.apache.log4j.RollingFileAppender
-log4j.appender.error.File=logs/error.log
-log4j.appender.error.layout=org.apache.log4j.PatternLayout
-log4j.appender.error.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.error.MaxFileSize=50MB
-log4j.appender.error.MaxBackupIndex=5
-log4j.appender.debug=org.apache.log4j.RollingFileAppender
-log4j.appender.debug.File=logs/debug.log
-log4j.appender.debug.layout=org.apache.log4j.PatternLayout
-log4j.appender.debug.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.debug.MaxFileSize=50MB
-log4j.appender.debug.MaxBackupIndex=5
-
-
diff --git a/kubernetes/config/docker/init/src/config/dcae/common-event/config/manager.properties b/kubernetes/config/docker/init/src/config/dcae/common-event/config/manager.properties
deleted file mode 100755
index 98998dbe9d..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/common-event/config/manager.properties
+++ /dev/null
@@ -1,8 +0,0 @@
-JVMARGS=-Djavax.net.ssl.trustStore=config/docker-mra-certs.jks
-server.dir = data/resources
-metrics.dir = data/metrics
-properties.dir = data/properties
-server.port = 9999
-server.user.console = MDBmMzE0NTgyMDU1NmVj
-server.user.gui = ZDAxYzIzMGQ5NWRhZjVi
-server.user.client = OTY4NTk3ODI4ZWI2MjM0
diff --git a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/conf b/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/conf
deleted file mode 100755
index 5a9432c7d1..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/conf
+++ /dev/null
@@ -1,28 +0,0 @@
-# DMaaP Bus Controller OpenSource environment vars
-CONT_DOMAIN=dcae.simpledemo.openecomp.org
-DMAAPBC_INSTANCE_NAME=privatecloud
-
-# The https port
-# set to 0 if certificate is not ready
-DMAAPBC_INT_HTTPS_PORT=0
-
-DMAAPBC_KSTOREFILE=/opt/app/dcae-certificates
-DMAAPBC_KSTOREPASS=foofoofoo
-DMAAPBC_PVTKEYPASS=barbarbar
-
-DMAAPBC_PG_ENABLED=true
-#DMAAPBC_PGHOST=zldciad1vipstg00.dcae.simpledemo.openecomp.org
-DMAAPBC_PGHOST=10.0.4.101
-DMAAPBC_PGCRED=test234-ftl
-
-DMAAPBC_DRPROV_FQDN=zldciad1vidrps00.simpledemo.openecomp.org
-
-DMAAPBC_AAF_URL=https://aafapi.:8095/proxy/
-
-DMAAPBC_TOPICMGR_USER=m99751@dmaapBC.openecomp.org
-DMAAPBC_TOPICMGR_PWD=enc:zyRL9zbI0py3rJAjMS0dFOnYfEw_mJhO
-DMAAPBC_ADMIN_USER=m99501@dcae.openecomp.org
-DMAAPBC_ADMIN_PWD=enc:YEaHwOJrwhDY8a6usetlhbB9mEjUq9m
-
-DMAAPBC_PE_ENABLED=false
-DMAAPBC_PE_AAF_ENV=TBD
diff --git a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/console.properties b/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/console.properties
deleted file mode 100755
index 4cf2ef0882..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/console.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-localhost.endpoint=http://localhost:9999
-localhost.user=console
-localhost.password=MDBmMzE0NTgyMDU1NmVj
-localhost.timeout=3600000
-#localhost.debug=true
-
diff --git a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/gui.properties b/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/gui.properties
deleted file mode 100755
index 8b13789179..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/gui.properties
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/log4j.properties b/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/log4j.properties
deleted file mode 100755
index 1bbbf797b7..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/log4j.properties
+++ /dev/null
@@ -1,58 +0,0 @@
-#log4j.debug=0
-log4j.rootLogger=warn, file
-log4j.logger.org.openecomp.ncomp=info, file
-log4j.additivity.org.openecomp.ncomp=false
-
-
-#log4j.logger.org.apache.http.headers=debug, file
-#log4j.logger.org.apache.http.wire=debug, file
-
-log4j.appender.file=org.apache.log4j.RollingFileAppender
-log4j.appender.file.File=logs/manager.log
-log4j.appender.file.layout=org.apache.log4j.PatternLayout
-log4j.appender.file.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.file.MaxFileSize=50MB
-log4j.appender.file.MaxBackupIndex=5
-
-log4j.appender.uploaded=org.apache.log4j.RollingFileAppender
-log4j.appender.uploaded.File=logs/manager-uploaded.log
-log4j.appender.uploaded.layout=org.apache.log4j.PatternLayout
-log4j.appender.uploaded.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.uploaded.MaxFileSize=50MB
-log4j.appender.uploaded.MaxBackupIndex=5
-
-### ECOMP Logging
-log4j.logger.org.openecomp.audit=info, audit
-log4j.additivity.org.openecomp.audit=false
-log4j.logger.org.openecomp.metrics=info, metrics
-log4j.additivity.org.openecomp.metrics=false
-log4j.logger.org.openecomp.error=info, error
-log4j.additivity.org.openecomp.error=false
-log4j.logger.com.att.eelf.debug=info, debug
-log4j.additivity.org.openecomp.debug=false
-log4j.appender.audit=org.apache.log4j.RollingFileAppender
-log4j.appender.audit.File=logs/audit.log
-log4j.appender.audit.layout=org.apache.log4j.PatternLayout
-log4j.appender.audit.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%5p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.audit.MaxFileSize=50MB
-log4j.appender.audit.MaxBackupIndex=5
-log4j.appender.metrics=org.apache.log4j.RollingFileAppender
-log4j.appender.metrics.File=logs/metrics.log
-log4j.appender.metrics.layout=org.apache.log4j.PatternLayout
-log4j.appender.metrics.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.metrics.MaxFileSize=50MB
-log4j.appender.metrics.MaxBackupIndex=5
-log4j.appender.error=org.apache.log4j.RollingFileAppender
-log4j.appender.error.File=logs/error.log
-log4j.appender.error.layout=org.apache.log4j.PatternLayout
-log4j.appender.error.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.error.MaxFileSize=50MB
-log4j.appender.error.MaxBackupIndex=5
-log4j.appender.debug=org.apache.log4j.RollingFileAppender
-log4j.appender.debug.File=logs/debug.log
-log4j.appender.debug.layout=org.apache.log4j.PatternLayout
-log4j.appender.debug.layout.ConversionPattern=%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%t|%X{ServiceName}|%X{InstanceUUID}|%p|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%m%n
-log4j.appender.debug.MaxFileSize=50MB
-log4j.appender.debug.MaxBackupIndex=5
-
-
diff --git a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/manager.properties b/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/manager.properties
deleted file mode 100755
index 98998dbe9d..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/dmaapbc/config/manager.properties
+++ /dev/null
@@ -1,8 +0,0 @@
-JVMARGS=-Djavax.net.ssl.trustStore=config/docker-mra-certs.jks
-server.dir = data/resources
-metrics.dir = data/metrics
-properties.dir = data/properties
-server.port = 9999
-server.user.console = MDBmMzE0NTgyMDU1NmVj
-server.user.gui = ZDAxYzIzMGQ5NWRhZjVi
-server.user.client = OTY4NTk3ODI4ZWI2MjM0
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-0/00000000000000000000.log
deleted file mode 100644
index 85ee8bff8b..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-0/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-1/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-1/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-1/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-1/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-1/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-CL-1/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST1-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST1-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST1-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST1-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST1-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST1-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-1/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-1/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-1/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-1/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-1/00000000000000000000.log
deleted file mode 100644
index 66dcea954e..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/APPC-TEST2-1/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-0/00000000000000000000.log
deleted file mode 100644
index bb73f23cef..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-0/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-1/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-1/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-1/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-1/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-1/00000000000000000000.log
deleted file mode 100644
index 53364c5905..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/DCAE-CL-EVENT-1/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-INBOX-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-INBOX-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-INBOX-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-INBOX-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-INBOX-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-INBOX-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-APP1-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-APP1-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-APP1-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-APP1-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-APP1-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-APP1-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-DBC1-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-DBC1-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-DBC1-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-DBC1-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-DBC1-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-DBC1-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-POL1-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-POL1-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-POL1-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-POL1-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-POL1-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-POL1-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-SDC1-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-SDC1-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-SDC1-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-SDC1-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-SDC1-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-SDC1-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-VID1-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-VID1-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-VID1-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-VID1-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-VID1-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/ECOMP-PORTAL-OUTBOX-VID1-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-0/00000000000000000000.log
deleted file mode 100644
index b466edad8c..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-0/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-1/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-1/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-1/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-1/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-1/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/PDPD-CONFIGURATION-1/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-0/00000000000000000000.log
deleted file mode 100644
index bc5db56330..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-0/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-1/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-1/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-1/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-1/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-1/00000000000000000000.log
deleted file mode 100644
index 978eeb625c..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/POLICY-CL-MGT-1/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.log
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1-0/00000000000000000000.log
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-0/00000000000000000000.log
deleted file mode 100644
index 7c1c0f66bc..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-0/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-1/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-1/00000000000000000000.index
deleted file mode 100644
index a0afe1dd1e..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-1/00000000000000000000.index
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-1/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-1/00000000000000000000.log
deleted file mode 100644
index e3e471a5f1..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/msgrtr.apinode.metrics.dmaap-1/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/recovery-point-offset-checkpoint b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/recovery-point-offset-checkpoint
deleted file mode 100644
index a003b5d19d..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/recovery-point-offset-checkpoint
+++ /dev/null
@@ -1,27 +0,0 @@
-0
-25
-ECOMP-PORTAL-OUTBOX-VID1 0 0
-PDPD-CONFIGURATION 0 2
-msgrtr.apinode.metrics.dmaap 1 26
-unauthenticated.SEC_MEASUREMENT_OUTPUT 1 1
-APPC-TEST2 0 0
-unauthenticated.TCA_EVENT_OUTPUT 1 1
-APPC-TEST1 0 0
-APPC-CL 0 2
-ECOMP-PORTAL-INBOX 0 0
-APPC-CL 1 0
-APPC-TEST2 1 1
-unauthenticated.TCA_EVENT_OUTPUT 0 1
-unauthenticated.SEC_MEASUREMENT_OUTPUT 0 1
-SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1 0 0
-POLICY-CL-MGT 1 1
-PDPD-CONFIGURATION 1 0
-DCAE-CL-EVENT 1 1
-msgrtr.apinode.metrics.dmaap 0 4
-ECOMP-PORTAL-OUTBOX-APP1 0 0
-ECOMP-PORTAL-OUTBOX-SDC1 0 0
-POLICY-CL-MGT 0 1
-SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1 0 0
-DCAE-CL-EVENT 0 1
-ECOMP-PORTAL-OUTBOX-DBC1 0 0
-ECOMP-PORTAL-OUTBOX-POL1 0 0
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/replication-offset-checkpoint b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/replication-offset-checkpoint
deleted file mode 100644
index a003b5d19d..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/replication-offset-checkpoint
+++ /dev/null
@@ -1,27 +0,0 @@
-0
-25
-ECOMP-PORTAL-OUTBOX-VID1 0 0
-PDPD-CONFIGURATION 0 2
-msgrtr.apinode.metrics.dmaap 1 26
-unauthenticated.SEC_MEASUREMENT_OUTPUT 1 1
-APPC-TEST2 0 0
-unauthenticated.TCA_EVENT_OUTPUT 1 1
-APPC-TEST1 0 0
-APPC-CL 0 2
-ECOMP-PORTAL-INBOX 0 0
-APPC-CL 1 0
-APPC-TEST2 1 1
-unauthenticated.TCA_EVENT_OUTPUT 0 1
-unauthenticated.SEC_MEASUREMENT_OUTPUT 0 1
-SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1 0 0
-POLICY-CL-MGT 1 1
-PDPD-CONFIGURATION 1 0
-DCAE-CL-EVENT 1 1
-msgrtr.apinode.metrics.dmaap 0 4
-ECOMP-PORTAL-OUTBOX-APP1 0 0
-ECOMP-PORTAL-OUTBOX-SDC1 0 0
-POLICY-CL-MGT 0 1
-SDC-DISTR-STATUS-TOPIC-SDC-OPENSOURCE-ENV1 0 0
-DCAE-CL-EVENT 0 1
-ECOMP-PORTAL-OUTBOX-DBC1 0 0
-ECOMP-PORTAL-OUTBOX-POL1 0 0
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-0/00000000000000000000.log
deleted file mode 100644
index 33bee2d7ac..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-0/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-1/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-1/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-1/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-1/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-1/00000000000000000000.log
deleted file mode 100644
index 69b1e68398..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.SEC_MEASUREMENT_OUTPUT-1/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-0/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-0/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-0/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-0/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-0/00000000000000000000.log
deleted file mode 100644
index 68a76bc308..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-0/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-1/00000000000000000000.index b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-1/00000000000000000000.index
deleted file mode 100644
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-1/00000000000000000000.index
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-1/00000000000000000000.log b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-1/00000000000000000000.log
deleted file mode 100644
index 89ec482f80..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/kafka-logs/unauthenticated.TCA_EVENT_OUTPUT-1/00000000000000000000.log
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.1 b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.1
deleted file mode 100644
index f3cb13643f..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.1
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.103 b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.103
deleted file mode 100644
index 9b648e28bf..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.103
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.125 b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.125
deleted file mode 100644
index 0613642554..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/version-2/log.125
+++ /dev/null
Binary files differ
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/start-kafka.sh b/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/start-kafka.sh
deleted file mode 100644
index 4d955daf4a..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dcae-startup-vm-message-router/docker_files/start-kafka.sh
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/bin/bash
-
-if [[ -z "$KAFKA_PORT" ]]; then
- export KAFKA_PORT=9092
-fi
-if [[ -z "$KAFKA_ADVERTISED_PORT" ]]; then
- export KAFKA_ADVERTISED_PORT=$(docker port `hostname` $KAFKA_PORT | sed -r "s/.*:(.*)/\1/g")
-fi
-if [[ -z "$KAFKA_BROKER_ID" ]]; then
- # By default auto allocate broker ID
- #export KAFKA_BROKER_ID=-1
- export KAFKA_BROKER_ID=1
-fi
-#if [[ -z "$KAFKA_LOG_DIRS" ]]; then
- #export KAFKA_LOG_DIRS="/kafka/kafka-logs-$HOSTNAME"
- export KAFKA_LOG_DIRS="/kafka/kafka-logs"
-#fi
-if [[ -z "$KAFKA_ZOOKEEPER_CONNECT" ]]; then
- export KAFKA_ZOOKEEPER_CONNECT=$(env | grep ZK.*PORT_2181_TCP= | sed -e 's|.*tcp://||' | paste -sd ,)
-fi
-
-if [[ -n "$KAFKA_HEAP_OPTS" ]]; then
- sed -r -i "s/(export KAFKA_HEAP_OPTS)=\"(.*)\"/\1=\"$KAFKA_HEAP_OPTS\"/g" $KAFKA_HOME/bin/kafka-server-start.sh
- unset KAFKA_HEAP_OPTS
-fi
-
-if [[ -z "$KAFKA_ADVERTISED_HOST_NAME" && -n "$HOSTNAME_COMMAND" ]]; then
- export KAFKA_ADVERTISED_HOST_NAME=$(eval $HOSTNAME_COMMAND)
-fi
-
-for VAR in `env`
-do
- if [[ $VAR =~ ^KAFKA_ && ! $VAR =~ ^KAFKA_HOME ]]; then
- kafka_name=`echo "$VAR" | sed -r "s/KAFKA_(.*)=.*/\1/g" | tr '[:upper:]' '[:lower:]' | tr _ .`
- env_var=`echo "$VAR" | sed -r "s/(.*)=.*/\1/g"`
- if egrep -q "(^|^#)$kafka_name=" $KAFKA_HOME/config/server.properties; then
- sed -r -i "s@(^|^#)($kafka_name)=(.*)@\2=${!env_var}@g" $KAFKA_HOME/config/server.properties #note that no config values may contain an '@' char
- else
- echo "$kafka_name=${!env_var}" >> $KAFKA_HOME/config/server.properties
- fi
- fi
-done
-
-if [[ -n "$CUSTOM_INIT_SCRIPT" ]] ; then
- eval $CUSTOM_INIT_SCRIPT
-fi
-
-
-KAFKA_PID=0
-
-# see https://medium.com/@gchudnov/trapping-signals-in-docker-containers-7a57fdda7d86#.bh35ir4u5
-term_handler() {
- echo 'Stopping Kafka....'
- if [ $KAFKA_PID -ne 0 ]; then
- kill -s TERM "$KAFKA_PID"
- wait "$KAFKA_PID"
- fi
- echo 'Kafka stopped.'
- exit
-}
-
-
-# Capture kill requests to stop properly
-trap "term_handler" SIGHUP SIGINT SIGTERM
-create-topics.sh &
-$KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties &
-KAFKA_PID=$!
-
-wait "$KAFKA_PID"
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/cadi.properties b/kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/cadi.properties
deleted file mode 100644
index 1cb00a5cda..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/cadi.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-basic_realm=openecomp.org
-basic_warn=TRUE
-
-cadi_loglevel=DEBUG
-#cadi_keyfile=target/swm/package/nix/dist_files/appl/${artifactId}/etc/keyfile2
-cadi_keyfile=/appl/dmaapMR1/etc/keyfile
-# Configure AAF
-aaf_url=https://DME2RESOLVE/service=org.openecomp.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=BAU_SE
-
-aaf_id=dgl@openecomp.org
-aaf_password=enc:f2u5br1mh29M02-
-aaf_timeout=5000
-aaf_clean_interval=1200000
-aaf_user_expires=60000
-aaf_high_count=1000000
-
-
-# The following properties are being set by the AJSC Container and should NOT need to be set here.
-AFT_LATITUDE=33.823589
-AFT_LONGITUDE=-84.366982
-AFT_ENVIRONMENT=AFTUAT
diff --git a/kubernetes/config/docker/init/src/config/dcae/ves/console.properties b/kubernetes/config/docker/init/src/config/dcae/ves/console.properties
deleted file mode 100755
index 4b63607fc6..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/ves/console.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-localhost.endpoint=http://localhost:PORT
-localhost.user=console
-localhost.password=CONSOLE_PW
diff --git a/kubernetes/config/docker/init/src/config/dcae/ves/gui.properties b/kubernetes/config/docker/init/src/config/dcae/ves/gui.properties
deleted file mode 100755
index e69de29bb2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/ves/gui.properties
+++ /dev/null
diff --git a/kubernetes/config/docker/init/src/config/dcae/ves/log4j.properties b/kubernetes/config/docker/init/src/config/dcae/ves/log4j.properties
deleted file mode 100755
index 8b3b8f93ca..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/ves/log4j.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-#log4j.debug=0
-log4j.rootLogger=warn, file
-log4j.logger.org.openecomp.ncomp=info, file
-log4j.additivity.org.openecomp.ncomp=false
-log4j.logger.org.openecomp.ncomp.datarouter=warn, file
-log4j.additivity.org.openecomp.ncomp.datarouter=false
-log4j.logger.org.apache.http.headers=debug, file
-log4j.logger.org.apache.http.wire=debug, file
-
-## uploaded logger
-log4j.logger.org.openecomp.ncomp.sirius.manager.uploaded=info, uploaded
-log4j.additivity.org.openecomp.ncomp.sirius.manager.uploaded=false
-## request logging
-log4j.logger.org.openecomp.ncomp.sirius.manager.ManagementServer.requests=info, requests
-log4j.additivity.org.openecomp.ncomp.sirius.manager.ManagementServer.requests=false
-
-
-log4j.appender.file=org.apache.log4j.RollingFileAppender
-log4j.appender.file.File=logs/BBBB.log
-log4j.appender.file.layout=org.apache.log4j.PatternLayout
-log4j.appender.file.layout.ConversionPattern=%d %5p [%t] %m %C:%L%n
-log4j.appender.file.MaxFileSize=50MB
-log4j.appender.file.MaxBackupIndex=5
-
diff --git a/kubernetes/config/docker/init/src/config/dcae/ves/makefile b/kubernetes/config/docker/init/src/config/dcae/ves/makefile
deleted file mode 100755
index e2721814f2..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/ves/makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-
-restart: stop start
-
-start:
- M2_HOME=$(HOME)/.m2 bin/BBBB-controller start
-stop:
- bin/BBBB-controller stop
-console:
- bin/BBBB-controller console
diff --git a/kubernetes/config/docker/init/src/config/dcae/ves/manager.properties b/kubernetes/config/docker/init/src/config/dcae/ves/manager.properties
deleted file mode 100755
index e24b5d3316..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/ves/manager.properties
+++ /dev/null
@@ -1,8 +0,0 @@
-server.dir = data/resources
-metrics.dir = data/metrics
-properties.dir = data/properties
-server.port = 9999
-server.user.console = CONSOLE_PW
-server.user.gui = GUI_PW
-server.user.client = CLIENT_PW
-server.user.CLIENT_PW = CLIENT_PW
diff --git a/kubernetes/config/docker/init/src/config/dcae/ves/pw.sh.sh b/kubernetes/config/docker/init/src/config/dcae/ves/pw.sh.sh
deleted file mode 100755
index 8e179de065..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/ves/pw.sh.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-
-### used to generate random passwords
-
-
-echo '#!/bin/bash'
-echo ""
-
-echo 'cat \'
-
-for i in CONSOLE GUI CLIENT
-do
- echo ' |' sed s/${i}_PW/$(echo $i:$(date +%s) | sha256sum | base64 | head -c 20 ; echo)/ \\
-done
-
diff --git a/kubernetes/config/docker/init/src/config/dcae/ves/server.properties b/kubernetes/config/docker/init/src/config/dcae/ves/server.properties
deleted file mode 100755
index f33d81447b..0000000000
--- a/kubernetes/config/docker/init/src/config/dcae/ves/server.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-server.dir = data/resources
-metrics.dir = data/metrics
-properties.dir = data/properties
-server.port = 8080
-server.user.console = CONSOLE_PW
-server.user.gui = GUI_PW
-server.user.client = CLIENT_PW
diff --git a/kubernetes/config/docker/init/src/config/message-router/dmaap/MsgRtrApi.properties b/kubernetes/config/docker/init/src/config/message-router/dmaap/MsgRtrApi.properties
deleted file mode 100755
index db8d911248..0000000000
--- a/kubernetes/config/docker/init/src/config/message-router/dmaap/MsgRtrApi.properties
+++ /dev/null
@@ -1,140 +0,0 @@
-###############################################################################
-##
-## Cambria API Server config
-##
-## - Default values are shown as commented settings.
-##
-
-###############################################################################
-##
-## HTTP service
-##
-## - 3904 is standard as of 7/29/14.
-#
-## Zookeeper Connection
-##
-## Both Cambria and Kafka make use of Zookeeper.
-##
-config.zk.servers=zookeeper.namespace-placeholder:2181
-#config.zk.servers=172.17.0.1:2181
-#dmaap.namespace-placeholder:2181
-#10.208.128.229:2181
-#config.zk.root=/fe3c/cambria/config
-
-
-###############################################################################
-##
-## Kafka Connection
-##
-## Items below are passed through to Kafka's producer and consumer
-## configurations (after removing "kafka.")
-## if you want to change request.required.acks it can take this one value
-#kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list=global-kafka.namespace-placeholder:9092
-#kafka.metadata.broker.list=172.17.0.1:9092
-#dmaap.namespace-placeholder:9092
-#10.208.128.229:9092
-##kafka.request.required.acks=-1
-#kafka.client.zookeeper=${config.zk.servers}
-consumer.timeout.ms=100
-zookeeper.connection.timeout.ms=6000
-zookeeper.session.timeout.ms=6000
-zookeeper.sync.time.ms=2000
-auto.commit.interval.ms=1000
-fetch.message.max.bytes =1000000
-auto.commit.enable=false
-
-
-###############################################################################
-##
-## Secured Config
-##
-## Some data stored in the config system is sensitive -- API keys and secrets,
-## for example. to protect it, we use an encryption layer for this section
-## of the config.
-##
-## The key is a base64 encode AES key. This must be created/configured for
-## each installation.
-#cambria.secureConfig.key=
-##
-## The initialization vector is a 16 byte value specific to the secured store.
-## This must be created/configured for each installation.
-#cambria.secureConfig.iv=
-
-## Southfield Sandbox
-cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q==
-cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw==
-authentication.adminSecret=fe3cCompound
-#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw==
-#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q==
-
-
-###############################################################################
-##
-## Consumer Caching
-##
-## Kafka expects live connections from the consumer to the broker, which
-## obviously doesn't work over connectionless HTTP requests. The Cambria
-## server proxies HTTP requests into Kafka consumer sessions that are kept
-## around for later re-use. Not doing so is costly for setup per request,
-## which would substantially impact a high volume consumer's performance.
-##
-## This complicates Cambria server failover, because we often need server
-## A to close its connection before server B brings up the replacement.
-##
-
-## The consumer cache is normally enabled.
-#cambria.consumer.cache.enabled=true
-
-## Cached consumers are cleaned up after a period of disuse. The server inspects
-## consumers every sweepFreqSeconds and will clean up any connections that are
-## dormant for touchFreqMs.
-#cambria.consumer.cache.sweepFreqSeconds=15
-#cambria.consumer.cache.touchFreqMs=120000
-
-## The cache is managed through ZK. The default value for the ZK connection
-## string is the same as config.zk.servers.
-#cambria.consumer.cache.zkConnect=${config.zk.servers}
-
-##
-## Shared cache information is associated with this node's name. The default
-## name is the hostname plus the HTTP service port this host runs on. (The
-## hostname is determined via InetAddress.getLocalHost ().getCanonicalHostName(),
-## which is not always adequate.) You can set this value explicitly here.
-##
-#cambria.api.node.identifier=<use-something-unique-to-this-instance>
-
-###############################################################################
-##
-## Metrics Reporting
-##
-## This server can report its metrics periodically on a topic.
-##
-#metrics.send.cambria.enabled=true
-#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap
-#metrics.send.cambria.sendEverySeconds=60
-
-cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache
-
-##############################################################################
-#100mb
-maxcontentlength=10000
-
-
-##############################################################################
-#AAF Properties
-msgRtr.namespace.aaf=org.openecomp.dcae.dmaap.mtnje2.mr.topic
-msgRtr.topicfactory.aaf=org.openecomp.dcae.dmaap.topicFactory|:org.openecomp.dcae.dmaap.mtnje2.mr.topic:
-enforced.topic.name.AAF=org.openecomp
-forceAAF=false
-transidUEBtopicreqd=false
-defaultNSforUEB=org.openecomp.dmaap.mr.ueb
-##############################################################################
-#Mirror Maker Agent
-msgRtr.mirrormakeradmin.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|admin
-msgRtr.mirrormakeruser.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|user
-msgRtr.mirrormakeruser.aaf.create=org.openecomp.dmaap.mr.dev.topicFactory|:org.openecomp.dmaap.mr.dev.topic:
-msgRtr.mirrormaker.timeout=15000
-msgRtr.mirrormaker.topic=org.openecomp.dmaap.mr.prod.mm.agent
-msgRtr.mirrormaker.consumergroup=mmagentserver
-msgRtr.mirrormaker.consumerid=1
diff --git a/kubernetes/config/docker/init/src/config/message-router/dmaap/mykey b/kubernetes/config/docker/init/src/config/message-router/dmaap/mykey
deleted file mode 100755
index c2b8b8779b..0000000000
--- a/kubernetes/config/docker/init/src/config/message-router/dmaap/mykey
+++ /dev/null
@@ -1,27 +0,0 @@
-_sNOLphPzrU7L0L3oWv0pYwgV_ddGF1XoBsQEIAp34jfP-fGJFPfFYaMpDEZ3gwH59rNw6qyMZHk
-k-4irklvVcWk36lC3twNvc0DueRCVrws1bkuhOLCXdxHJx-YG-1xM8EJfRmzh79WPlPkbAdyPmFF
-Ah44V0GjAnInPOFZA6MHP9rNx9B9qECHRfmvzU13vJCcgTsrmOr-CEiWfRsnzPjsICxpq9OaVT_D
-zn6rNaroGm1OiZNCrCgvRkCUHPOOCw3j9G1GeaImoZNYtozbz9u4sj13PU-MxIIAa64b1bMMMjpz
-Upc8lVPI4FnJKg6axMmEGn5zJ6JUq9mtOVyPj__2GEuDgpx5H4AwodXXVjFsVgR8UJwI_BvS2JVp
-JoQk0J1RqXmAXVamlsMAfzmmbARXgmrBfnuhveZnh9ymFVU-YZeujdANniXAwBGI7c6hG_BXkH7i
-Eyf4Fn41_SV78PskP6qgqJahr9r3bqdjNbKBztIKCOEVrE_w3IM5r02l-iStk_NBRkj6cq_7VCpG
-afxZ2CtZMwuZMiypO_wOgbdpCSKNzsL-NH2b4b08OlKiWb263gz634KJmV5WEfCl-6eH-JUFbWOS
-JwQfActLNT2ZQPl2MyZQNBzJEWoJRgS6k7tPRO-zqeUtYYHGHVMCxMuMHGQcoilNNHEFeBCG_fBh
-yAKb9g9F86Cbx9voMLiyTX2T3rwVHiSJFOzfNxGmfN5JWOthIun_c5hEY1tLQ15BomzkDwk7BAj7
-VbRCrVD45B6xrmSTMBSWYmLyr6mnQxQqeh9cMbD-0ZAncE3roxRnRvPKjFFa208ykYUp2V83r_PJ
-fV5I9ZPKSjk9DwFyrjkcQQEYDhdK6IFqcd6nEthjYVkmunu2fsX0bIOm9GGdIbKGqBnpdgBO5hyT
-rBr9HSlZrHcGdti1R823ckDF0Ekcl6kioDr5NLIpLtg9zUEDRm3QrbX2mv5Zs8W0pYnOqglxy3lz
-bJZTN7oR7VasHUtjmp0RT9nLZkUs5TZ6MHhlIq3ZsQ6w_Q9Rv1-ofxfwfCC4EBrWKbWAGCf6By4K
-Ew8321-2YnodhmsK5BrT4zQ1DZlmUvK8BmYjZe7wTljKjgYcsLTBfX4eMhJ7MIW1kpnl8AbiBfXh
-QzN56Mki51Q8PSQWHm0W9tnQ0z6wKdck6zBJ8JyNzewZahFKueDTn-9DOqIDfr3YHvQLLzeXyJ8e
-h4AgjW-hvlLzRGtkCknjLIgXVa3rMTycseAwbW-mgdCqqkw3SdEG8feAcyntmvE8j2jbtSDStQMB
-9JdvyNLuQdNG4pxpusgvVso0-8NQF0YVa9VFwg9U6IPSx5p8FcW68OAHt_fEgT4ZtiH7o9aur4o9
-oYqUh2lALCY-__9QLq1KkNjMKs33Jz9E8LbRerG9PLclkTrxCjYAeUWBjCwSI7OB7xkuaYDSjkjj
-a46NLpdBN1GNcsFFcZ79GFAK0_DsyxGLX8Tq6q0Bvhs8whD8wlSxpTGxYkyqNX-vcb7SDN_0WkCE
-XSdZWkqTHXcYbOvoCOb_e6SFAztuMenuHWY0utX0gBfx_X5lPDFyoYXErxFQHiA7t27keshXNa6R
-ukQRRS8kMjre1U74sc-fRNXkXpl57rG4rgxaEX0eBeowa53KAsVvUAoSac2aC_nfzXrDvoyf9Xi3
-JpEZNhUDLpFCEycV4I7jGQ9wo9qNaosvlsr6kbLDNdb_1xrGVgjT3xEvRNJNPqslSAu-yD-UFhC3
-AmCdYUnugw_eEFqXCHTARcRkdPPvl2XsmEKY2IqEeO5tz4DyXQFaL-5hEVh6lYEU1EOWHk3UGIXe
-Vc5_Ttp82qNLmlJPbZvgmNTJzYTHDQ_27KBcp7IVVZgPDjVKdWqQvZ18KhxvfF3Idgy82LBZniFV
-IbtxllXiPRxoPQriSXMnXjh3XkvSDI2pFxXfEvLRn1tvcFOwPNCz3QfPIzYg8uYXN5bRt3ZOrR_g
-ZhIlrc7HO0VbNbeqEVPKMZ-cjkqGj4VAuDKoQc0eQ6X_wCoAGO78nPpLeIvZPx1X3z5YoqNA \ No newline at end of file
diff --git a/kubernetes/consul/Chart.yaml b/kubernetes/consul/Chart.yaml
index b82c39b0be..8cb1f1bb99 100644
--- a/kubernetes/consul/Chart.yaml
+++ b/kubernetes/consul/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: ONAP Consul Heath Monitor
+description: ONAP Consul Agent
name: consul
-version: 1.1.0
+version: 2.0.0
diff --git a/kubernetes/consul/charts/consul-server/Chart.yaml b/kubernetes/consul/charts/consul-server/Chart.yaml
new file mode 100644
index 0000000000..13be08782b
--- /dev/null
+++ b/kubernetes/consul/charts/consul-server/Chart.yaml
@@ -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 Consul Server
+name: consul-server
+version: 2.0.0
diff --git a/kubernetes/consul/charts/consul-server/requirements.yaml b/kubernetes/consul/charts/consul-server/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/consul/charts/consul-server/requirements.yaml
@@ -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.
+
+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/consul/charts/consul-server/templates/NOTES.txt b/kubernetes/consul/charts/consul-server/templates/NOTES.txt
new file mode 100644
index 0000000000..157fe92427
--- /dev/null
+++ b/kubernetes/consul/charts/consul-server/templates/NOTES.txt
@@ -0,0 +1,34 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/consul/charts/consul-server/templates/service.yaml b/kubernetes/consul/charts/consul-server/templates/service.yaml
new file mode 100644
index 0000000000..c0f8726826
--- /dev/null
+++ b/kubernetes/consul/charts/consul-server/templates/service.yaml
@@ -0,0 +1,63 @@
+# 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.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 }}
+ clusterIP: None
+---
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}-ui
+ 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.type2 }}
+ ports:
+ {{if eq .Values.service.type2 "NodePort" -}}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName2 }}
+ {{- else -}}
+ - port: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName2 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/consul/charts/consul-server/templates/statefulset.yaml b/kubernetes/consul/charts/consul-server/templates/statefulset.yaml
new file mode 100644
index 0000000000..bce316354b
--- /dev/null
+++ b/kubernetes/consul/charts/consul-server/templates/statefulset.yaml
@@ -0,0 +1,69 @@
+# 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: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ command: ["/usr/local/bin/docker-entrypoint.sh"]
+ args:
+ - "agent"
+ - "-bootstrap-expect={{ .Values.replicaCount }}"
+ - "-enable-script-checks"
+{{- $fullname := include "common.fullname" . -}}
+{{- $servname := include "common.servicename" . -}}
+{{- range $i,$t := until (int .Values.replicaCount)}}
+ - "-retry-join={{ $fullname }}-{{$i}}.{{ $servname }}"
+{{- end }}
+ - "-client=0.0.0.0"
+ - "-server"
+ - "-ui"
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{- 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 }}
diff --git a/kubernetes/consul/charts/consul-server/values.yaml b/kubernetes/consul/charts/consul-server/values.yaml
new file mode 100644
index 0000000000..671cf07c9d
--- /dev/null
+++ b/kubernetes/consul/charts/consul-server/values.yaml
@@ -0,0 +1,66 @@
+# 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: docker.io
+image: consul:1.0.6
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+replicaCount: 3
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 5
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 5
+
+service:
+ type: ClusterIP
+ name: consul-server
+ portName: consul-join
+ internalPort: 8301
+ type2: NodePort
+ portName2: consul-ui
+ internalPort2: 8500
+ nodePort2: 70
+
+ingress:
+ enabled: false
+
+resources: {}
diff --git a/kubernetes/consul/requirements.yaml b/kubernetes/consul/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/consul/requirements.yaml
@@ -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.
+
+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/consul/resources/config/consul-agent-config/aai-hbase-health.json b/kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json
index 6b42e0cc4a..4260035616 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/aai-hbase-health.json
@@ -5,7 +5,7 @@
{
"id": "hbase-aai",
"name": "HBase Health Check",
- "http": "http://hbase.{{ .Values.nsPrefix }}:8080/status/cluster",
+ "http": "http://aai-hbase:8080/status/cluster",
"method": "GET",
"header": {
"Cache-Control": ["no-cache"],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/aai-search-data-service-health.json b/kubernetes/consul/resources/config/consul-agent-config/aai-search-data-service-health.json
index 2a111d66eb..0817a19cf0 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/aai-search-data-service-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/aai-search-data-service-health.json
@@ -5,7 +5,7 @@
{
"id": "elasticsearch",
"name": "Search Data Service Document Store",
- "http": "http://aai-elasticsearch.{{ .Values.nsPrefix }}:9200/_cat/indices?v",
+ "http": "http://aai-elasticsearch:9200/_cat/indices?v",
"interval": "15s",
"timeout": "1s"
},
@@ -18,7 +18,7 @@
{
"id": "search-data-service-availability",
"name": "Search Data Service Availability",
- "script": "curl -k --cert /consul/certs/client-cert-onap.crt.pem --cert-type PEM --key /consul/certs/client-cert-onap.key.pem --key-type PEM https://search-data-service.{{ .Values.nsPrefix }}:9509/services/search-data-service/v1/jaxrsExample/jaxrs-services/echo/up 2>&1 | grep 'Up'",
+ "script": "curl -k --cert /consul/certs/client-cert-onap.crt.pem --cert-type PEM --key /consul/certs/client-cert-onap.key.pem --key-type PEM https://search-data-service:9509/services/search-data-service/v1/jaxrsExample/jaxrs-services/echo/up 2>&1 | grep 'Up'",
"interval": "15s"
},
{
diff --git a/kubernetes/consul/resources/config/consul-agent-config/aai-services-health.json b/kubernetes/consul/resources/config/consul-agent-config/aai-services-health.json
index 0274cd53c7..99acff4e61 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/aai-services-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/aai-services-health.json
@@ -5,7 +5,7 @@
{
"id": "aai-service",
"name": "Core A&AI",
- "http": "https://aai-service.{{ .Values.nsPrefix }}:8443/aai/util/echo",
+ "http": "https://aai.{{ .Release.Namespace }}:8443/aai/util/echo",
"header": {
"Authorization": ["Basic QUFJOkFBSQ=="],
"X-TransactionId": ["ConsulHealthCheck"],
@@ -18,7 +18,7 @@
{
"id": "aai-resources",
"name": "Resources Microservice",
- "http": "https://aai-resources.{{ .Values.nsPrefix }}:8447/aai/util/echo",
+ "http": "https://aai-resources.{{ .Release.Namespace }}:8447/aai/util/echo",
"header": {
"Authorization": ["Basic QUFJOkFBSQ=="],
"X-TransactionId": ["ConsulHealthCheck"],
@@ -31,7 +31,7 @@
{
"id": "aai-traversal",
"name": "Traversal Microservice",
- "http": "https://aai-traversal.{{ .Values.nsPrefix }}:8446/aai/util/echo",
+ "http": "https://aai-traversal.{{ .Release.Namespace }}:8446/aai/util/echo",
"header": {
"Authorization": ["Basic QUFJOkFBSQ=="],
"X-TransactionId": ["ConsulHealthCheck"],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/appc-dbbuilder.json b/kubernetes/consul/resources/config/consul-agent-config/appc-dbbuilder.json
index 9505246c25..c86361743a 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/appc-dbbuilder.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/appc-dbbuilder.json
@@ -5,7 +5,7 @@
{
"id": "appc-dgbuilder",
"name": "APPC-Dgbuilder Server Health Check",
- "http": "http://appc-dgbuilder.{{ .Values.nsPrefix }}:3000/",
+ "http": "http://appc-dgbuilder:3000/",
"method": "HEAD",
"header": {
"Authorization": ["Basic ZGd1c2VyOnRlc3QxMjM="],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb01-healthcheck.json b/kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb01-healthcheck.json
index f36251a78f..230d31f509 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb01-healthcheck.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb01-healthcheck.json
@@ -3,9 +3,9 @@
"name": "Health Check: APPC-SDN-CTL-DB-01",
"checks": [
{
- "id": "appc-sdnctldb01.{{ .Values.nsPrefix }}",
+ "id": "appc-sdnctldb01",
"name": "APPC SDNCTLDB01 Health Check",
- "tcp": "appc-sdnctldb01.{{ .Values.nsPrefix }}:3306",
+ "tcp": "appc-sdnctldb01:3306",
"interval": "10s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb02-healthcheck.json b/kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb02-healthcheck.json
index 8c8171fe5f..da669e3ac0 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb02-healthcheck.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/appc-sdnctldb02-healthcheck.json
@@ -3,9 +3,9 @@
"name": "Health Check: APPC-SDN-CTL-DB-02",
"checks": [
{
- "id": "appc-sdnctldb02.{{ .Values.nsPrefix }}",
+ "id": "appc-sdnctldb02",
"name": "APPC SDNCTLDB02 Health Check",
- "tcp": "appc-sdnctldb02.{{ .Values.nsPrefix }}:3306",
+ "tcp": "appc-sdnctldb02:3306",
"interval": "10s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/appc-sdnhost.json b/kubernetes/consul/resources/config/consul-agent-config/appc-sdnhost.json
index ec6db9d0cb..1548cab909 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/appc-sdnhost.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/appc-sdnhost.json
@@ -5,7 +5,7 @@
{
"id": "appc-sdnhost",
"name": "APPC SDN Host Health Check",
- "http": "http://appc-sdnhost.{{ .Values.nsPrefix }}:8282/apidoc/explorer/index.html",
+ "http": "http://appc-sdnhost:8282/apidoc/explorer/index.html",
"method": "HEAD",
"header": {
"Authorization": ["Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=="],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/clamp-mariadb-health.json b/kubernetes/consul/resources/config/consul-agent-config/clamp-mariadb-health.json
new file mode 100644
index 0000000000..f5ae467d74
--- /dev/null
+++ b/kubernetes/consul/resources/config/consul-agent-config/clamp-mariadb-health.json
@@ -0,0 +1,16 @@
+{
+ "service": {
+ "name": "Health Check: CLAMP - MariaDb",
+ "checks": [
+ {
+ "id": "clamp-mariadb",
+ "name": "CLAMP Mariadb Health Check",
+ "script": "/consul/scripts/clamp-mariadb-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ }
+ ]
+
+ }
+}
+
diff --git a/kubernetes/consul/resources/config/consul-agent-config/cli-health-check.json b/kubernetes/consul/resources/config/consul-agent-config/cli-health-check.json
new file mode 100644
index 0000000000..81e55cb871
--- /dev/null
+++ b/kubernetes/consul/resources/config/consul-agent-config/cli-health-check.json
@@ -0,0 +1,15 @@
+{
+ "service": {
+ "name": "Health Check: ONAP CLI",
+ "checks": [
+ {
+ "id": "cli",
+ "name": "CLI Health Check",
+ "http": "http://cli.{{include "common.namespace" .}}:8080",
+ "method": "GET",
+ "interval": "3600s",
+ "timeout": "1s"
+ }
+ ]
+ }
+}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/log-elastic-search.json b/kubernetes/consul/resources/config/consul-agent-config/log-elastic-search.json
index d14b16487f..6e580579e1 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/log-elastic-search.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/log-elastic-search.json
@@ -5,7 +5,7 @@
{
"id": "log-elasticsearch-server",
"name": "Log Elastic Search Health Check",
- "http": "http://elasticsearch.{{ .Values.nsPrefix }}:9200/_cluster/health?pretty",
+ "http": "http://log-es:9200/_cluster/health?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -14,7 +14,7 @@
{
"id": "log-elasticsearch-tcp",
"name": "Log Elastic Search TCP Health Check",
- "tcp": "elasticsearchtcp.{{ .Values.nsPrefix }}:9300",
+ "tcp": "log-es-tcp:9300",
"interval": "15s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/log-kibana.json b/kubernetes/consul/resources/config/consul-agent-config/log-kibana.json
index cc72bbf3e2..6bca63f7bf 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/log-kibana.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/log-kibana.json
@@ -5,7 +5,7 @@
{
"id": "log-kibana-server",
"name": "Log kibana Health Check",
- "http": "http://kibana.{{ .Values.nsPrefix }}:5601/status",
+ "http": "http://log-kibana:5601/status",
"method": "HEAD",
"tls_skip_verify": true,
"interval": "15s",
diff --git a/kubernetes/consul/resources/config/consul-agent-config/log-logstash.json b/kubernetes/consul/resources/config/consul-agent-config/log-logstash.json
index 9eb60fdf8a..ea32ecfe2a 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/log-logstash.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/log-logstash.json
@@ -5,7 +5,7 @@
{
"id": "log-logstash-internal-server-gi",
"name": "Log Stash Health Check - General Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/?pretty",
+ "http": "http://log-ls-http:9600/?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -14,7 +14,7 @@
{
"id": "log-logstash-internal-server-node-info",
"name": "Log Stash Health Check - Node Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/?pretty",
+ "http": "http://log-ls-http:9600/_node/?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -23,7 +23,7 @@
{
"id": "log-logstash-internal-server-os-info",
"name": "Log Stash Health Check - OS Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/os?pretty",
+ "http": "http://log-ls-http:9600/_node/os?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -32,7 +32,7 @@
{
"id": "log-logstash-internal-server-jvm-info",
"name": "Log Stash Health Check - JVM Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/jvm?pretty",
+ "http": "http://log-ls-http:9600/_node/jvm?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -41,7 +41,7 @@
{
"id": "log-logstash-internal-server-plugin-info",
"name": "Log Stash Health Check - Plugin Information",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/plugins?pretty",
+ "http": "http://log-ls-http:9600/_node/plugins?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -50,7 +50,7 @@
{
"id": "log-logstash-internal-server-node-stat",
"name": "Log Stash Health Check - Node Stats",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/stats?pretty",
+ "http": "http://log-ls-http:9600/_node/stats?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -59,7 +59,7 @@
{
"id": "log-logstash-internal-server-jvm-stat",
"name": "Log Stash Health Check - JVM Stats",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/stats/jvm?pretty",
+ "http": "http://log-ls-http:9600/_node/stats/jvm?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -68,7 +68,7 @@
{
"id": "log-logstash-internal-server-process-stat",
"name": "Log Stash Health Check - Process Stats",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/stats/process?pretty",
+ "http": "http://log-ls-http:9600/_node/stats/process?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -77,7 +77,7 @@
{
"id": "log-logstash-internal-server-os-stat",
"name": "Log Stash Health Check - OS Stats",
- "http": "http://logstashinternal.{{ .Values.nsPrefix }}:9600/_node/stats/os?pretty",
+ "http": "http://log-ls-http:9600/_node/stats/os?pretty",
"method": "GET",
"tls_skip_verify": true,
"interval": "15s",
@@ -86,7 +86,7 @@
{
"id": "log-logstash-tcp",
"name": "Log Stash File Beat TCP Health Check",
- "tcp": "logstash.{{ .Values.nsPrefix }}:5044",
+ "tcp": "log-ls:5044",
"interval": "15s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/mr-dmaap-health.json b/kubernetes/consul/resources/config/consul-agent-config/mr-dmaap-health.json
index ee0d90e30a..386e226168 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/mr-dmaap-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/mr-dmaap-health.json
@@ -2,7 +2,7 @@
"service": {
"name": "Health Check: Message Router - DMaaP",
"check": {
- "http": "http://dmaap.{{ .Values.nsPrefix }}:3904/topics",
+ "http": "http://message-router:3904/topics",
"interval": "30s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/msb-health.json b/kubernetes/consul/resources/config/consul-agent-config/msb-health.json
index d15c2ef829..ad4e422be1 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/msb-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/msb-health.json
@@ -3,34 +3,34 @@
"name": "Health Check: MSB",
"checks": [
{
- "id": "msb-eag.{{ .Values.nsPrefix }}",
+ "id": "msb-eag",
"name": "MSB eag Health Check",
- "http": "http://msb-eag.{{ .Values.nsPrefix }}:80/iui/microservices/default.html",
+ "http": "http://msb-eag:80/iui/microservices/default.html",
"method": "HEAD",
"tls_skip_verify": true,
"interval": "15s",
"timeout": "1s"
},
{
- "id": "msb-iag.{{ .Values.nsPrefix }}",
+ "id": "msb-iag",
"name": "MSB iag Health Check",
- "http": "http://msb-iag.{{ .Values.nsPrefix }}:80/iui/microservices/default.html",
+ "http": "http://msb-iag:80/iui/microservices/default.html",
"method": "HEAD",
"tls_skip_verify": true,
"interval": "15s",
"timeout": "1s"
},
{
- "id": "msb-consul.{{ .Values.nsPrefix }}",
+ "id": "msb-consul",
"name": "MSB consul Health Check",
- "tcp": "msb-consul.{{ .Values.nsPrefix }}:8500",
+ "tcp": "msb-consul:8500",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "msb-discovery.{{ .Values.nsPrefix }}",
+ "id": "msb-discovery",
"name": "MSB discovery Health Check",
- "tcp": "msb-discovery.{{ .Values.nsPrefix }}:10081",
+ "tcp": "msb-discovery:10081",
"interval": "15s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/mso-health.json b/kubernetes/consul/resources/config/consul-agent-config/mso-health.json
deleted file mode 100644
index 1df7714a06..0000000000
--- a/kubernetes/consul/resources/config/consul-agent-config/mso-health.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "service": {
- "name": "Health Check: MSO",
- "checks": [
- {
- "id": "mso-api-healthcheck",
- "name": "MSO API Health Check",
- "script": "/consul/scripts/mso-api-script.sh",
- "interval": "10s",
- "timeout": "1s"
- },
- {
- "id": "mso-camunda-healthcheck",
- "name": "MSO Camunda Health Check",
- "script": "/consul/scripts/mso-camunda-script.sh",
- "interval": "10s",
- "timeout": "1s"
- },
- {
- "id": "mso-jra-healthcheck",
- "name": "MSO JRA Health Check",
- "script": "/consul/scripts/mso-jra-script.sh",
- "interval": "10s",
- "timeout": "1s"
- }
- ]
- }
-}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/mso-mariabdb.json b/kubernetes/consul/resources/config/consul-agent-config/mso-mariabdb.json
deleted file mode 100644
index 54bd2ef1fe..0000000000
--- a/kubernetes/consul/resources/config/consul-agent-config/mso-mariabdb.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "service": {
- "name": "Health Check: MSO - MariaDb",
- "checks": [
- {
- "id": "mso-mariadb",
- "name": "MSO Mariadb Health Check",
- "script": "/consul/scripts/mso-mariadb-script.sh",
- "interval": "10s",
- "timeout": "1s"
- }
- ]
-
- }
-}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/multicloud-health-check.json b/kubernetes/consul/resources/config/consul-agent-config/multicloud-health-check.json
index dba7c77307..3757f4a6ac 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/multicloud-health-check.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/multicloud-health-check.json
@@ -5,7 +5,7 @@
{
"id": "framework",
"name": "Framework Health Check",
- "http": "http://framework.{{ .Values.nsPrefix }}:9001/api/multicloud/v0/swagger.json",
+ "http": "http://framework:9001/api/multicloud/v0/swagger.json",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
@@ -19,7 +19,7 @@
{
"id": "multicloud-ocata",
"name": "Multicloud Ocata Health Check",
- "http": "http://multicloud-ocata.{{ .Values.nsPrefix }}:9006/api/multicloud-ocata/v0/swagger.json",
+ "http": "http://multicloud-ocata:9006/api/multicloud-ocata/v0/swagger.json",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
@@ -33,7 +33,7 @@
{
"id": "multicloud-vio",
"name": "Multicloud Vio Health Check",
- "http": "http://multicloud-vio.{{ .Values.nsPrefix }}:9004/api/multicloud-vio/v0/swagger.json",
+ "http": "http://multicloud-vio:9004/api/multicloud-vio/v0/swagger.json",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
@@ -47,7 +47,7 @@
{
"id": "multicloud-windriver",
"name": "Multicloud Windriver Health Check",
- "http": "http://multicloud-windriver.{{ .Values.nsPrefix }}:9005/api/multicloud-titanium_cloud/v0/swagger.json",
+ "http": "http://multicloud-windriver:9005/api/multicloud-titanium_cloud/v0/swagger.json",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/policy-health.json b/kubernetes/consul/resources/config/consul-agent-config/policy-health.json
new file mode 100644
index 0000000000..22d135b6dd
--- /dev/null
+++ b/kubernetes/consul/resources/config/consul-agent-config/policy-health.json
@@ -0,0 +1,111 @@
+{
+ "service": {
+ "name": "Health Check: Policy",
+ "checks": [
+ {
+ "id": "Policy-mariadb-healthcheck",
+ "name": "Policy Mariadb Health Check",
+ "script": "/consul/scripts/policy-mariadb-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ },
+ {
+ "id": "policy-nexus-local-status",
+ "name": "Policy Nexus Local Status",
+ "http": "http://nexus:8081/nexus/service/local/status?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "policy-nexus-internal-metrics",
+ "name": "Policy Nexus Internal Metrics",
+ "http": "http://nexus:8081/nexus/internal/metrics?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "policy-nexus-internal-healthcheck",
+ "name": "Policy Nexus Internal Healthcheck",
+ "http": "http://nexus:8081/nexus/internal/healthcheck?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic YWRtaW46YWRtaW4xMjM="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "brmsgw-tcp",
+ "name": "BRMSGW Health Check",
+ "tcp": "brmsgw:9989",
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "drools",
+ "name": "Drools Health Check",
+ "http": "http://drools:6969/healthcheck?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic aGVhbHRoY2hlY2s6emIhWHp0RzM0"],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "pap",
+ "name": "PAP Health Check",
+ "http": "http://pap:9091/pap/test?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic dGVzdHBhcDphbHBoYTEyMw=="],
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "pdp",
+ "name": "PDP Health Check",
+ "http": "http://pdp:8081/pdp/test?pretty",
+ "method": "GET",
+ "header": {
+ "Authorization": ["Basic dGVzdHBkcDphbHBoYTEyMw=="],
+ "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/scripts/aai-search-storage-write-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/aai-search-storage-write-script.sh
index 3d26f6e71e..9ee0945d75 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/aai-search-storage-write-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/aai-search-storage-write-script.sh
@@ -1,6 +1,6 @@
-if curl -s -X PUT http://aai-elasticsearch.{{ .Values.nsPrefix }}: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.{{ .Values.nsPrefix }}:9200/searchhealth/stats/testwrite | grep '\"failed\":0'; then
- if curl -s -X GET http://aai-elasticsearch.{{ .Values.nsPrefix }}:9200/searchhealth/stats/testwrite | grep '\"found\":false'; then
+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
echo Successful PUT, DELETE, GET from Search Document Storage 2>&1
exit 0
else
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/appc-dbhost-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/appc-dbhost-script.sh
index 5f91c5e89c..112809ce43 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/appc-dbhost-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/appc-dbhost-script.sh
@@ -1,6 +1,6 @@
-APPC_DBHOST_POD=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "appc-dbhost-[^[:space:]]*")
+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 {{ .Values.nsPrefix }} exec -it $APPC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $APPC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
echo Success. APPC DBHost is running. 2>&1
exit 0
else
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/clamp-mariadb-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/clamp-mariadb-script.sh
new file mode 100644
index 0000000000..2cf7fc78c5
--- /dev/null
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/clamp-mariadb-script.sh
@@ -0,0 +1,15 @@
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-clampdb[^[:space:]]*")
+
+ if [ -n "$NAME" ]; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+ echo Success. CLAMP DBHost is running. 2>&1
+ exit 0
+ else
+ echo Failed. CLAMP DBHost is not running. 2>&1
+ exit 1
+ fi
+ else
+ echo Failed. CLAMP DBHost is offline. 2>&1
+ exit 1
+ fi
+
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/data-router-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/data-router-script.sh
index 035e7c8a38..c85efc3c17 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/data-router-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/data-router-script.sh
@@ -1,8 +1,8 @@
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "aai-data-router[^[:space:]]*")
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-data-router[^[:space:]]*")
if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- ps -efww | grep 'java' | grep 'data-router' > /dev/null; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- ps -efww | grep 'java' | grep 'data-router' > /dev/null; then
echo Success. Synapse process is running. 2>&1
exit 0
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/model-loader-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/model-loader-script.sh
index 9a4b4df28f..a8babec102 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/model-loader-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/model-loader-script.sh
@@ -1,8 +1,8 @@
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "aai-model-loader[^[:space:]]*")
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-model-loader[^[:space:]]*")
if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- ps -efww | grep 'java' | grep 'model-loader' > /dev/null; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- ps -efww | grep 'java' | grep 'model-loader' > /dev/null; then
echo Success. Model Loader process is running. 2>&1
exit 0
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/mr-kafka-health.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/mr-kafka-health.sh
index a109032d3b..fd4587551d 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/mr-kafka-health.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/mr-kafka-health.sh
@@ -1,6 +1,6 @@
-kafkapod=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "message-router-global-kafka-[^[:space:]]*")
+kafkapod=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "message-router-kafka-[^[:space:]]*")
if [ -n "$kafkapod" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $kafkapod -- ps ef | grep -i kafka; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $kafkapod -- ps ef | grep -i kafka; then
echo Success. Kafka process is running. 2>&1
exit 0
else
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/mr-zookeeper-health.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/mr-zookeeper-health.sh
index 47c42d54ef..fb34057bfc 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/mr-zookeeper-health.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/mr-zookeeper-health.sh
@@ -1,6 +1,6 @@
-zkpod=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "message-router-zookeeper-[^[:space:]]*")
+zkpod=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "message-router-zookeeper-[^[:space:]]*")
if [ -n "$zkpod" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $zkpod -- ps ef | grep -i zookeeper; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $zkpod -- ps ef | grep -i zookeeper; then
echo Success. Zookeeper process is running. 2>&1
exit 0
else
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-mariadb-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-mariadb-script.sh
deleted file mode 100755
index aa73a73050..0000000000
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-mariadb-script.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "mso-mariadb[^[:space:]]*")
-
- if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
- echo Success. mariadb process is running. 2>&1
- exit 0
- else
- echo Failed. mariadb process is not running. 2>&1
- exit 1
- fi
- else
- echo Failed. mariadb container is offline. 2>&1
- exit 1
- fi
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/policy-mariadb-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/policy-mariadb-script.sh
new file mode 100644
index 0000000000..29dbe3f864
--- /dev/null
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/policy-mariadb-script.sh
@@ -0,0 +1,14 @@
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-policydb[^[:space:]]*")
+
+ if [ -n "$NAME" ]; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+ echo Success. mariadb process is running. 2>&1
+ exit 0
+ else
+ echo Failed. mariadb process is not running. 2>&1
+ exit 1
+ fi
+ else
+ echo Failed. mariadb container is offline. 2>&1
+ exit 1
+ fi
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-be-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-be-script.sh
index 00a05648d3..f007e62226 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-be-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-be-script.sh
@@ -1,5 +1,5 @@
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://sdc-fe.{{ .Values.nsPrefix }}:8181/sdc1/rest/healthCheck"
+HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
## Strip out the ON_BOARDING section from the response XML (otherwise we will
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-cs-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-cs-script.sh
index 9950cc9fdf..a9ba31a266 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-cs-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-cs-script.sh
@@ -1,5 +1,5 @@
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://sdc-fe.{{ .Values.nsPrefix }}:8181/sdc1/rest/healthCheck"
+HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
## Strip out the ON_BOARDING section from the response XML (otherwise we will
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-fe-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-fe-script.sh
index 27f3b224c6..4e3664ba73 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-fe-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-fe-script.sh
@@ -1,5 +1,5 @@
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://sdc-fe.{{ .Values.nsPrefix }}:8181/sdc1/rest/healthCheck"
+HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
## Strip out the ON_BOARDING section from the response XML (otherwise we will
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-titan-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-titan-script.sh
index c5955f3be3..85fc4319ff 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-titan-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdc-titan-script.sh
@@ -1,5 +1,5 @@
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://sdc-fe.{{ .Values.nsPrefix }}:8181/sdc1/rest/healthCheck"
+HEALTH_CHECK_ENDPOINT="http://sdc-fe:8181/sdc1/rest/healthCheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
## Strip out the ON_BOARDING section from the response XML (otherwise we will
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdnc-dbhost-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdnc-dbhost-script.sh
index 27b9b9f608..74064816a2 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/sdnc-dbhost-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/sdnc-dbhost-script.sh
@@ -1,6 +1,6 @@
-SDNC_DBHOST_POD=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "sdnc-dbhost-[^[:space:]]*")
+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 {{ .Values.nsPrefix }} exec -it $SDNC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $SDNC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
echo Success. SDNC DBHost is running. 2>&1
exit 0
else
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/search-data-service-availability.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/search-data-service-availability.sh
index d5118736cd..12bf9bf061 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/search-data-service-availability.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/search-data-service-availability.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-SEARCH_SERVICE_NAME="search-data-service.{{ .Values.nsPrefix }}"
+SEARCH_SERVICE_NAME="search-data-service.{{ include "common.namespace" . }}"
SEARCH_SERVICE_PORT=9509
HEALTH_CHECK_INDEX="healthcheck"
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-camunda-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/so-api-script.sh
index 341ff193e9..047d2cb6f1 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-camunda-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/so-api-script.sh
@@ -1,5 +1,5 @@
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://mso.{{ .Values.nsPrefix }}:8080/mso/healthcheck"
+HEALTH_CHECK_ENDPOINT="http://so:8080/ecomp/mso/infra/healthcheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-jra-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/so-camunda-script.sh
index beeb289517..9ad3ffc5cf 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-jra-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/so-camunda-script.sh
@@ -1,5 +1,5 @@
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://mso.{{ .Values.nsPrefix }}:8080/networks/rest/healthcheck"
+HEALTH_CHECK_ENDPOINT="http://so:8080/mso/healthcheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-api-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/so-jra-script.sh
index 8f3f85ce5e..96d9c7a765 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/mso-api-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/so-jra-script.sh
@@ -1,5 +1,5 @@
## Query the health check API.
-HEALTH_CHECK_ENDPOINT="http://mso.{{ .Values.nsPrefix }}:8080/ecomp/mso/infra/healthcheck"
+HEALTH_CHECK_ENDPOINT="http://so:8080/networks/rest/healthcheck"
HEALTH_CHECK_RESPONSE=$(curl -s $HEALTH_CHECK_ENDPOINT)
READY=$(echo $HEALTH_CHECK_RESPONSE | grep "Application ready")
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/so-mariadb-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/so-mariadb-script.sh
new file mode 100755
index 0000000000..e8135cb55c
--- /dev/null
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/so-mariadb-script.sh
@@ -0,0 +1,14 @@
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-so-db[^[:space:]]*")
+
+ if [ -n "$NAME" ]; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+ echo Success. mariadb process is running. 2>&1
+ exit 0
+ else
+ echo Failed. mariadb process is not running. 2>&1
+ exit 1
+ fi
+ else
+ echo Failed. mariadb container is offline. 2>&1
+ exit 1
+ fi
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/sparky-be-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/sparky-be-script.sh
index 7796681902..15175aa80f 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/sparky-be-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/sparky-be-script.sh
@@ -1,8 +1,8 @@
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "aai-sparky-be[^[:space:]]*")
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "aai-sparky-be[^[:space:]]*")
if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- ps -efww | grep 'java' | grep 'sparky' > /dev/null; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- ps -efww | grep 'java' | grep 'sparky' > /dev/null; then
echo Success. UI Backend Service process is running. 2>&1
exit 0
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
index dc7768fc6e..f2c7c587ff 100755
--- 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
@@ -1,13 +1,13 @@
# Query the Hbase service for the cluster status.
-GET_CLUSTER_STATUS_RESPONSE=$(curl -si -X GET -H "Accept: text/xml" http://hbase.{{ .Values.nsPrefix }}:8080/status/cluster)
+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
+ return 2
fi
-# Check the resulting status JSON to see if there is a 'DeadNodes' stanza with
+# Check the resulting status JSON to see if there is a 'DeadNodes' stanza with
# entries.
DEAD_NODES=$(echo $GET_CLUSTER_STATUS_RESPONSE | grep "<DeadNodes/>")
diff --git a/kubernetes/consul/resources/config/consul-agent-config/scripts/vid-mariadb-script.sh b/kubernetes/consul/resources/config/consul-agent-config/scripts/vid-mariadb-script.sh
index bbb080f44d..5ac5c8b844 100755
--- a/kubernetes/consul/resources/config/consul-agent-config/scripts/vid-mariadb-script.sh
+++ b/kubernetes/consul/resources/config/consul-agent-config/scripts/vid-mariadb-script.sh
@@ -1,7 +1,7 @@
-NAME=$(/consul/bin/kubectl -n {{ .Values.nsPrefix }} get pod | grep -o "vid-mariadb[^[:space:]]*")
+NAME=$(/consul/bin/kubectl -n {{ include "common.namespace" . }} get pod | grep -o "[^[:space:]]*-vid-mariadb[^[:space:]]*")
if [ -n "$NAME" ]; then
- if /consul/bin/kubectl -n {{ .Values.nsPrefix }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
+ if /consul/bin/kubectl -n {{ include "common.namespace" . }} exec -it $NAME -- bash -c 'mysqladmin status -u root -p$MYSQL_ROOT_PASSWORD' > /dev/null; then
echo Success. mariadb process is running. 2>&1
exit 0
else
diff --git a/kubernetes/consul/resources/config/consul-agent-config/sdc-health.json b/kubernetes/consul/resources/config/consul-agent-config/sdc-health.json
index ec8ec86c25..105635b592 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/sdc-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/sdc-health.json
@@ -33,7 +33,7 @@
{
"id": "sdc-catalog-healthcheck",
"name": "SDC Catalog Health Check",
- "http": "https://sdc-be.{{ .Values.nsPrefix }}:8443/asdc/v1/catalog/services",
+ "http": "https://sdc-be:8443/asdc/v1/catalog/services",
"header": {
"Authorization": ["Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="],
"X-ECOMP-InstanceID": ["VID"],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/sdnc-dgbuilder.json b/kubernetes/consul/resources/config/consul-agent-config/sdnc-dgbuilder.json
index 6ae14afac6..72e6be9093 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/sdnc-dgbuilder.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/sdnc-dgbuilder.json
@@ -5,7 +5,7 @@
{
"id": "sdnc-dgbuilder",
"name": "SDNC-DGbuilder Health Check",
- "http": "http://sdnc-dgbuilder.{{ .Values.nsPrefix }}:3000/",
+ "http": "http://sdnc-dgbuilder:3000/",
"method": "HEAD",
"header": {
"Authorization": ["Basic ZGd1c2VyOnRlc3QxMjM="],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/sdnc-health.json b/kubernetes/consul/resources/config/consul-agent-config/sdnc-health.json
index 0ee5e8951d..5f42835cf7 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/sdnc-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/sdnc-health.json
@@ -5,7 +5,7 @@
{
"id": "odl-api-healthcheck",
"name": "SDNC API Health Check",
- "http": "http://sdnhost.{{ .Values.nsPrefix }}:8282/restconf/operations/SLI-API:healthcheck",
+ "http": "http://sdnc:8282/restconf/operations/SLI-API:healthcheck",
"method": "POST",
"header": {
"Authorization": ["Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=="],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/sdnc-portal-health.json b/kubernetes/consul/resources/config/consul-agent-config/sdnc-portal-health.json
index 092df058e3..d03ce90820 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/sdnc-portal-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/sdnc-portal-health.json
@@ -5,7 +5,7 @@
{
"id": "sdnc-portal",
"name": "SDNC Portal Health Check",
- "http": "http://sdnc-portal.{{ .Values.nsPrefix }}:8843/login",
+ "http": "http://sdnc-portal:8843/login",
"method": "HEAD",
"header": {
"Cache-Control": ["no-cache"],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb01-healthcheck.json b/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb01-healthcheck.json
index ed4a29d7f6..e684c09da8 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb01-healthcheck.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb01-healthcheck.json
@@ -3,9 +3,9 @@
"name": "Health Check: SDNC-SDN-CTL-DB-01",
"checks": [
{
- "id": "sdnctldb01.{{ .Values.nsPrefix }}",
+ "id": "sdnctldb01",
"name": "SDNC SDNCTLDB01 Health Check",
- "tcp": "sdnctldb01.{{ .Values.nsPrefix }}:3306",
+ "tcp": "sdnc-dbhost:3306",
"interval": "10s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb02-healthcheck.json b/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb02-healthcheck.json
index 8c4700b6f0..ae4820a3e6 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb02-healthcheck.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnctldb02-healthcheck.json
@@ -3,9 +3,9 @@
"name": "Health Check: SDNC-SDN-CTL-DB-02",
"checks": [
{
- "id": "sdnctldb02.{{ .Values.nsPrefix }}",
+ "id": "sdnctldb02",
"name": "SDNC SDNCTLDB02 Health Check",
- "tcp": "sdnctldb02.{{ .Values.nsPrefix }}:3306",
+ "tcp": "sdnc-dbhost:3306",
"interval": "10s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnhost.json b/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnhost.json
index 585b9c0b69..604b5be901 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnhost.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/sdnc-sdnhost.json
@@ -5,7 +5,7 @@
{
"id": "sdnc-sdnhost",
"name": "SDNC SDN Host Health Check",
- "http": "http://sdnhost.{{ .Values.nsPrefix }}:8282/apidoc/explorer/index.html",
+ "http": "http://sdnhost:8282/apidoc/explorer/index.html",
"method": "HEAD",
"header": {
"Authorization": ["Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=="],
diff --git a/kubernetes/consul/resources/config/consul-agent-config/so-health.json b/kubernetes/consul/resources/config/consul-agent-config/so-health.json
new file mode 100644
index 0000000000..565c4a4a7a
--- /dev/null
+++ b/kubernetes/consul/resources/config/consul-agent-config/so-health.json
@@ -0,0 +1,28 @@
+{
+ "service": {
+ "name": "Health Check: SO",
+ "checks": [
+ {
+ "id": "so-api-healthcheck",
+ "name": "SO API Health Check",
+ "script": "/consul/scripts/so-api-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ },
+ {
+ "id": "so-camunda-healthcheck",
+ "name": "SO Camunda Health Check",
+ "script": "/consul/scripts/so-camunda-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ },
+ {
+ "id": "so-jra-healthcheck",
+ "name": "SO JRA Health Check",
+ "script": "/consul/scripts/so-jra-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ }
+ ]
+ }
+}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/so-mariabdb.json b/kubernetes/consul/resources/config/consul-agent-config/so-mariabdb.json
new file mode 100644
index 0000000000..fb554208e4
--- /dev/null
+++ b/kubernetes/consul/resources/config/consul-agent-config/so-mariabdb.json
@@ -0,0 +1,15 @@
+{
+ "service": {
+ "name": "Health Check: SO - MariaDb",
+ "checks": [
+ {
+ "id": "so-mariadb",
+ "name": "SO Mariadb Health Check",
+ "script": "/consul/scripts/so-mariadb-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ }
+ ]
+
+ }
+}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/vfc-health.json b/kubernetes/consul/resources/config/consul-agent-config/vfc-health.json
index 5ace3e4d9b..3661ac708b 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/vfc-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/vfc-health.json
@@ -3,107 +3,114 @@
"name": "Health Check: VFC",
"checks": [
{
- "id": "vfc-catalog.{{ .Values.nsPrefix }}",
+ "id": "vfc-catalog",
"name": "VFC catalog Health Check",
- "tcp": "vfc-catalog.{{ .Values.nsPrefix }}:8806",
+ "tcp": "vfc-catalog:8806",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-emsdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-emsdriver",
"name": "VFC emsdriver Health Check",
- "tcp": "vfc-emsdriver.{{ .Values.nsPrefix }}:8206",
+ "tcp": "vfc-ems-driver:8206",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-gvnfmdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-gvnfmdriver",
"name": "VFC gvnfmdriver Health Check",
- "tcp": "vfc-gvnfmdriver.{{ .Values.nsPrefix }}:8484",
+ "tcp": "vfc-generic-vnfm-driver:8484",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-hwvnfmdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-hwvnfmdriver",
"name": "VFC hwvnfmdriver Health Check",
- "tcp": "vfc-hwvnfmdriver.{{ .Values.nsPrefix }}:8482",
+ "tcp": "vfc-huawei-vnfm-driver:8482",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-jujudriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-jujudriver",
"name": "VFC jujudriver Health Check",
- "tcp": "vfc-jujudriver.{{ .Values.nsPrefix }}:8483",
+ "tcp": "vfc-juju-vnfm-driver:8483",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-nokiavnfmdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-nokiavnfmdriver",
"name": "VFC nokiavnfmdriver Health Check",
- "tcp": "vfc-nokiavnfmdriver.{{ .Values.nsPrefix }}:8486",
+ "tcp": "vfc-nokia-vnfm-driver:8486",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-nslcm.{{ .Values.nsPrefix }}",
+ "id": "vfc-nokiav2vnfmdriver",
+ "name": "VFC nokiav2vnfmdriver Health Check",
+ "tcp": "vfc-nokia-v2vnfm-driver:8089",
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
+ "id": "vfc-nslcm",
"name": "VFC nslcm Health Check",
- "tcp": "vfc-nslcm.{{ .Values.nsPrefix }}:8403",
+ "tcp": "vfc-nslcm:8403",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-resmgr.{{ .Values.nsPrefix }}",
+ "id": "vfc-resmgr",
"name": "VFC resmgr Health Check",
- "tcp": "vfc-resmgr.{{ .Values.nsPrefix }}:8480",
+ "tcp": "vfc-resmgr:8480",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-vnflcm.{{ .Values.nsPrefix }}",
+ "id": "vfc-vnflcm",
"name": "VFC vnflcm Health Check",
- "tcp": "vfc-vnflcm.{{ .Values.nsPrefix }}:8801",
+ "tcp": "vfc-vnflcm:8801",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-vnfmgr.{{ .Values.nsPrefix }}",
+ "id": "vfc-vnfmgr",
"name": "VFC vnfmgr Health Check",
- "tcp": "vfc-vnfmgr.{{ .Values.nsPrefix }}:8803",
+ "tcp": "vfc-vnfmgr:8803",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-vnfres.{{ .Values.nsPrefix }}",
+ "id": "vfc-vnfres",
"name": "VFC vnfres Health Check",
- "tcp": "vfc-vnfres.{{ .Values.nsPrefix }}:8802",
+ "tcp": "vfc-vnfres:8802",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-workflow.{{ .Values.nsPrefix }}",
+ "id": "vfc-workflow",
"name": "VFC workflow Health Check",
- "tcp": "vfc-workflow.{{ .Values.nsPrefix }}:10550",
+ "tcp": "vfc-workflow:10550",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-workflowengineactiviti.{{ .Values.nsPrefix }}",
+ "id": "vfc-workflowengineactiviti",
"name": "VFC workflow-engine Health Check",
- "tcp": "vfc-workflowengineactiviti.{{ .Values.nsPrefix }}:8080",
+ "tcp": "vfc-workflow-engine:8080",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-ztesdncdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-ztesdncdriver",
"name": "VFC ztesdncdriver Health Check",
- "tcp": "vfc-ztesdncdriver.{{ .Values.nsPrefix }}:8411",
+ "tcp": "vfc-zte-sdnc-driver:8411",
"interval": "15s",
"timeout": "1s"
},
{
- "id": "vfc-ztevnfmdriver.{{ .Values.nsPrefix }}",
+ "id": "vfc-ztevnfmdriver",
"name": "VFC ztevnfmdriver Health Check",
- "tcp": "vfc-ztevnfmdriver.{{ .Values.nsPrefix }}:8410",
+ "tcp": "vfc-zte-vnfm-driver:8410",
"interval": "15s",
"timeout": "1s"
}
diff --git a/kubernetes/consul/resources/config/consul-agent-config/vid-health.json b/kubernetes/consul/resources/config/consul-agent-config/vid-health.json
index 2dc6f0a9dc..d6d8d4c03d 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/vid-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/vid-health.json
@@ -5,7 +5,7 @@
{
"id": "vid-server",
"name": "VID Server Health Check",
- "http": "http://vid-server.{{ .Values.nsPrefix }}:8080/vid/healthCheck",
+ "http": "http://vid:8080/vid/healthCheck",
"method": "GET",
"header": {
"Authorization": ["Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ=="],
diff --git a/kubernetes/consul/templates/consul-agent-configmap.yaml b/kubernetes/consul/templates/configmap.yaml
index 57d52c4de1..a4270d3c87 100644
--- a/kubernetes/consul/templates/consul-agent-configmap.yaml
+++ b/kubernetes/consul/templates/configmap.yaml
@@ -12,28 +12,18 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableConsulConsulAgent }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: consul-agent-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/consul-agent-config/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: consul-agent-scripts-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-scripts-configmap
+ namespace: {{ include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/consul-agent-config/scripts/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: Secret
-metadata:
- name: consul-agent-certs-secret
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/consul-agent-config/certs/*").AsSecrets . | indent 2 }}
-#{{ end }}
diff --git a/kubernetes/consul/templates/consul-server-deployment.yaml b/kubernetes/consul/templates/consul-server-deployment.yaml
deleted file mode 100644
index 50dfb77d5e..0000000000
--- a/kubernetes/consul/templates/consul-server-deployment.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableConsulConsulServer }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: consul-server
- name: consul-server
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.consulServerReplicas }}
- selector:
- matchLabels:
- app: consul-server
- template:
- metadata:
- labels:
- app: consul-server
- name: consul-server
- spec:
- containers:
- - image: "{{ .Values.consulserverRegistry }}"
- command: ["/usr/local/bin/docker-entrypoint.sh"]
- args: ["agent","-server","-client","0.0.0.0","-enable-script-checks","-bootstrap-expect=3","-ui","-join","consul-server.{{ .Values.nsPrefix }}"]
- name: consul-server
-#{{ end }}
diff --git a/kubernetes/consul/templates/consul-agent-deployment.yaml b/kubernetes/consul/templates/deployment.yaml
index 2c4a14a9b6..d37521b5e6 100644
--- a/kubernetes/consul/templates/consul-agent-deployment.yaml
+++ b/kubernetes/consul/templates/deployment.yaml
@@ -12,32 +12,41 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableConsulConsulAgent }}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
labels:
- app: consul-agent
- name: consul-agent
- namespace: "{{ .Values.nsPrefix }}"
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
spec:
- replicas: {{ .Values.consulAgentReplicas }}
+ replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
- app: consul-agent
+ app: {{ include "common.name" . }}
template:
metadata:
labels:
- app: consul-agent
- name: consul-agent
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
spec:
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
containers:
- - image: "{{ .Values.consulagentRegistry }}"
- command: ["/usr/local/bin/docker-entrypoint.sh"]
- args: ["agent","-client","0.0.0.0","-enable-script-checks","-join","consul-server.{{ .Values.nsPrefix }}"]
- name: consul-server
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ command:
+ - /bin/sh
+ - "-c"
+ - |
+ cp /tmp/consul/config/* /consul/config
+ /usr/local/bin/docker-entrypoint.sh agent -client 0.0.0.0 -enable-script-checks -retry-join {{ .Values.consulServer.nameOverride }}
+ name: {{ include "common.name" . }}
volumeMounts:
- - mountPath: /consul/config
+ - mountPath: /tmp/consul/config
name: consul-agent-config
- mountPath: /consul/scripts
name: consul-agent-scripts-config
@@ -45,13 +54,12 @@ spec:
name: consul-agent-certs-config
volumes:
- configMap:
- name: consul-agent-configmap
+ name: {{ include "common.fullname" . }}-configmap
name: consul-agent-config
- configMap:
- name: consul-agent-scripts-configmap
+ name: {{ include "common.fullname" . }}-scripts-configmap
defaultMode: 0755
name: consul-agent-scripts-config
- secret:
- secretName: consul-agent-certs-secret
+ secretName: {{ include "common.fullname" . }}-certs-secret
name: consul-agent-certs-config
-#{{ end }}
diff --git a/kubernetes/consul/templates/secrets.yaml b/kubernetes/consul/templates/secrets.yaml
new file mode 100644
index 0000000000..2535437329
--- /dev/null
+++ b/kubernetes/consul/templates/secrets.yaml
@@ -0,0 +1,7 @@
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-certs-secret
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/consul-agent-config/certs/*").AsSecrets . | indent 2 }}
diff --git a/kubernetes/consul/values.yaml b/kubernetes/consul/values.yaml
index e86937a34c..abfc9ef0ef 100644
--- a/kubernetes/consul/values.yaml
+++ b/kubernetes/consul/values.yaml
@@ -11,12 +11,53 @@
# WITHOUT 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
-nsPrefix: "onap"
-nodePortPrefix: 302
-consulserverRegistry: "docker.io/consul:1.0.6"
-consulagentRegistry: "oomk8s/consul:1.0.0"
-consulAgentReplicas: 1
-consulServerReplicas: 3
-service:
- type: NodePort
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: docker.io
+image: oomk8s/consul:1.0.0
+pullPolicy: Always
+
+#subchart name
+consulServer:
+ nameOverride: consul-server
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 90
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 90
+ periodSeconds: 10
+
+service: {}
+
+ingress:
+ enabled: false
+
+resources: {}
diff --git a/kubernetes/dcaegen2/.helmignore b/kubernetes/dcaegen2/.helmignore
index a7adb75030..f0c1319444 100644
--- a/kubernetes/dcaegen2/.helmignore
+++ b/kubernetes/dcaegen2/.helmignore
@@ -19,4 +19,3 @@
.project
.idea/
*.tmproj
-dcae-parameters-sample.yaml \ No newline at end of file
diff --git a/kubernetes/dcaegen2/Chart.yaml b/kubernetes/dcaegen2/Chart.yaml
index 3eaca469e3..24916d0b77 100644
--- a/kubernetes/dcaegen2/Chart.yaml
+++ b/kubernetes/dcaegen2/Chart.yaml
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: DCAE Generation 2 bootstrap container
+description: ONAP DCAE Gen2
name: dcaegen2
-version: 1.1.0
+version: 2.0.0
diff --git a/kubernetes/dcaegen2/Makefile b/kubernetes/dcaegen2/Makefile
new file mode 100644
index 0000000000..c16f23be28
--- /dev/null
+++ b/kubernetes/dcaegen2/Makefile
@@ -0,0 +1,2 @@
+make-dmaap:
+ cd charts && helm dep up dcae-bootstrap
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/.helmignore b/kubernetes/dcaegen2/charts/dcae-bootstrap/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/Chart.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/Chart.yaml
new file mode 100644
index 0000000000..61cb14cebc
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/Chart.yaml
@@ -0,0 +1,22 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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: v1
+description: ONAP DCAE Bootstrap
+name: dcae-bootstrap
+version: 2.0.0
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/requirements.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/requirements.yaml
new file mode 100644
index 0000000000..9f53d90c06
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/requirements.yaml
@@ -0,0 +1,25 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+ - name: postgres
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/config/k8s-plugin.json b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/config/k8s-plugin.json
new file mode 100644
index 0000000000..5d83ff8f44
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/config/k8s-plugin.json
@@ -0,0 +1,32 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+{
+ "namespace" : "{{ if .Values.dcae_ns }}{{ .Values.dcae_ns}}{{ else }}{{include "common.namespace" . }}{{ end}}",
+ "consul_dns_name" : "{{ .Values.config.address.consul.host }}.{{ include "common.namespace" . }}",
+ "image_pull_secrets" : ["{{ include "common.namespace" . }}-docker-registry-key"],
+ "filebeat":
+ {
+ "log_path": "/var/log/onap",
+ "data_path": "/usr/share/filebeat/data",
+ "config_path": "/usr/share/filebeat/filebeat.yml",
+ "config_subpath": "filebeat.yml",
+ "image" : "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}",
+ "config_map" : "dcae-filebeat-configmap"
+ }
+}
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-config_binding_service-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-config_binding_service-inputs.yaml
new file mode 100644
index 0000000000..72a3441d31
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-config_binding_service-inputs.yaml
@@ -0,0 +1,23 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+#TODO would like to make this conditional, as with the other input templates
+# but having template expansion issues trying to do that
+{{ if .Values.componentImages.config_binding_service }}
+cbs_image: {{ include "common.repository" . }}/{{ .Values.componentImages.config_binding_service }}
+{{ end }}
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-deployment_handler-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-deployment_handler-inputs.yaml
new file mode 100644
index 0000000000..4f7c67003b
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-deployment_handler-inputs.yaml
@@ -0,0 +1,27 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+{{ if .Values.componentImages.deployment_handler }}
+deployment_handler_image: {{ include "common.repository" . }}/{{ .Values.componentImages.deployment_handler }}
+{{ end }}
+application_config:
+ cloudify:
+ protocol: "http"
+ inventory:
+ protocol: "http"
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-holmes_engine-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-holmes_engine-inputs.yaml
new file mode 100644
index 0000000000..b831602130
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-holmes_engine-inputs.yaml
@@ -0,0 +1,28 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+{
+{{ if .Values.componentImages.holmes_engine }}
+ "he_image" : '{{ include "common.repository" . }}/{{ .Values.componentImages.holmes_engine }}',
+{{ end }}
+ "msb_hostname": "{{ .Values.config.address.msb_discovery }}.{{include "common.namespace" . }}",
+ "dcae_CL_publish_url": "http://{{ .Values.config.address.message_router }}.{{include "common.namespace" . }}:3904/events/unauthenticated.DCAE_CL_OUTPUT",
+ "ves_fault_publish_url": "http://{{ .Values.config.address.message_router }}.{{include "common.namespace" . }}:3904/events/unauthenticated.SEC_FAULT_OUTPUT",
+ "pgaas_cluster_name" : "{{ .Values.postgres.service.name2 }}.{{include "common.namespace" . }}",
+ "database_name":"holmes"
+}
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-holmes_rules-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-holmes_rules-inputs.yaml
new file mode 100644
index 0000000000..d1413fcdbd
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-holmes_rules-inputs.yaml
@@ -0,0 +1,27 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+{
+{{ if .Values.componentImages.holmes_rules }}
+ "hr_image" : '{{ include "common.repository" . }}/{{ .Values.componentImages.holmes_rules }}',
+{{ end }}
+
+ "msb_hostname": "{{ .Values.config.address.msb_discovery }}.{{include "common.namespace" . }}",
+ "pgaas_cluster_name" : "{{ .Values.postgres.service.name2 }}.{{include "common.namespace" . }}",
+ "database_name":"holmes"
+}
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-inventory-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-inventory-inputs.yaml
new file mode 100644
index 0000000000..a4fdfbb197
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-inventory-inputs.yaml
@@ -0,0 +1,32 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+sdc_address: '{{ .Values.config.address.sdc }}.{{include "common.namespace" . }}:8443'
+sdc_uri: 'https://{{ .Values.config.address.sdc }}.{{include "common.namespace" . }}:8443'
+sdc_user: "dcae"
+sdc_password: !!str Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+sdc_environment_name: "AUTO"
+sdc_msg_bus_address: '{{ .Values.config.address.message_router }}.{{include "common.namespace" . }}'
+postgres_user_inventory: "postgres"
+postgres_password_inventory: "onap123"
+{{ if .Values.componentImages.service_change_handler }}
+service_change_handler_image: '{{ include "common.repository" . }}/{{ .Values.componentImages.service_change_handler }}'
+{{ end }}
+{{ if .Values.componentImages.inventory }}
+inventory_image: '{{ include "common.repository" . }}/{{ .Values.componentImages.inventory }}'
+{{ end }}
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-pgaas-initdb-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-pgaas-initdb-inputs.yaml
new file mode 100644
index 0000000000..b201247136
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-pgaas-initdb-inputs.yaml
@@ -0,0 +1,19 @@
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+k8s_pgaas_instance_fqdn: {{ .Values.postgres.service.name2 }}.{{include "common.namespace" . }}
+k8s_initial_password: {{ .Values.postgres.config.pgRootPassword }}
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-policy_handler-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-policy_handler-inputs.yaml
new file mode 100644
index 0000000000..846bc43290
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-policy_handler-inputs.yaml
@@ -0,0 +1,54 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+{{ if .Values.componentImages.policy_handler }}
+policy_handler_image: {{ include "common.repository" . }}/{{ .Values.componentImages.policy_handler }}
+{{ end }}
+application_config:
+ policy_handler :
+ # parallelize the getConfig queries to policy-engine on each policy-update notification
+ thread_pool_size : 4
+
+ # parallelize requests to policy-engine and keep them alive
+ pool_connections : 20
+
+ # list of policyName prefixes (filters) that DCAE-Controller handles (=ignores any other policyName values)
+ scope_prefixes : ["DCAE.Config_"]
+
+ # retry to getConfig from policy-engine on policy-update notification
+ policy_retry_count : 5
+ policy_retry_sleep : 5
+
+ # policy-engine config
+ # These are the url of and the auth for the external system, namely the policy-engine (PDP).
+ # We obtain that info manually from PDP folks at the moment.
+ # In long run we should figure out a way of bringing that info into consul record
+ # related to policy-engine itself.
+ policy_engine :
+ url : "http://{{ .Values.config.address.policy_pdp }}.{{include "common.namespace" . }}:8081"
+ path_pdp : "/pdp/"
+ path_api : "/pdp/api/"
+ headers :
+ Accept : "application/json"
+ "Content-Type" : "application/json"
+ ClientAuth : "cHl0aG9uOnRlc3Q="
+ Authorization : "Basic dGVzdHBkcDphbHBoYTEyMw=="
+ Environment : "TEST"
+ target_entity : "policy_engine"
+ # name of deployment-handler service in consul for policy-handler to direct the policy-updates to
+ deploy_handler : "deployment_handler"
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-tca-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-tca-inputs.yaml
new file mode 100644
index 0000000000..d998dfa418
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-tca-inputs.yaml
@@ -0,0 +1,28 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+{{ if .Values.componentImages.tca }}
+tag_version: {{ include "common.repository" . }}/{{ .Values.componentImages.tca }}
+{{ end }}
+dmaap_host: {{ .Values.config.address.message_router }}.{{include "common.namespace" . }}
+consul_host: {{ .Values.config.address.consul.host }}.{{include "common.namespace" . }}
+cbs_host: config-binding-service
+enableRedisCaching: {{ .Values.config.redisCaching }}
+{{ if .Values.config.redisHosts }}
+redisHosts: {{ .Values.config.redisHosts }}
+{{ end }}
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-ves-inputs.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-ves-inputs.yaml
new file mode 100644
index 0000000000..276de2a358
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/resources/inputs/k8s-ves-inputs.yaml
@@ -0,0 +1,26 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+{{ if .Values.componentImages.ves }}
+tag_version: {{ include "common.repository" . }}/{{ .Values.componentImages.ves }}
+{{ end }}
+external_port : "30235"
+ves_other_publish_url: "http://{{ .Values.config.address.message_router }}:3904/events/unauthenticated.SEC_OTHER_OUTPUT/"
+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/"
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/configmap.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/configmap.yaml
new file mode 100644
index 0000000000..2c01206518
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/configmap.yaml
@@ -0,0 +1,34 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dcae-config
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dcae-inputs
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/inputs/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/job.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/job.yaml
new file mode 100644
index 0000000000..a89ad7d710
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/job.yaml
@@ -0,0 +1,99 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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"
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/secret.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/secret.yaml
new file mode 100644
index 0000000000..a328ab278c
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/templates/secret.yaml
@@ -0,0 +1,31 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
+# 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: v1
+kind: Secret
+metadata:
+ name: {{ include "common.name" . }}-cmpass
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ password: YWRtaW4=
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml
new file mode 100644
index 0000000000..85f429c23d
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml
@@ -0,0 +1,84 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+ # Addresses of ONAP components
+ address:
+ consul:
+ host: consul-server
+ port: 8500
+ cm: dcae-cloudify-manager
+ message_router: message-router
+ msb_discovery: msb-discovery
+ policy_pdp: pdp
+ sdc: sdc-be
+ # redisCaching is a string not a boolean!
+ redisCaching: "false"
+
+# postgres values--overriding defaults in the postgres subchart
+postgres:
+ nameOverride: dcae-db
+ service:
+ name: dcae-postgres
+ name2: dcae-pg-primary
+ name3: dcae-pg-replica
+ container:
+ name:
+ primary: dcae-pg-primary
+ replica: dcae-pg-replica
+ config:
+ pgPrimaryPassword: onapdemodb
+ pgRootPassword: onapdemodb
+ persistence:
+ mountSubPath: dcae/data
+ mountInitPath: dcae
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.1.10
+
+# 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:latest
+ deployment_handler: onap/org.onap.dcaegen2.platform.deployment-handler:latest
+ holmes_engine: onap/holmes/engine-management:latest
+ holmes_rules: onap/holmes/rule-management:latest
+ inventory: onap/org.onap.dcaegen2.platform.inventory-api:latest
+ policy_handler: onap/org.onap.dcaegen2.platform.policy-handler:latest
+ service_change_handler: onap/org.onap.dcaegen2.platform.servicechange-handler:latest
+ tca: onap/org.onap.dcaegen2.deployments.tca-cdap-container:latest
+ ves: onap/org.onap.dcaegen2.collectors.ves.vescollector:latest
+
+# Kubernetes namespace for components deployed via Cloudify manager
+# If empty, use the common namespace
+# dcae_ns: "onap"
+
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/.helmignore b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/01-load-default-sql-files.sh b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/Chart.yaml
index 326f27356c..ff9cf89092 100644
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/01-load-default-sql-files.sh
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/Chart.yaml
@@ -1,25 +1,22 @@
-#!/bin/sh
-#
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
-# ===================================================================
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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
+# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT 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 and OpenECOMP are trademarks
-# and service marks of AT&T Intellectual Property.
-#
-#
-cd /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw
-mysql -uroot -p$MYSQL_ROOT_PASSWORD -f < create_mso_db-demo-vfw.sql \ No newline at end of file
+# ============LICENSE_END=========================================================
+
+apiVersion: v1
+description: ONAP DCAE Cloudify Manager
+name: dcae-cloudify-manager
+version: 2.0.0
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/README.md b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/README.md
new file mode 100644
index 0000000000..9194ef8332
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/README.md
@@ -0,0 +1,49 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+# DCAE Cloudify Manager Chart
+
+This chart is used to deploy a containerized version of
+[Cloudify Manager](http://docs.getcloudify.org/4.3.0/intro/cloudify-manager/),
+the orchestration tool used by DCAE. DCAE uses Cloudify Manager ("CM") to
+deploy the rest of the DCAE platform as well to deploy DCAE monitoring and
+analytics services dynamically, in response to network events such as VNF startups.
+
+Deployment of CM is the first of two steps in deploying DCAE into ONAP. After this chart
+brings up CM, a second chart (the "bootstrap" chart) installs some plugin extensions onto CM
+and uses CM to deploy some DCAE components.
+
+## Prerequisites
+The chart requires one Kubernetes secret to be available in the namespace where it is
+being deployed:
+ - `<namespace_name>-docker-registry-key`, the docker registry secret needed to pull images
+ from the Docker repository. This is the same secret used by other OOM charts.
+
+## DCAE Namespace
+DCAE will use CM deploy a number of containers into the ONAP Kubernetes cluster. In a production
+environment, DCAE's dynamic deployment of monitoring and analytics services could result in dozens
+of containers being launched. This chart allows the configuration, through the `dcae_ns` property
+in the `values.yaml` of a separate namespace used by CM when it needs to deploy containers into
+Kubernetes. If `dcae_ns` is set, this chart will:
+ - create the namespace.
+ - create the Docker registry key secret in the namespace.
+ - create some Kubernetes `Services` (of the `ExternalName` type) to map some addresses from the common namespace into the DCAE namespace.
+
+## Use of Consul
+DCAE uses [Consul](http://consul.io) to store configuration data for DCAE components. In R1, DCAE
+deployed its own Consul cluster. In R2, DCAE will use the Consul server deployed by OOM.
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/requirements.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/requirements.yaml
new file mode 100644
index 0000000000..1e8f788318
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/requirements.yaml
@@ -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' \ No newline at end of file
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/01-load-default-sql-files.sh b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/resources/config/config.txt
index 326f27356c..c33022d1a2 100644
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/01-load-default-sql-files.sh
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/resources/config/config.txt
@@ -1,25 +1,19 @@
-#!/bin/sh
-#
-# ============LICENSE_START==========================================
-# ===================================================================
-# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
-# ===================================================================
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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
+# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT 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 and OpenECOMP are trademarks
-# and service marks of AT&T Intellectual Property.
-#
-#
-cd /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw
-mysql -uroot -p$MYSQL_ROOT_PASSWORD -f < create_mso_db-demo-vfw.sql \ No newline at end of file
+# ============LICENSE_END=========================================================
+[consul]
+address={{ .Values.config.address.consul.host }}:{{ .Values.config.address.consul.port }}
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/resources/config/log/filebeat.yml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/resources/config/log/filebeat.yml
new file mode 100644
index 0000000000..43de4a25b9
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/resources/config/log/filebeat.yml
@@ -0,0 +1,72 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# Copyright © 2018 Amdocs, Bell Canada
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among availabe Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase
+
+logging:
+ level: debug
+
+ # enable file rotation with default configuration
+ to_files: true
+
+ # do not log to syslog
+ to_syslog: false
+
+ files:
+ path: /usr/share/filebeat/logs
+ name: mybeat.log
+ keepfiles: 7
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml
new file mode 100644
index 0000000000..6bb02dbf44
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml
@@ -0,0 +1,44 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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: 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: dcae-filebeat-configmap
+ namespace: {{include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
+{{ if .Values.dcae_ns }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: dcae-filebeat-configmap
+ namespace: {{ .Values.dcae_ns }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
+{{ end }}
+
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml
new file mode 100644
index 0000000000..acda520192
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml
@@ -0,0 +1,97 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: 1
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ 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 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:
+ - mountPath: /opt/onap/config.txt
+ subPath: config.txt
+ name: {{ include "common.fullname" .}}-config
+ readOnly: true
+ - mountPath: /secret
+ name: dcae-token
+ readOnly: true
+ - mountPath: /sys/fs/cgroup
+ name: {{ include "common.fullname" . }}-cgroup
+ readOnly: true
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ securityContext:
+ privileged: True
+ lifecycle:
+ postStart:
+ exec:
+ command:
+ - bash
+ - "-c"
+ - |
+ set -ex
+ mkdir -p /var/run/secrets/kubernetes.io/
+ ln -s /secret /var/run/secrets/kubernetes.io/serviceaccount
+ volumes:
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ - name: dcae-token
+ secret:
+ secretName: dcae-token
+ - name: {{ include "common.fullname" . }}-cgroup
+ hostPath:
+ path: /sys/fs/cgroup
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/namespace.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/namespace.yaml
new file mode 100644
index 0000000000..fd89aabbed
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/namespace.yaml
@@ -0,0 +1,28 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+{{ if .Values.dcae_ns}}
+# Create the namespace
+apiVersion: v1
+kind: Namespace
+metadata:
+ name: {{ .Values.dcae_ns }}
+spec:
+ finalizers:
+ - kubernetes
+{{ end }}
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/secret.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/secret.yaml
new file mode 100644
index 0000000000..ff0b8312b3
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/secret.yaml
@@ -0,0 +1,43 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+{{ if .Values.dcae_ns}}
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.namespace" . }}-docker-registry-key
+ namespace: {{ .Values.dcae_ns }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ .dockercfg: {{ include "common.repository.secret" . }}
+type: kubernetes.io/dockercfg
+---
+{{ end }}
+# Copy of the API token secret, needed to work around /var/run/secrets mount problem
+apiVersion: v1
+kind: Secret
+metadata:
+ name: dcae-token
+ namespace: {{ include "common.namespace" . }}
+ annotations:
+ kubernetes.io/service-account.name: default
+type: kubernetes.io/service-account-token
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/service.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/service.yaml
new file mode 100644
index 0000000000..56b2c619c7
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/service.yaml
@@ -0,0 +1,76 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.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 }}
+{{ if .Values.dcae_ns}}
+---
+# Make consul visible inside DCAE component namespace under a well-known name
+apiVersion: v1
+kind: Service
+metadata:
+ name: consul
+ namespace: {{ .Values.dcae_ns }}
+spec:
+ type: ExternalName
+ externalName: {{ .Values.config.address.consul.host }}.{{ include "common.namespace" . }}.svc.cluster.local
+---
+# Make Cloudify Manager visible inside DCAE component namespace under a well-known name
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ .Values.dcae_ns }}
+spec:
+ type: ExternalName
+ externalName: {{ .Values.service.name }}.{{ include "common.namespace" . }}.svc.cluster.local
+{{ end }}
+---
+# Provide alternate name for consul in common namespace to support CM plugin discovery
+apiVersion: v1
+kind: Service
+metadata:
+ name: consul
+ namespace: {{ include "common.namespace" . }}
+spec:
+ type: ExternalName
+ externalName: {{ .Values.config.address.consul.host }}.{{ include "common.namespace" . }}.svc.cluster.local
+---
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml
new file mode 100644
index 0000000000..6d87be3441
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml
@@ -0,0 +1,69 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ repositoryCred:
+ user: docker
+ password: docker
+
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+ # Addresses of other ONAP entities
+ address:
+ consul:
+ host: consul-server
+ port: 8500
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.dcaegen2.deployments.cm-container:latest
+pullPolicy: Always
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: dcae-cloudify-manager
+ externalPort: 80
+ internalPort: 80
+
+# Kubernetes namespace for components deployed via Cloudify manager
+# If empty, use the common namespace
+# dcae_ns: "dcae"
diff --git a/kubernetes/policy/resources/config/opt/policy/config/drools/drools-tweaks.sh b/kubernetes/dcaegen2/charts/dcae-healthcheck/Chart.yaml
index 8bff59c2e7..4c01d4eca2 100755..100644
--- a/kubernetes/policy/resources/config/opt/policy/config/drools/drools-tweaks.sh
+++ b/kubernetes/dcaegen2/charts/dcae-healthcheck/Chart.yaml
@@ -1,23 +1,21 @@
-#! /bin/bash
-
-###
-# ============LICENSE_START=======================================================
-# ONAP
+#============LICENSE_START========================================================
# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+# Copyright (c) 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=========================================================
-###
-${POLICY_HOME}/bin/features enable healthcheck
+apiVersion: v1
+description: ONAP DCAE Health Check
+name: dcae-healthcheck
+version: 2.0.0
diff --git a/kubernetes/dcaegen2/charts/dcae-healthcheck/requirements.yaml b/kubernetes/dcaegen2/charts/dcae-healthcheck/requirements.yaml
new file mode 100644
index 0000000000..d031e2e890
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-healthcheck/requirements.yaml
@@ -0,0 +1,22 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/dcaegen2/charts/dcae-healthcheck/templates/deployment.yaml b/kubernetes/dcaegen2/charts/dcae-healthcheck/templates/deployment.yaml
new file mode 100644
index 0000000000..463504cf40
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-healthcheck/templates/deployment.yaml
@@ -0,0 +1,65 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: 1
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ 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 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 }}
+ env:
+ - name: DCAE_NAMESPACE
+ value: {{ .Values.dcae_ns }}
+ - name: ONAP_NAMESPACE
+ value: {{ include "common.namespace" . }}
+ - name: HELM_RELEASE
+ value: {{ .Release.Name }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dcaegen2/charts/dcae-healthcheck/templates/service.yaml b/kubernetes/dcaegen2/charts/dcae-healthcheck/templates/service.yaml
new file mode 100644
index 0000000000..05405340e3
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-healthcheck/templates/service.yaml
@@ -0,0 +1,45 @@
+#============LICENSE_START========================================================
+# ================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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: 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.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/dcaegen2/charts/dcae-healthcheck/values.yaml b/kubernetes/dcaegen2/charts/dcae-healthcheck/values.yaml
new file mode 100644
index 0000000000..7e9835457d
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-healthcheck/values.yaml
@@ -0,0 +1,53 @@
+#============LICENSE_START========================================================
+#=================================================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# 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=========================================================
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+service:
+ name: dcae-healthcheck
+ internalPort: 80
+ externalPort: 80
+ type: ClusterIP
+
+# 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
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.dcaegen2.deployments.healthcheck-container:1.1.0
+
+# Kubernetes namespace for components deployed via Cloudify manager
+# If empty, use the common namespace
+# dcae_ns: "onap"
+
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/.helmignore b/kubernetes/dcaegen2/charts/dcae-redis/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/Chart.yaml b/kubernetes/dcaegen2/charts/dcae-redis/Chart.yaml
new file mode 100644
index 0000000000..271458c8df
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/Chart.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: ONAP DCAE Redis
+name: dcae-redis
+version: 2.0.0
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/requirements.yaml b/kubernetes/dcaegen2/charts/dcae-redis/requirements.yaml
new file mode 100644
index 0000000000..7244af3970
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/requirements.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/resources/redis/scripts/redis-cluster-config.sh b/kubernetes/dcaegen2/charts/dcae-redis/resources/redis/scripts/redis-cluster-config.sh
new file mode 100755
index 0000000000..f4547525c9
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/resources/redis/scripts/redis-cluster-config.sh
@@ -0,0 +1,50 @@
+#!/bin/bash
+# ================================================================================
+# Copyright (c) 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=========================================================
+
+(if [[ "$HOSTNAME" == *{{.Chart.Name}}-0 ]]; then
+ echo "delay by 10 seconds for redis server starting"
+ sleep 10
+
+ NODES=""
+ echo "====> wait for all {{.Values.replicaCount}} redis pods up"
+ while [ "$(echo $NODES | wc -w)" -lt {{.Values.replicaCount}} ]
+ do
+ echo "======> $(echo $NODES |wc -w) / {{.Values.replicaCount}} pods up"
+ sleep 5
+ RESP=$(wget -vO- --ca-certificate /var/run/secrets/kubernetes.io/serviceaccount/ca.crt --header "Authorization
+: Bearer $(</var/run/secrets/kubernetes.io/serviceaccount/token)" https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_PORT
+_443_TCP_PORT/api/v1/namespaces/{{.Release.Namespace}}/pods?labelSelector=app={{.Chart.Name}})
+
+ IPS=$(echo $RESP | jq -r '.items[].status.podIP')
+ IPS2=$(echo $IPS | sed -e 's/[a-zA-Z]*//g')
+ echo "======> IPs: ["$IPS2"]"
+ NODES=""
+ for I in $IPS2; do NODES="$NODES $I:{{.Values.service.externalPort}}"; done
+ echo "======> nodes: ["$NODES"]"
+ done
+ echo "====> all {{.Values.replicaCount}} redis cluster pods are up. wait 10 seconds before the next step"; echo
+ sleep 10
+
+ echo "====> Configure the cluster"
+
+ # $NODES w/o quotes
+ echo "======> nodes: [$(echo $NODES |paste -s)]"
+ redis-trib create --replicas 1 $(echo $NODES |paste -s)
+fi ) &
+
+redis-server /conf/redis.conf
+
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/templates/NOTES.txt b/kubernetes/dcaegen2/charts/dcae-redis/templates/NOTES.txt
new file mode 100644
index 0000000000..d333bfc159
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/templates/NOTES.txt
@@ -0,0 +1,34 @@
+{{/*
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+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 }}
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/templates/configmap.yaml b/kubernetes/dcaegen2/charts/dcae-redis/templates/configmap.yaml
new file mode 100644
index 0000000000..85ebee672b
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/templates/configmap.yaml
@@ -0,0 +1,36 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+ redis.conf: |+
+ cluster-enabled yes
+ cluster-require-full-coverage no
+ cluster-node-timeout 15000
+ cluster-config-file /data/nodes.conf
+ cluster-migration-barrier 1
+ appendonly yes
+ protected-mode no
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-scripts
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/redis/scripts/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/templates/pv.yaml b/kubernetes/dcaegen2/charts/dcae-redis/templates/pv.yaml
new file mode 100644
index 0000000000..5573179d87
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/templates/pv.yaml
@@ -0,0 +1,227 @@
+{{/*
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}0
+ 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:
+ storageClassName: manual
+ 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 }}0
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}1
+ 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:
+ storageClassName: manual
+ 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 }}1
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}2
+ 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:
+ storageClassName: manual
+ 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 }}2
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}3
+ 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:
+ storageClassName: manual
+ 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 }}3
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}4
+ 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:
+ storageClassName: manual
+ 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 }}4
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}5
+ 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:
+ storageClassName: manual
+ 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 }}5
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}6
+ 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:
+ storageClassName: manual
+ 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 }}6
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}7
+ 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:
+ storageClassName: manual
+ 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 }}7
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}8
+ 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:
+ storageClassName: manual
+ 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 }}8
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}9
+ 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:
+ storageClassName: manual
+ 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 }}9
+
+{{- end -}}
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/templates/service.yaml b/kubernetes/dcaegen2/charts/dcae-redis/templates/service.yaml
new file mode 100644
index 0000000000..636f512a53
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/templates/service.yaml
@@ -0,0 +1,48 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+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:
+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 }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName2 }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/templates/statefulset.yaml b/kubernetes/dcaegen2/charts/dcae-redis/templates/statefulset.yaml
new file mode 100644
index 0000000000..f72e540f1e
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/templates/statefulset.yaml
@@ -0,0 +1,115 @@
+{{/*
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ .Values.service.name }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /bin/sh
+ - -c
+ - |
+ /opt/scripts/redis-cluster-config.sh
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - sh
+ - -c
+ - "redis-cli -h $(hostname) ping"
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /conf
+ name: {{ include "common.fullname" . }}-config
+ - mountPath: /data
+ name: {{ include "common.fullname" . }}-data
+ - mountPath: /opt/scripts
+ name: {{ include "common.fullname" . }}-scripts
+ 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: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
+ - key: redis.conf
+ path: redis.conf
+ - name: {{ include "common.fullname" . }}-scripts
+ configMap:
+ name: {{ include "common.fullname" . }}-scripts
+ defaultMode: 0755
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-data
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: manual
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
diff --git a/kubernetes/dcaegen2/charts/dcae-redis/values.yaml b/kubernetes/dcaegen2/charts/dcae-redis/values.yaml
new file mode 100644
index 0000000000..8550da074b
--- /dev/null
+++ b/kubernetes/dcaegen2/charts/dcae-redis/values.yaml
@@ -0,0 +1,114 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/org.onap.dcaegen2.deployments.redis-cluster-container:latest
+pullPolicy: Always
+
+# application configuration
+# Example:
+config: {}
+
+# default number of instances
+replicaCount: 6
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ timeoutSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 15
+ periodSeconds: 10
+
+service:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: NodePort
+ name: dcae-redis
+ portName: client
+ externalPort: 6379
+ internalPort: 6379
+ nodePort: 86
+ portName2: gossip
+ externalPort2: 16379
+ internalPort2: 16379
+ nodePort2: 87
+
+## 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)
+ accessMode: ReadWriteOnce
+ size: 10Mi
+ mountPath: /dockerdata-nfs
+ mountSubPath: redis/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/dcaegen2/dcae-parameters-sample.yaml b/kubernetes/dcaegen2/dcae-parameters-sample.yaml
deleted file mode 100644
index 251de3af04..0000000000
--- a/kubernetes/dcaegen2/dcae-parameters-sample.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# UUID of the OpenStack"s CentOS 7 cloud VM image
-# If your Openstack does not have a CentOS 7 cloud image, you will have to add one.
-centos7image_id: '52d4ea09-cc69-4a9a-9961-938a3282d209'
-# UUID of the OpenStack"s Ubuntu 16.04 VM image
-# If your Openstack does not have a buntu 16.04 cloud image, you will have to add one.
-ubuntu1604image_id: '97bbe637-5d42-419a-a2c7-beff33ffa23c'
-# ID of the OpenStack"s VM flavor to be used by DCAEGEN2 VMs (m1.medium/m1.large)
-flavor_id: '4'
-# UUID of the OpenStack"s security group to be used for DCAEGEN2 VMs
-security_group: 'abc0687d-34ab-4d37-8fe8-4b544d94ba71'
-# The name of the OpenStack network where public IP addresses and floating IPs are allocated from
-# This must use the name and not the UUID. The name must be unique otherwise the installer fails
-public_net: 'public'
-# The name of the OpenStack network where private IP addresses are allocated from
-private_net: 'onap_oam'
-# Group header for OpenStack Keystone parameters
-openstack:
- # User name
- username: 'dev'
- # Password
- password: 'dev'
- # Name of the OpenStack tenant/project where DCAEGEN2 VMs are deployed
- tenant_name: 'dev'
- # Openstack authentication API URL, for example 'https://horizon.playground.onap.org:5000/v2.0'
- auth_url: 'http://1.2.3.4:5000/v2.0'
- # Name of the OpenStack region where DCAEGEN2 VMs are deployed, for example 'RegionOne'
- region: 'RegionOne'
-# Name of the public key uploaded to OpenStack in the Prepration step
-keypair: 'dcae-g2'
-# Path to the private key within the conatiner (!! Do not change!!)
-key_filename: '/opt/dcae/key'
-# Prefix (location code) of all DCAEGEN2 VMs
-location_prefix: 'onapr1'
-# Domain name of the OpenStack tenant 'onapr1.playground.onap.org'
-location_domain: 'onap-dcaegen2'
-# Location of the raw artifact repo hosting additional boot scripts called by DCAEGEN2 VMs" cloud-init, for example: 'https://nexus.onap.org/service/local/repositories/raw/content'
-codesource_url: 'https://nexus.onap.org/content/sites/raw'
-# Path to the boot scripts within the raw artifact repo, for example: 'org.onap.dcaegen2.deployments.scripts/releases/'
-codesource_version: 'org.onap.dcaegen2.deployments/releases/scripts/'
-
-
diff --git a/kubernetes/dcaegen2/requirements.yaml b/kubernetes/dcaegen2/requirements.yaml
new file mode 100644
index 0000000000..8cddd3029f
--- /dev/null
+++ b/kubernetes/dcaegen2/requirements.yaml
@@ -0,0 +1,4 @@
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/dcaegen2/templates/pod.yaml b/kubernetes/dcaegen2/templates/pod.yaml
deleted file mode 100644
index 711ca44c60..0000000000
--- a/kubernetes/dcaegen2/templates/pod.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableDcaegen2 }}
-apiVersion: v1
-kind: Pod
-metadata:
- name: {{ .Chart.Name }}
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- containers:
- - name: {{ .Chart.Name }}
- image: "{{ .Values.image.repository }}"
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- volumeMounts:
- - name: installer-config-mount
- mountPath: /opt/app/installer/config
- readOnly: true
- env:
- - name: LOCATION
- value: "{{ .Values.location }}"
- volumes:
- - name: installer-config-mount
- projected:
- sources:
- - secret:
- name: "{{ .Chart.Name }}-openstack-ssh-private-key"
- - configMap:
- name: "{{ .Chart.Name }}-config-inputs"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Never
-#{{ end }}
diff --git a/kubernetes/dcaegen2/values.yaml b/kubernetes/dcaegen2/values.yaml
index 5443089e45..7158f63dc7 100644
--- a/kubernetes/dcaegen2/values.yaml
+++ b/kubernetes/dcaegen2/values.yaml
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# 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,8 +12,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-location: dg2
-image:
- repository: nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.bootstrap:v1.1.0
- pullPolicy: Always
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+
+redis:
+ replicaCount: 6
diff --git a/kubernetes/dmaap/.helmignore b/kubernetes/dmaap/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/dmaap/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dmaap/Chart.yaml b/kubernetes/dmaap/Chart.yaml
new file mode 100644
index 0000000000..b18e59d785
--- /dev/null
+++ b/kubernetes/dmaap/Chart.yaml
@@ -0,0 +1,18 @@
+# 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
+description: ONAP DMaaP components
+name: dmaap
+version: 2.0.0
diff --git a/kubernetes/dmaap/Makefile b/kubernetes/dmaap/Makefile
new file mode 100644
index 0000000000..d80a9213d0
--- /dev/null
+++ b/kubernetes/dmaap/Makefile
@@ -0,0 +1,24 @@
+# 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.
+
+make-dmaap: make-bus-controller make-message-router
+
+make-bus-controller:
+ cd charts && helm dep up dmaap-bus-controller && helm lint dmaap-bus-controller
+
+make-message-router:
+ cd charts && helm dep up message-router && helm lint message-router
+
+clean:
+ @find . -type f -name '*.tgz' -delete
diff --git a/kubernetes/dmaap/README.md b/kubernetes/dmaap/README.md
new file mode 100644
index 0000000000..ad81b2f6e6
--- /dev/null
+++ b/kubernetes/dmaap/README.md
@@ -0,0 +1,25 @@
+# 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.
+
+# Helm Chart for ONAP DMaaP Applications
+
+ONAP includes the following Kubernetes services:
+
+1) message-router - a message bus for applications
+2) dbc-api - an API to provision DMaaP resources
+
+# Service Dependencies
+
+message-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/.helmignore b/kubernetes/dmaap/charts/dmaap-bus-controller/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/Chart.yaml b/kubernetes/dmaap/charts/dmaap-bus-controller/Chart.yaml
new file mode 100644
index 0000000000..430b7d13c3
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/Chart.yaml
@@ -0,0 +1,18 @@
+# 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
+description: a Helm chart to deploy ONAP DMaaP Bus Controller (aka dmaap-prov) in Kubernetes
+name: dmaap-bus-controller
+version: 2.0.0
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/README.md b/kubernetes/dmaap/charts/dmaap-bus-controller/README.md
new file mode 100644
index 0000000000..c696a2c361
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/README.md
@@ -0,0 +1,11 @@
+# Helm Chart for ONAP DMaaP Applications
+
+ONAP includes the following Kubernetes services available in ONAP Beijing Release (more expected in future):
+
+1) message-router - a message bus for applications
+2) dmaap-prov - an API to provision DMaaP resources
+
+# Service Dependencies
+
+message-router depends on AAF
+dmaap-prov depends on AAF and Postgresql.
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/requirements.yaml b/kubernetes/dmaap/charts/dmaap-bus-controller/requirements.yaml
new file mode 100644
index 0000000000..b67ac02eca
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/requirements.yaml
@@ -0,0 +1,21 @@
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+ - name: postgres
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/buscontroller.env b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/buscontroller.env
new file mode 100644
index 0000000000..6b15db9ced
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/buscontroller.env
@@ -0,0 +1,14 @@
+DMAAPBC_WAIT_TO_EXIT=Y
+DMAAPBC_PG_ENABLED=true
+# Need to connect to PG primary service, designated by service.name2
+DMAAPBC_PGHOST={{ .Values.postgres.service.name2 }}
+DMAAPBC_PGDBNAME={{ .Values.postgres.config.pgDatabase }}
+DMAAPBC_PGCRED={{ .Values.postgres.config.pgUserPassword }}
+DMAAPBC_PGUSER={{ .Values.postgres.config.pgUserName }}
+DMAAPBC_MR_CNAME={{ .Values.dmaapMessageRouterService }}
+DMAAPBC_AAF_URL={{ .Values.aafURL }}
+DMAAPBC_TOPICMGR_USER={{ .Values.topicMgrUser }}
+DMAAPBC_TOPICMGR_PWD={{ .Values.topicMgrPwd }}
+DMAAPBC_ADMIN_USER={{ .Values.adminUser }}
+DMAAPBC_ADMIN_PWD={{ .Values.adminPwd }}
+
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/NOTES.txt b/kubernetes/dmaap/charts/dmaap-bus-controller/templates/NOTES.txt
new file mode 100644
index 0000000000..254c6bf2a2
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/templates/NOTES.txt
@@ -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.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }}-prov)
+ 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 "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdnc/templates/dmaap-deployment-configmap.yaml b/kubernetes/dmaap/charts/dmaap-bus-controller/templates/configmap.yaml
index b2b8a45cbc..1ed749593f 100644
--- a/kubernetes/sdnc/templates/dmaap-deployment-configmap.yaml
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/templates/configmap.yaml
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# 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.
@@ -12,12 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableSdncDmaap }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdnc-dmaap-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-config
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/dmaap/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/deployment.yaml b/kubernetes/dmaap/charts/dmaap-bus-controller/templates/deployment.yaml
new file mode 100644
index 0000000000..32d6fe0612
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/templates/deployment.yaml
@@ -0,0 +1,94 @@
+# 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: 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.postgres.nameOverride }}
+ 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.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ httpGet:
+ port: {{ .Values.service.internalPort }}
+ path: /webapi/info
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ readinessProbe:
+ httpGet:
+ port: {{ .Values.service.internalPort }}
+ path: /webapi/info
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ {{ end -}}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: {{ include "common.name" . }}-config
+ mountPath: /opt/app/config/conf
+ subPath: buscontroller.env
+ 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: {{ include "common.name" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-config
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/service.yaml b/kubernetes/dmaap/charts/dmaap-bus-controller/templates/service.yaml
new file mode 100644
index 0000000000..2660052ffb
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/templates/service.yaml
@@ -0,0 +1,47 @@
+# 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:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name }}2
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }} \ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml b/kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml
new file mode 100644
index 0000000000..b3bd31726b
--- /dev/null
+++ b/kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml
@@ -0,0 +1,115 @@
+# 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.
+
+#################################################################
+# 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.
+#################################################################
+pullPolicy: Always
+
+# application images
+repository: nexus3.onap.org:10001
+
+image: onap/dmaap/buscontroller:latest
+
+
+# application configuration
+dmaapMessageRouterService: message-router
+aafURL: https://aaf-authz/
+topicMgrUser: m23456@dmaapbc.onap.org
+topicMgrPwd: onapdemo
+adminUser: m12345@dmaapbc.onap.org
+adminPwd: onapdemo
+
+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
+ name: dmaap-bc
+ portName: dmaap-bc
+ portName2: dmaap-bc
+ externalPort: 8080
+ internalPort: 8080
+ externalPort2: 8443
+ internalPort2: 8443
+ nodePort: 41
+ nodePort2: 42
+
+
+# application configuration override for postgres
+postgres:
+ nameOverride: dbc-pg
+ service:
+ name: dbc-postgres
+ name2: dbc-pg-primary
+ name3: dbc-pg-replica
+ container:
+ name:
+ primary: dbc-pg-primary
+ replica: dbc-pg-replica
+ config:
+ pgUserName: dmaap_admin
+ pgDatabase: dmaap
+ pgPrimaryPassword: onapdemodb
+ pgUserPassword: onapdemodb
+ pgRootPassword: onapdemodb
+ persistence:
+ mountSubPath: dbc/data
+ mountInitPath: dbc
+
+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/message-router/.helmignore b/kubernetes/dmaap/charts/message-router/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/message-router/Chart.yaml b/kubernetes/dmaap/charts/message-router/Chart.yaml
index 109cce20fe..dd7371cde4 100644
--- a/kubernetes/message-router/Chart.yaml
+++ b/kubernetes/dmaap/charts/message-router/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Message Router
name: message-router
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/.helmignore b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/Chart.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/Chart.yaml
new file mode 100644
index 0000000000..1457fa89b4
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/Chart.yaml
@@ -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.
+
+apiVersion: v1
+description: ONAP Message Router Kafka Service
+name: message-router-kafka
+version: 2.0.0
+
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/NOTES.txt b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/NOTES.txt
new file mode 100644
index 0000000000..f6e6e930b3
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/NOTES.txt
@@ -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.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/deployment.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/deployment.yaml
new file mode 100644
index 0000000000..f514dd1315
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/deployment.yaml
@@ -0,0 +1,116 @@
+# 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:
+ initContainers:
+ - name: {{ include "common.name" . }}-seed-kafka-topics
+ command:
+ - /bin/bash
+ - -c
+ - >
+ if [ -d /tmp/topics/ECOMP-PORTAL-INBOX-0 ]; then
+ echo "nothing to do";
+ else
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/oom-projects/data-kafka/kafka-logs/* to /tmp/topics";
+ cp -var /tmp/gerrit/oom-topics/data-kafka/kafka-logs/* /tmp/topics;
+ echo "Done.";
+ fi
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /tmp/topics
+ name: kafka-data
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.zookeeper.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.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 }}
+ 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_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}}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /var/run/docker.sock
+ name: docker-socket
+ - mountPath: /kafka
+ name: kafka-data
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: docker-socket
+ hostPath:
+ path: /var/run/docker.sock
+ - name: kafka-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pv.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pv.yaml
new file mode 100644
index 0000000000..da117f4919
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pv.yaml
@@ -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/message-router/charts/message-router-kafka/templates/pvc.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pvc.yaml
@@ -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/dmaap/charts/message-router/charts/message-router-kafka/templates/service.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/service.yaml
new file mode 100644
index 0000000000..117a8a9714
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/service.yaml
@@ -0,0 +1,32 @@
+# 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.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/values.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/values.yaml
new file mode 100644
index 0000000000..d6a8c2c03c
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/values.yaml
@@ -0,0 +1,120 @@
+# 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
+ persistence: {}
+ ubuntuInitRepository: registry.hub.docker.com
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: docker.io
+image: wurstmeister/kafka:1.1.0
+pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
+zookeeper:
+ name: message-router-zookeeper
+ port: 2181
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ # gerrit branch where the latest code is checked in
+ gerritBranch: master
+ # gerrit project where the latest code is checked in
+ gerritProject: http://gerrit.onap.org/r/dmaap/messagerouter/messageservice.git
+
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## 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: message-router/data-kafka
+
+service:
+ type: NodePort
+ name: message-router-kafka
+ portName: message-router-kafka
+ internalPort: 9092
+ externalPort: 9092
+
+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/message-router/charts/message-router-zookeeper/.helmignore b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/Chart.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/Chart.yaml
new file mode 100644
index 0000000000..49ac35beff
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/Chart.yaml
@@ -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.
+
+apiVersion: v1
+description: ONAP Dmaap Message Router Zookeeper Service
+name: message-router-zookeeper
+version: 2.0.0
+
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/NOTES.txt b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/NOTES.txt
new file mode 100644
index 0000000000..f6e6e930b3
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/NOTES.txt
@@ -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.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/deployment.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/deployment.yaml
new file mode 100644
index 0000000000..327afca767
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/deployment.yaml
@@ -0,0 +1,84 @@
+# 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:
+ initContainers:
+ - name: {{ include "common.name" . }}-seed-zookeeper-topics
+ command:
+ - /bin/bash
+ - -c
+ - >
+ if [ -d /tmp/topics/version-2 ]; then
+ echo "nothing to do";
+ else
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/oom-projects/data-zookeeper/* to /tmp/topics";
+ cp -var /tmp/gerrit/oom-topics/data-zookeeper/* /tmp/topics;
+ echo "Done.";
+ fi
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /tmp/topics
+ name: zookeeper-data
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ 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 }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/zookeeper-3.4.9/data
+ name: zookeeper-data
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: zookeeper-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pv.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pv.yaml
new file mode 100644
index 0000000000..da117f4919
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pv.yaml
@@ -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/message-router/charts/message-router-zookeeper/templates/pvc.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pvc.yaml
@@ -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/consul/templates/consul-server-service.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/service.yaml
index 1a646b4aba..2386125587 100644
--- a/kubernetes/consul/templates/consul-server-service.yaml
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/service.yaml
@@ -12,27 +12,21 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableConsulConsulServer }}
apiVersion: v1
kind: Service
metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
labels:
- app: consul-server
- name: consul-server
- namespace: "{{ .Values.nsPrefix }}"
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
spec:
ports:
- - name: consul-ui
- nodePort: {{ .Values.nodePortPrefix }}70
- port: 8500
- protocol: TCP
- targetPort: 8500
- - name: consul-join
- nodePort: {{ .Values.nodePortPrefix }}71
- port: 8301
- protocol: TCP
- targetPort: 8301
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
selector:
- app: consul-server
- type: {{ .Values.service.type | quote }}
-#{{ end }} \ No newline at end of file
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/values.yaml b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/values.yaml
new file mode 100644
index 0000000000..a71b14a046
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/values.yaml
@@ -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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ ubuntuInitRepository: registry.hub.docker.com
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: docker.io
+image: wurstmeister/zookeeper:latest
+pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ # gerrit branch where the latest code is checked in
+ gerritBranch: master
+ # gerrit project where the latest code is checked in
+ gerritProject: http://gerrit.onap.org/r/dmaap/messagerouter/messageservice.git
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## 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: message-router/data-zookeeper/
+
+service:
+ type: NodePort
+ name: message-router-zookeeper
+ portName: message-router-zookeeper
+ internalPort: 2181
+
+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/message-router/requirements.yaml b/kubernetes/dmaap/charts/message-router/requirements.yaml
new file mode 100644
index 0000000000..7beecb385c
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/requirements.yaml
@@ -0,0 +1,22 @@
+# 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
+ # 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/config/docker/init/src/config/dcae/message-router/dmaap/MsgRtrApi.properties b/kubernetes/dmaap/charts/message-router/resources/config/dmaap/MsgRtrApi.properties
index 2f37755d88..4015e941a6 100644..100755
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/MsgRtrApi.properties
+++ b/kubernetes/dmaap/charts/message-router/resources/config/dmaap/MsgRtrApi.properties
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
###############################################################################
##
## Cambria API Server config
@@ -5,7 +19,7 @@
## - Default values are shown as commented settings.
##
-###############################################################################
+##############################################################################
##
## HTTP service
##
@@ -15,11 +29,7 @@
##
## Both Cambria and Kafka make use of Zookeeper.
##
-config.zk.servers=zookeeper.namespace-placeholder:2181
-#config.zk.servers=172.17.0.1:2181
-#dmaap.namespace-placeholder:2181
-#10.208.128.229:2181
-#config.zk.root=/fe3c/cambria/config
+config.zk.servers={{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}
###############################################################################
@@ -29,11 +39,7 @@ config.zk.servers=zookeeper.namespace-placeholder:2181
## Items below are passed through to Kafka's producer and consumer
## configurations (after removing "kafka.")
## if you want to change request.required.acks it can take this one value
-#kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list=kafka.namespace-placeholder:9092
-#kafka.metadata.broker.list=172.17.0.1:9092
-#dmaap.namespace-placeholder:9092
-#10.208.128.229:9092
+kafka.metadata.broker.list={{.Values.kafka.name}}:{{.Values.kafka.port}}
##kafka.request.required.acks=-1
#kafka.client.zookeeper=${config.zk.servers}
consumer.timeout.ms=100
diff --git a/kubernetes/config/docker/init/src/config/message-router/dmaap/cadi.properties b/kubernetes/dmaap/charts/message-router/resources/config/dmaap/cadi.properties
index 1cb00a5cda..9079794517 100755
--- a/kubernetes/config/docker/init/src/config/message-router/dmaap/cadi.properties
+++ b/kubernetes/dmaap/charts/message-router/resources/config/dmaap/cadi.properties
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
basic_realm=openecomp.org
basic_warn=TRUE
diff --git a/kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/mykey b/kubernetes/dmaap/charts/message-router/resources/config/dmaap/mykey
index c2b8b8779b..c2b8b8779b 100644..100755
--- a/kubernetes/config/docker/init/src/config/dcae/message-router/dmaap/mykey
+++ b/kubernetes/dmaap/charts/message-router/resources/config/dmaap/mykey
diff --git a/kubernetes/dmaap/charts/message-router/templates/NOTES.txt b/kubernetes/dmaap/charts/message-router/templates/NOTES.txt
new file mode 100644
index 0000000000..f6e6e930b3
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/templates/NOTES.txt
@@ -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.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/dmaap/charts/message-router/templates/configmap.yaml b/kubernetes/dmaap/charts/message-router/templates/configmap.yaml
new file mode 100644
index 0000000000..9816bd9ca6
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/templates/configmap.yaml
@@ -0,0 +1,29 @@
+# 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" . }}-msgrtrapi-prop-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/dmaap/MsgRtrApi.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-cadi-prop-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/dmaap/cadi.properties").AsConfig . | indent 2 }}
diff --git a/kubernetes/dmaap/charts/message-router/templates/deployment.yaml b/kubernetes/dmaap/charts/message-router/templates/deployment.yaml
new file mode 100644
index 0000000000..379fc24594
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/templates/deployment.yaml
@@ -0,0 +1,95 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.kafka.name }}
+ - --container-name
+ - {{ .Values.zookeeper.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.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
+ subPath: MsgRtrApi.properties
+ name: appprops
+ - mountPath: /appl/dmaapMR1/etc/cadi.properties
+ subPath: cadi.properties
+ name: cadi
+ - mountPath: /appl/dmaapMR1/etc/keyfile
+ subPath: mykey
+ name: mykey
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: appprops
+ configMap:
+ name: {{ include "common.fullname" . }}-msgrtrapi-prop-configmap
+ - name: cadi
+ configMap:
+ name: {{ include "common.fullname" . }}-cadi-prop-configmap
+ - name: mykey
+ secret:
+ secretName: {{ include "common.fullname" . }}-secret
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/message-router/templates/secrets.yaml b/kubernetes/dmaap/charts/message-router/templates/secrets.yaml
new file mode 100644
index 0000000000..a7f6e18b39
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/templates/secrets.yaml
@@ -0,0 +1,27 @@
+# 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 }}
+data:
+{{ (.Files.Glob "resources/config/dmaap/mykey").AsSecrets | indent 2 }}
+type: Opaque
diff --git a/kubernetes/dmaap/charts/message-router/templates/service.yaml b/kubernetes/dmaap/charts/message-router/templates/service.yaml
new file mode 100644
index 0000000000..45c2616ec9
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/templates/service.yaml
@@ -0,0 +1,54 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "{{ include "common.servicename" . }}",
+ "version": "v1",
+ "url": "/",
+ "protocol": "REST",
+ "port": "{{.Values.service.internalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort2 }}
+ {{- 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/dmaap/charts/message-router/values.yaml b/kubernetes/dmaap/charts/message-router/values.yaml
new file mode 100644
index 0000000000..c29001be18
--- /dev/null
+++ b/kubernetes/dmaap/charts/message-router/values.yaml
@@ -0,0 +1,94 @@
+# 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/dmaap-mr:1.1.4
+pullPolicy: Always
+
+kafka:
+ name: message-router-kafka
+ port: 9092
+zookeeper:
+ name: message-router-zookeeper
+ port: 2181
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: message-router
+ portName: message-router
+ externalPort: 3904
+ nodePort: 27
+ externalPort2: 3905
+ nodePort2: 26
+
+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/requirements.yaml b/kubernetes/dmaap/requirements.yaml
new file mode 100644
index 0000000000..a5ef229145
--- /dev/null
+++ b/kubernetes/dmaap/requirements.yaml
@@ -0,0 +1,18 @@
+# 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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/dmaap/values.yaml b/kubernetes/dmaap/values.yaml
new file mode 100644
index 0000000000..53f170979a
--- /dev/null
+++ b/kubernetes/dmaap/values.yaml
@@ -0,0 +1,23 @@
+# 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.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
diff --git a/kubernetes/esr/.helmignore b/kubernetes/esr/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/esr/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/esr/Chart.yaml b/kubernetes/esr/Chart.yaml
index a80e6995b3..b47761d605 100644
--- a/kubernetes/esr/Chart.yaml
+++ b/kubernetes/esr/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP External System Register
name: esr
-version: 1.0.0
+version: 2.0.0
diff --git a/kubernetes/esr/charts/esr-gui/.helmignore b/kubernetes/esr/charts/esr-gui/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/esr/charts/esr-gui/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/esr/charts/esr-gui/Chart.yaml b/kubernetes/esr/charts/esr-gui/Chart.yaml
new file mode 100644
index 0000000000..ae53f85857
--- /dev/null
+++ b/kubernetes/esr/charts/esr-gui/Chart.yaml
@@ -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 External System Register GUI
+name: esr-gui
+version: 2.0.0
diff --git a/kubernetes/esr/charts/esr-gui/templates/NOTES.txt b/kubernetes/esr/charts/esr-gui/templates/NOTES.txt
new file mode 100644
index 0000000000..dde49c1439
--- /dev/null
+++ b/kubernetes/esr/charts/esr-gui/templates/NOTES.txt
@@ -0,0 +1,16 @@
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+ 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
+ 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 }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/esr/charts/esr-gui/templates/deployment.yaml b/kubernetes/esr/charts/esr-gui/templates/deployment.yaml
new file mode 100644
index 0000000000..e1b27bb422
--- /dev/null
+++ b/kubernetes/esr/charts/esr-gui/templates/deployment.yaml
@@ -0,0 +1,67 @@
+# 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 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 }}
+ env:
+ - name: MSB_ADDR
+ value: {{ tpl .Values.msbaddr . }}
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/esr/charts/esr-gui/templates/service.yaml b/kubernetes/esr/charts/esr-gui/templates/service.yaml
new file mode 100644
index 0000000000..678db1a059
--- /dev/null
+++ b/kubernetes/esr/charts/esr-gui/templates/service.yaml
@@ -0,0 +1,43 @@
+# 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.service.name }}
+ 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": "aai-esr-gui",
+ "version": "v1",
+ "url": "/esr-gui",
+ "protocol": "UI",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange":"1",
+ "path":"/iui/aai-esr-gui"
+ }
+ ]'
+spec:
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/esr/charts/esr-gui/values.yaml b/kubernetes/esr/charts/esr-gui/values.yaml
new file mode 100644
index 0000000000..23ac080ab1
--- /dev/null
+++ b/kubernetes/esr/charts/esr-gui/values.yaml
@@ -0,0 +1,73 @@
+# 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
+ persistence: {}
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aai/esr-gui:1.1.0-SNAPSHOT
+pullPolicy: Always
+msbaddr: msb-iag.{{ include "common.namespace" . }}:80
+
+# 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:
+ name: esr-gui
+ internalPort: 8080
+
+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/esr/requirements.yaml b/kubernetes/esr/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/esr/requirements.yaml
@@ -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.
+
+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/esr/templates/NOTES.txt b/kubernetes/esr/templates/NOTES.txt
new file mode 100644
index 0000000000..c1c46b126c
--- /dev/null
+++ b/kubernetes/esr/templates/NOTES.txt
@@ -0,0 +1,13 @@
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+ 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 }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/mso/templates/mso-log-configmap.yaml b/kubernetes/esr/templates/configmap.yaml
index ed6b16a2a7..a0c82bee55 100644
--- a/kubernetes/mso/templates/mso-log-configmap.yaml
+++ b/kubernetes/esr/templates/configmap.yaml
@@ -12,20 +12,19 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableMsoMso }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: mso-log-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-esr-filebeat
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: mso-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-esr-esrserver-log
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/log/esrserver/logback.xml").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/esr/templates/deployment.yaml b/kubernetes/esr/templates/deployment.yaml
new file mode 100644
index 0000000000..3f15df80f0
--- /dev/null
+++ b/kubernetes/esr/templates/deployment.yaml
@@ -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:
+ 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 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 }}
+ env:
+ - name: MSB_ADDR
+ value: {{ tpl .Values.msbaddr . }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /home/esr/works/logs
+ name: esr-server-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
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /home/esr/works/logs
+ name: esr-server-logs
+ - mountPath: /usr/share/filebeat/data
+ name: esr-server-filebeat
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-esr-filebeat
+ - name: esr-server-logs
+ emptyDir: {}
+ - name: esr-server-filebeat
+ emptyDir: {}
+ - name: esrserver-log
+ configMap:
+ name: {{ include "common.fullname" . }}-esr-esrserver-log
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/esr/templates/esr-esrgui-deployment.yaml b/kubernetes/esr/templates/esr-esrgui-deployment.yaml
deleted file mode 100644
index 92e26dceb0..0000000000
--- a/kubernetes/esr/templates/esr-esrgui-deployment.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableesrgui }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: esr-esrgui
- name: esr-esrgui
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: esr-esrgui
- template:
- metadata:
- labels:
- app: esr-esrgui
- name: esr-esrgui
- spec:
- containers:
- - image: {{ .Values.esrgui.image }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: esr-esrgui
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.esrgui.port }}
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/esr/templates/esr-esrserver-deployment.yaml b/kubernetes/esr/templates/esr-esrserver-deployment.yaml
deleted file mode 100644
index 3f00edcc91..0000000000
--- a/kubernetes/esr/templates/esr-esrserver-deployment.yaml
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableUuiUui }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: esr-esrserver
- name: esr-esrserver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: esr-esrserver
- template:
- metadata:
- labels:
- app: esr-esrserver
- name: esr-esrserver
- spec:
- containers:
- - name: esr-esrserver
- image: {{ .Values.esrserver.image }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- - mountPath: /home/esr/works/logs
- name: esr-server-logs
- ports:
- - containerPort: {{ .Values.esrserver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.esrserver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- - name: filebeat-onap-esr-server
- image: {{ .Values.filebeat.image }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- subPath: filebeat.yml
- name: filebeat-conf
- - mountPath: /home/esr/works/logs
- name: esr-server-logs
- - mountPath: /usr/share/filebeat/data
- name: esr-server-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: esr-filebeat-configmap
- - name: esr-server-logs
- emptyDir: {}
- - name: esr-server-filebeat
- emptyDir: {}
-#{{ end }}
diff --git a/kubernetes/esr/templates/all-services.yaml b/kubernetes/esr/templates/service.yaml
index ff6bd9554b..312a7bdcfb 100644
--- a/kubernetes/esr/templates/all-services.yaml
+++ b/kubernetes/esr/templates/service.yaml
@@ -12,14 +12,16 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableEsrServer }}
apiVersion: v1
kind: Service
metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
labels:
- app: esr-esrserver
- name: esr-esrserver
- namespace: "{{ .Values.nsPrefix }}"
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
annotations:
msb.onap.org/service-info: '[
{
@@ -27,42 +29,15 @@ metadata:
"version": "v1",
"url": "/api/aai-esr-server/v1",
"protocol": "REST",
- "port": "{{.Values.esrserver.port}}",
+ "port": "{{.Values.service.internalPort}}",
"enable_ssl": true,
"visualRange":"1"
}
]'
spec:
ports:
- - name: esr-esrserver
- port: {{.Values.esrserver.port}}
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
selector:
- app: esr-esrserver
-#{{ end }}
-#{{ if not .Values.disableEsrGui }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: esr-esrgui
- name: esr-esrgui
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "aai-esr-gui",
- "version": "v1",
- "url": "/esr-gui",
- "protocol": "UI",
- "port": "{{.Values.esrgui.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: esr-esrgui
- port: {{.Values.esrgui.port}}
- selector:
- app: esr-esrgui
-#{{ end }} \ No newline at end of file
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/esr/values.yaml b/kubernetes/esr/values.yaml
index 82aa3347bb..750bcffa20 100644
--- a/kubernetes/esr/values.yaml
+++ b/kubernetes/esr/values.yaml
@@ -12,22 +12,71 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ 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: onap/aai/esr-server:1.1.0-SNAPSHOT
pullPolicy: Always
-nodePortPrefix: 302
-msbaddr: msb-iag.{{ .Values.nsPrefix }}:80
-esrserver:
- image: nexus3.onap.org:10001/onap/aai/esr-server:v1.0.0
- port: 9518
- replicas: 1
-esrgui:
- image: nexus3.onap.org:10001/onap/aai/esr-gui:v1.0.0
- port: 8080
- replicas: 1
-filebeat:
- image: docker.elastic.co/beats/filebeat:5.5.0
+msbaddr: msb-iag.{{ include "common.namespace" . }}:80
+# application configuration
config:
logstashServiceName: log-ls
logstashPort: 5044
+# 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:
+ name: esr
+ internalPort: 9518
+
+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/helm/starters/onap-app/templates/deployment.yaml b/kubernetes/helm/starters/onap-app/templates/deployment.yaml
index 01253815a3..a78795486b 100644
--- a/kubernetes/helm/starters/onap-app/templates/deployment.yaml
+++ b/kubernetes/helm/starters/onap-app/templates/deployment.yaml
@@ -48,19 +48,19 @@ spec:
# name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ 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 eq .Values.liveness.enabled true }}
+ {{ if .Values.liveness.enabled }}
livenessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end -}}
+ {{ end }}
readinessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
@@ -101,4 +101,4 @@ spec:
# - key: application.properties
# path: application.properties
imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/helm/starters/onap-app/templates/service.yaml b/kubernetes/helm/starters/onap-app/templates/service.yaml
index cab488aac3..94b81e855c 100644
--- a/kubernetes/helm/starters/onap-app/templates/service.yaml
+++ b/kubernetes/helm/starters/onap-app/templates/service.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -42,11 +42,11 @@ spec:
#Example internal target port if required
#targetPort: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName | default "http" }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName | default "http" }}
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/helm/starters/onap-app/values.yaml b/kubernetes/helm/starters/onap-app/values.yaml
index 60b4682c5e..6c119b9bcd 100644
--- a/kubernetes/helm/starters/onap-app/values.yaml
+++ b/kubernetes/helm/starters/onap-app/values.yaml
@@ -17,9 +17,9 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ repository: nexus3.onap.org:10001
readinessRepository: oomk8s
- readinessImage: readiness-check:1.0.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
@@ -59,15 +59,21 @@ readiness:
initialDelaySeconds: 10
periodSeconds: 10
+#Example service definition with external, internal and node ports.
service:
- #Example service definition with external, internal and node ports.
+ # 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: NodePort
- name: <onap-app>
externalPort: <8080>
internalPort: <80>
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
diff --git a/kubernetes/log/charts/log-elasticsearch/resources/config/elasticsearch.yml b/kubernetes/log/charts/log-elasticsearch/resources/config/elasticsearch.yml
index e7933b8570..8bbb01997e 100644
--- a/kubernetes/log/charts/log-elasticsearch/resources/config/elasticsearch.yml
+++ b/kubernetes/log/charts/log-elasticsearch/resources/config/elasticsearch.yml
@@ -86,7 +86,6 @@ network.host: 0.0.0.0
# By default, Elasticsearch will bind to the available loopback addresses and will scan ports 9300 to 9305 to try
# to connect to other nodes running on the same server.
#
-#discovery.zen.ping.unicast.hosts: ["elasticsearch.{{.Values.nsPrefix}}"
#$discovery.zen.ping.unicast.hosts
#
# This setting tells Elasticsearch to not elect a master unless there are enough master-eligible nodes
@@ -116,7 +115,7 @@ http.port: {{.Values.service.externalPort}}
# If a range is specified, the node will bind to the first available port in the range.
# Defaults to 9300-9400.
# More info:
-transport.tcp.port: {{.Values.service.externalPortTcp}}
+transport.tcp.port: {{.Values.service.externalPort2}}
xpack.graph.enabled: false
#Set to false to disable X-Pack graph features.
diff --git a/kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml b/kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml
index 13caa7e866..c4491b914d 100644
--- a/kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml
+++ b/kubernetes/log/charts/log-elasticsearch/templates/deployment.yaml
@@ -61,8 +61,8 @@ spec:
ports:
- containerPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
- - containerPort: {{ .Values.service.internalPortTcp }}
- name: {{ .Values.service.name }}-tcp
+ - containerPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
{{- if eq .Values.liveness.enabled true }}
@@ -74,7 +74,7 @@ spec:
{{ end -}}
readinessProbe:
tcpSocket:
- port: {{ .Values.service.internalPortTcp }}
+ port: {{ .Values.service.internalPort2 }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
@@ -112,6 +112,6 @@ spec:
claimName: {{ include "common.fullname" . }}
- name: {{ include "common.fullname" . }}-logs
hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPathLogs }}
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPathLogs }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/log/charts/log-elasticsearch/templates/pv.yaml b/kubernetes/log/charts/log-elasticsearch/templates/pv.yaml
index dba12d4125..31230a9ed7 100644
--- a/kubernetes/log/charts/log-elasticsearch/templates/pv.yaml
+++ b/kubernetes/log/charts/log-elasticsearch/templates/pv.yaml
@@ -17,5 +17,5 @@ spec:
- {{ .Values.persistence.accessMode }}
persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
{{- end -}}
diff --git a/kubernetes/log/charts/log-elasticsearch/templates/service.yaml b/kubernetes/log/charts/log-elasticsearch/templates/service.yaml
index 72dfc7e817..cdc2ea8e77 100644
--- a/kubernetes/log/charts/log-elasticsearch/templates/service.yaml
+++ b/kubernetes/log/charts/log-elasticsearch/templates/service.yaml
@@ -27,19 +27,40 @@ spec:
type: {{ .Values.service.type }}
ports:
{{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.service.externalPort }}
+ - port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
name: {{ .Values.service.name }}
- - port: {{ .Values.service.internalPortTcp }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPortTcp }}
- name: {{ .Values.service.name }}-tcp
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
- - port: {{ .Values.service.externalPortTcp }}
- targetPort: {{ .Values.service.internalPortTcp }}
- name: {{ .Values.service.name }}-tcp
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name2 }}
+ 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.type2 }}
+ ports:
+ {{if eq .Values.service.type2 "NodePort" -}}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/log/charts/log-elasticsearch/values.yaml b/kubernetes/log/charts/log-elasticsearch/values.yaml
index 2e6e08509e..1b5c14a57c 100644
--- a/kubernetes/log/charts/log-elasticsearch/values.yaml
+++ b/kubernetes/log/charts/log-elasticsearch/values.yaml
@@ -17,7 +17,6 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
persistence: {}
#################################################################
@@ -82,15 +81,16 @@ persistence:
mountSubPathLogs: log
service:
- #Example service definition with external, internal and node ports.
- #Services may use any combination of ports depending on the 'type' of
- #service being defined.
- type: ClusterIP
+ type: NodePort
name: log-es
externalPort: 9200
internalPort: 9200
- externalPortTcp: 9300
- internalPortTcp: 9300
+ nodePort: 54
+ type2: ClusterIP
+ name2: log-es-tcp
+ externalPort2: 9300
+ internalPort2: 9300
+
ingress:
enabled: false
diff --git a/kubernetes/log/charts/log-kibana/templates/deployment.yaml b/kubernetes/log/charts/log-kibana/templates/deployment.yaml
index bdd5a447be..09dc88fb20 100644
--- a/kubernetes/log/charts/log-kibana/templates/deployment.yaml
+++ b/kubernetes/log/charts/log-kibana/templates/deployment.yaml
@@ -53,27 +53,30 @@ spec:
- containerPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
readinessProbe:
- tcpSocket:
+ httpGet:
+ path: "/"
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
+ timeoutSeconds: {{ .Values.readiness.timeoutSeconds }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
{{- if eq .Values.liveness.enabled true }}
livenessProbe:
- tcpSocket:
+ httpGet:
+ path: "/"
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
{{ end -}}
env:
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /usr/share/kibana/config/kibana.yml
+ - mountPath: /usr/share/kibana/config/
name: {{ include "common.fullname" . }}
- subPath: kibana.yml
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
diff --git a/kubernetes/log/charts/log-kibana/values.yaml b/kubernetes/log/charts/log-kibana/values.yaml
index 50c6e52ee0..a133eac1a6 100644
--- a/kubernetes/log/charts/log-kibana/values.yaml
+++ b/kubernetes/log/charts/log-kibana/values.yaml
@@ -17,9 +17,8 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
persistence: {}
#################################################################
@@ -52,15 +51,17 @@ affinity: {}
# probe configuration parameters
liveness:
- initialDelaySeconds: 120
+ initialDelaySeconds: 180
periodSeconds: 10
+ timeoutSeconds: 1
# necessary to disable liveness probe when setting breakpoints
# in debugger so K8s doesn't restart unresponsive container
enabled: true
readiness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 180
periodSeconds: 10
+ timeoutSeconds: 1
service:
#Example service definition with external, internal and node ports.
diff --git a/kubernetes/log/charts/log-logstash/resources/config/onap-pipeline.conf b/kubernetes/log/charts/log-logstash/resources/config/onap-pipeline.conf
index 3b4fd768c3..e46d2bac14 100644
--- a/kubernetes/log/charts/log-logstash/resources/config/onap-pipeline.conf
+++ b/kubernetes/log/charts/log-logstash/resources/config/onap-pipeline.conf
@@ -37,8 +37,20 @@ input {
filter {
+ grok {
+ break_on_match => false
+ match => {
+ "source" => ["/var/log/onap/(?<componentName>[^/]+)/",
+ "/var/log/onap/%{GREEDYDATA:componentLogFile}"
+ ]
+ }
+ }
+
# Filter for log4j xml events
if "</log4j:event>" in [message] {
+
+ #mutate { add_field => { "orgmsg_log4j" => "%{message}" } } # Copy of orginal msg for debug
+
#Filter to parse xml event and retrieve data
xml {
source => "message"
@@ -118,7 +130,7 @@ filter {
# Filter for logback events
else {
-# mutate { add_field => { "orgmsg" => "%{message}" } } # Copy of orginal msg for debug
+ #mutate { add_field => { "orgmsg" => "%{message}" } } # Copy of orginal msg for debug
mutate {
gsub => [
@@ -128,50 +140,44 @@ filter {
'message', '\t$', '\t'
]
}
+ # The grok below parses the message field for all current logback patterns used by oom components.
+ # Example logback pattern: %d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg
+ # Example grok pattern: %{TIMESTAMP_ISO8601:Timestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:message}
+ # Use the following command to find all logback patterns in oom directory: find oom -name "logback*xml" -exec grep "property.*attern.*value" {} \;|sort|uniq
grok {
- break_on_match => false
match => {
- "message" => ["%{TIMESTAMP_ISO8601:Timestamp}\t%{GREEDYDATA:Thread}\t%{SPACE}%{LOGLEVEL:loglevel}%{SPACE}\t%{JAVACLASS:Logger}\t(?:[^\t]+\t)*%{GREEDYDATA:message}",
- "(?<MDCs>.*\t)"
- ]
- "source" => ["/var/log/onap/(?<componentName>[^/]+)/",
- "/var/log/onap/%{GREEDYDATA:componentLogFile}"
- ]
+ "message" => [
+ "%{TIMESTAMP_ISO8601:Timestamp}\\t[%{GREEDYDATA:Thread}]\\t%{GREEDYDATA:loglevel}\\t%{JAVACLASS:Logger}\\t%{GREEDYDATA:MDCs}\\t%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:BeginTimestamp}\|%{TIMESTAMP_ISO8601:EndTimestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:ServiceInstanceId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:Unknown1}\|%{GREEDYDATA:ServiceName}\|%{GREEDYDATA:PartnerName}\|%{GREEDYDATA:TargetEntity}\|%{GREEDYDATA:TargetServiceName}\|%{GREEDYDATA:StatusCode}\|%{GREEDYDATA:ResponseCode}\|%{GREEDYDATA:ResponseDesc}\|%{UUID:InstanceUUID}\|%{GREEDYDATA:loglevel}\|%{GREEDYDATA:AlertSeverity}\|%{IP:ServerIPAddress}\|%{GREEDYDATA:Timer}\|%{HOSTNAME:ServerFQDN}\|%{IPORHOST:RemoteHost}\|%{GREEDYDATA:Unknown2}\|%{GREEDYDATA:Unknown3}\|%{GREEDYDATA:Unknown4}\|%{GREEDYDATA:TargetVirtualEntity}\|%{GREEDYDATA:Unknown5}\|%{GREEDYDATA:Unknown6}\|%{GREEDYDATA:Unknown7}\|%{GREEDYDATA:Unknown8}\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:BeginTimestamp}\|%{TIMESTAMP_ISO8601:EndTimestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:ServiceInstanceId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:Unknown1}\|%{GREEDYDATA:ServiceName}\|%{GREEDYDATA:PartnerName}\|%{GREEDYDATA:StatusCode}\|%{GREEDYDATA:ResponseCode}\|%{GREEDYDATA:ResponseDesc}\|%{UUID:InstanceUUID}\|%{GREEDYDATA:loglevel}\|%{GREEDYDATA:AlertSeverity}\|%{IP:ServerIPAddress}\|%{GREEDYDATA:Timer}\|%{HOSTNAME:ServerFQDN}\|%{IPORHOST:RemoteHost}\|%{GREEDYDATA:Unknown2}\|%{GREEDYDATA:Unknown3}\|%{GREEDYDATA:Unknown4}\|%{GREEDYDATA:Unknown5}\|%{GREEDYDATA:Unknown6}\|%{GREEDYDATA:Unknown7}\|%{GREEDYDATA:Unknown8}\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:Timestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:ServiceInstanceId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:ServiceName}\|%{UUID:InstanceUUID}\|%{GREEDYDATA:loglevel}\|%{GREEDYDATA:AlertSeverity}\|%{IP:ServerIPAddress}\|%{HOSTNAME:ServerFQDN}\|%{IPORHOST:RemoteHost}\|%{GREEDYDATA:Timer}\|\[%{GREEDYDATA:caller}\]\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:Timestamp}\|%{GREEDYDATA:RequestId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:ServiceName}\|%{GREEDYDATA:PartnerName}\|%{GREEDYDATA:TargetEntity}\|%{GREEDYDATA:TargetServiceName}\|%{GREEDYDATA:loglevel}\|%{GREEDYDATA:ErrorCode}\|%{GREEDYDATA:ErrorDesc}\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:Timestamp}\|%{GREEDYDATA:RequestId}\|%{GREEDYDATA:Thread}\|%{GREEDYDATA:ClassName}\|%{GREEDYDATA:message}",
+ "%{TIMESTAMP_ISO8601:Timestamp}\|%{UUID:RequestId}\|%{GREEDYDATA:message}",
+ "\[%{TIMESTAMP_ISO8601:Timestamp}\|%{LOGLEVEL:loglevel}\|%{GREEDYDATA:Logger}\|%{GREEDYDATA:Thread}\] %{GREEDYDATA:message}"
+ ]
}
overwrite => ["message"]
}
+ # The MDCs are key value pairs that are seperated by "," or "\t". Extra space characters are trimmed from the keys and values.
kv {
source => "MDCs"
- field_split => "\t"
+ field_split => ",\t"
trim_key => "\s"
trim_value => "\s"
remove_field => [ "MDCs" ]
}
+ if (![Timestamp] and [EndTimestamp]) {
+ mutate { add_field => { "Timestamp" => "%{EndTimestamp}" } }
+ }
date {
match => [ "Timestamp", "ISO8601", "yyyy-MM-dd HH:mm:ss,SSS" ]
target => "Timestamp"
}
- if [source] == "/var/log/onap/aai/aai-ml/metrics.log" {
- csv {
- source => "message"
- separator => "|"
- quote_char => "`"
- columns => ["Begin TS", "End TS", "DuplicateRequestID", "Unknown1", "threadID", "phys/virt server name", "service name", "Partner Name", "Unknown2", "Unknown3", "Unknown4", "Unknown5", "Unknown6", "Unknown7", "Log level", "Unknown8", "Unknown9", "Status code", "Server", "Unknown10", "Unknown11", "Unknown12", "Unknown13", "Unknown14", "Unknown15", "Unknown16", "Unknown17", "Unknown18", "message"]
- }
- }
- else if [source] == "/var/log/onap/aai/aai-ml/audit.log" {
- csv {
- source => "message"
- separator => "|"
- quote_char => "`"
- columns => ["Begin TS", "End TS", "DuplicateRequestID", "Unknown1", "threadID", "phys/virt server name", "service name", "Partner Name", "Unknown2", "Unknown3", "Unknown4", "Unknown5", "Log level", "Unknown6", "Unknown7", "Status code", "Server", "Unknown10", "Unknown11", "Unknown12", "Unknown13", "Unknown14", "Unknown15", "Unknown16", "Unknown17", "message"]
- }
- }
-
mutate {
- remove_field => ["DuplicateRequestID", "Unknown1", "Unknown2", "Unknown3", "Unknown4", "Unknown5", "Unknown6", "Unknown7", "Unknown8", "Unknown9", "Unknown10", "Unknown11", "Unknown12", "Unknown13", "Unknown14", "Unknown15", "Unknown16", "Unknown17", "Unknown18"]
+ remove_field => ["DuplicateRequestID", "Unknown1", "Unknown2", "Unknown3", "Unknown4", "Unknown5", "Unknown6", "Unknown7", "Unknown8"]
}
if ([source] == "/var/log/onap/sdc/sdc-be/audit.log") {
diff --git a/kubernetes/log/charts/log-logstash/templates/deployment.yaml b/kubernetes/log/charts/log-logstash/templates/deployment.yaml
index 682c448da8..7735c82616 100644
--- a/kubernetes/log/charts/log-logstash/templates/deployment.yaml
+++ b/kubernetes/log/charts/log-logstash/templates/deployment.yaml
@@ -52,8 +52,8 @@ spec:
ports:
- containerPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
- - containerPort: {{ .Values.service.internalPortHttp }}
- name: {{ .Values.service.name }}-http
+ - containerPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
readinessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
@@ -73,12 +73,10 @@ spec:
- mountPath: /etc/localtime
name: localtime
readOnly: true
- - mountPath: /usr/share/logstash/config/logstash.yml
- name: {{ include "common.fullname" . }}
- subPath: logstash.yml
- - mountPath: /usr/share/logstash/pipeline/onap-pipeline.conf
- name: {{ include "common.fullname" . }}
- subPath: onap-pipeline.conf
+ - mountPath: /usr/share/logstash/config/
+ name: {{ include "common.fullname" . }}-config
+ - mountPath: /usr/share/logstash/pipeline/
+ name: {{ include "common.fullname" . }}-pipeline
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -93,12 +91,16 @@ spec:
- name: localtime
hostPath:
path: /etc/localtime
- - name: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-config
configMap:
name: {{ include "common.fullname" . }}
items:
- key: logstash.yml
path: logstash.yml
+ - name: {{ include "common.fullname" . }}-pipeline
+ configMap:
+ name: {{ include "common.fullname" . }}
+ items:
- key: onap-pipeline.conf
path: onap-pipeline.conf
imagePullSecrets:
diff --git a/kubernetes/log/charts/log-logstash/templates/service.yaml b/kubernetes/log/charts/log-logstash/templates/service.yaml
index ca71aa2224..cdc2ea8e77 100644
--- a/kubernetes/log/charts/log-logstash/templates/service.yaml
+++ b/kubernetes/log/charts/log-logstash/templates/service.yaml
@@ -27,19 +27,40 @@ spec:
type: {{ .Values.service.type }}
ports:
{{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.service.externalPort }}
+ - port: {{ .Values.service.internalPort }}
nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
name: {{ .Values.service.name }}
- - port: {{ .Values.service.internalPortHttp }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPortHttp }}
- name: {{ .Values.service.name }}-http
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
name: {{ .Values.service.name }}
- - port: {{ .Values.service.externalPortHttp }}
- targetPort: {{ .Values.service.internalPortHttp }}
- name: {{ .Values.service.name }}-http
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name2 }}
+ 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.type2 }}
+ ports:
+ {{if eq .Values.service.type2 "NodePort" -}}
+ - port: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/log/charts/log-logstash/values.yaml b/kubernetes/log/charts/log-logstash/values.yaml
index bfe50b54a8..b0e8d1e356 100644
--- a/kubernetes/log/charts/log-logstash/values.yaml
+++ b/kubernetes/log/charts/log-logstash/values.yaml
@@ -17,9 +17,8 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
persistence: {}
#################################################################
@@ -62,12 +61,15 @@ service:
#Example service definition with external, internal and node ports.
#Services may use any combination of ports depending on the 'type' of
#service being defined.
- type: ClusterIP
+ type: NodePort
name: log-ls
externalPort: 5044
internalPort: 5044
- externalPortHttp: 9600
- internalPortHttp: 9600
+ nodePort: 55
+ type2: ClusterIP
+ name2: log-ls-http
+ externalPort2: 9600
+ internalPort2: 9600
ingress:
enabled: false
diff --git a/kubernetes/log/values.yaml b/kubernetes/log/values.yaml
index 088ad5d0b3..5bb61e29db 100644
--- a/kubernetes/log/values.yaml
+++ b/kubernetes/log/values.yaml
@@ -17,5 +17,4 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
diff --git a/kubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties b/kubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties
deleted file mode 100755
index 568d0d4ce0..0000000000
--- a/kubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties
+++ /dev/null
@@ -1,141 +0,0 @@
-###############################################################################
-##
-## Cambria API Server config
-##
-## - Default values are shown as commented settings.
-##
-
-###############################################################################
-##
-## HTTP service
-##
-## - 3904 is standard as of 7/29/14.
-#
-## Zookeeper Connection
-##
-## Both Cambria and Kafka make use of Zookeeper.
-##
-# config.zk.servers=zookeeper.namespace-placeholder:2181
-config.zk.servers=zookeeper:2181
-#config.zk.servers=172.17.0.1:2181
-#dmaap.namespace-placeholder:2181
-#10.208.128.229:2181
-#config.zk.root=/fe3c/cambria/config
-
-
-###############################################################################
-##
-## Kafka Connection
-##
-## Items below are passed through to Kafka's producer and consumer
-## configurations (after removing "kafka.")
-## if you want to change request.required.acks it can take this one value
-#kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list=global-kafka:9092
-#kafka.metadata.broker.list=172.17.0.1:9092
-#dmaap.namespace-placeholder:9092
-#10.208.128.229:9092
-##kafka.request.required.acks=-1
-#kafka.client.zookeeper=${config.zk.servers}
-consumer.timeout.ms=100
-zookeeper.connection.timeout.ms=6000
-zookeeper.session.timeout.ms=6000
-zookeeper.sync.time.ms=2000
-auto.commit.interval.ms=1000
-fetch.message.max.bytes =1000000
-auto.commit.enable=false
-
-
-###############################################################################
-##
-## Secured Config
-##
-## Some data stored in the config system is sensitive -- API keys and secrets,
-## for example. to protect it, we use an encryption layer for this section
-## of the config.
-##
-## The key is a base64 encode AES key. This must be created/configured for
-## each installation.
-#cambria.secureConfig.key=
-##
-## The initialization vector is a 16 byte value specific to the secured store.
-## This must be created/configured for each installation.
-#cambria.secureConfig.iv=
-
-## Southfield Sandbox
-cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q==
-cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw==
-authentication.adminSecret=fe3cCompound
-#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw==
-#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q==
-
-
-###############################################################################
-##
-## Consumer Caching
-##
-## Kafka expects live connections from the consumer to the broker, which
-## obviously doesn't work over connectionless HTTP requests. The Cambria
-## server proxies HTTP requests into Kafka consumer sessions that are kept
-## around for later re-use. Not doing so is costly for setup per request,
-## which would substantially impact a high volume consumer's performance.
-##
-## This complicates Cambria server failover, because we often need server
-## A to close its connection before server B brings up the replacement.
-##
-
-## The consumer cache is normally enabled.
-#cambria.consumer.cache.enabled=true
-
-## Cached consumers are cleaned up after a period of disuse. The server inspects
-## consumers every sweepFreqSeconds and will clean up any connections that are
-## dormant for touchFreqMs.
-#cambria.consumer.cache.sweepFreqSeconds=15
-#cambria.consumer.cache.touchFreqMs=120000
-
-## The cache is managed through ZK. The default value for the ZK connection
-## string is the same as config.zk.servers.
-#cambria.consumer.cache.zkConnect=${config.zk.servers}
-
-##
-## Shared cache information is associated with this node's name. The default
-## name is the hostname plus the HTTP service port this host runs on. (The
-## hostname is determined via InetAddress.getLocalHost ().getCanonicalHostName(),
-## which is not always adequate.) You can set this value explicitly here.
-##
-#cambria.api.node.identifier=<use-something-unique-to-this-instance>
-
-###############################################################################
-##
-## Metrics Reporting
-##
-## This server can report its metrics periodically on a topic.
-##
-#metrics.send.cambria.enabled=true
-#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap
-#metrics.send.cambria.sendEverySeconds=60
-
-cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache
-
-##############################################################################
-#100mb
-maxcontentlength=10000
-
-
-##############################################################################
-#AAF Properties
-msgRtr.namespace.aaf=org.openecomp.dcae.dmaap.mtnje2.mr.topic
-msgRtr.topicfactory.aaf=org.openecomp.dcae.dmaap.topicFactory|:org.openecomp.dcae.dmaap.mtnje2.mr.topic:
-enforced.topic.name.AAF=org.openecomp
-forceAAF=false
-transidUEBtopicreqd=false
-defaultNSforUEB=org.openecomp.dmaap.mr.ueb
-##############################################################################
-#Mirror Maker Agent
-msgRtr.mirrormakeradmin.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|admin
-msgRtr.mirrormakeruser.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|user
-msgRtr.mirrormakeruser.aaf.create=org.openecomp.dmaap.mr.dev.topicFactory|:org.openecomp.dmaap.mr.dev.topic:
-msgRtr.mirrormaker.timeout=15000
-msgRtr.mirrormaker.topic=org.openecomp.dmaap.mr.prod.mm.agent
-msgRtr.mirrormaker.consumergroup=mmagentserver
-msgRtr.mirrormaker.consumerid=1
diff --git a/kubernetes/message-router/resources/config/dmaap/cadi.properties b/kubernetes/message-router/resources/config/dmaap/cadi.properties
deleted file mode 100755
index 1cb00a5cda..0000000000
--- a/kubernetes/message-router/resources/config/dmaap/cadi.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-basic_realm=openecomp.org
-basic_warn=TRUE
-
-cadi_loglevel=DEBUG
-#cadi_keyfile=target/swm/package/nix/dist_files/appl/${artifactId}/etc/keyfile2
-cadi_keyfile=/appl/dmaapMR1/etc/keyfile
-# Configure AAF
-aaf_url=https://DME2RESOLVE/service=org.openecomp.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=BAU_SE
-
-aaf_id=dgl@openecomp.org
-aaf_password=enc:f2u5br1mh29M02-
-aaf_timeout=5000
-aaf_clean_interval=1200000
-aaf_user_expires=60000
-aaf_high_count=1000000
-
-
-# The following properties are being set by the AJSC Container and should NOT need to be set here.
-AFT_LATITUDE=33.823589
-AFT_LONGITUDE=-84.366982
-AFT_ENVIRONMENT=AFTUAT
diff --git a/kubernetes/message-router/resources/config/dmaap/mykey b/kubernetes/message-router/resources/config/dmaap/mykey
deleted file mode 100755
index c2b8b8779b..0000000000
--- a/kubernetes/message-router/resources/config/dmaap/mykey
+++ /dev/null
@@ -1,27 +0,0 @@
-_sNOLphPzrU7L0L3oWv0pYwgV_ddGF1XoBsQEIAp34jfP-fGJFPfFYaMpDEZ3gwH59rNw6qyMZHk
-k-4irklvVcWk36lC3twNvc0DueRCVrws1bkuhOLCXdxHJx-YG-1xM8EJfRmzh79WPlPkbAdyPmFF
-Ah44V0GjAnInPOFZA6MHP9rNx9B9qECHRfmvzU13vJCcgTsrmOr-CEiWfRsnzPjsICxpq9OaVT_D
-zn6rNaroGm1OiZNCrCgvRkCUHPOOCw3j9G1GeaImoZNYtozbz9u4sj13PU-MxIIAa64b1bMMMjpz
-Upc8lVPI4FnJKg6axMmEGn5zJ6JUq9mtOVyPj__2GEuDgpx5H4AwodXXVjFsVgR8UJwI_BvS2JVp
-JoQk0J1RqXmAXVamlsMAfzmmbARXgmrBfnuhveZnh9ymFVU-YZeujdANniXAwBGI7c6hG_BXkH7i
-Eyf4Fn41_SV78PskP6qgqJahr9r3bqdjNbKBztIKCOEVrE_w3IM5r02l-iStk_NBRkj6cq_7VCpG
-afxZ2CtZMwuZMiypO_wOgbdpCSKNzsL-NH2b4b08OlKiWb263gz634KJmV5WEfCl-6eH-JUFbWOS
-JwQfActLNT2ZQPl2MyZQNBzJEWoJRgS6k7tPRO-zqeUtYYHGHVMCxMuMHGQcoilNNHEFeBCG_fBh
-yAKb9g9F86Cbx9voMLiyTX2T3rwVHiSJFOzfNxGmfN5JWOthIun_c5hEY1tLQ15BomzkDwk7BAj7
-VbRCrVD45B6xrmSTMBSWYmLyr6mnQxQqeh9cMbD-0ZAncE3roxRnRvPKjFFa208ykYUp2V83r_PJ
-fV5I9ZPKSjk9DwFyrjkcQQEYDhdK6IFqcd6nEthjYVkmunu2fsX0bIOm9GGdIbKGqBnpdgBO5hyT
-rBr9HSlZrHcGdti1R823ckDF0Ekcl6kioDr5NLIpLtg9zUEDRm3QrbX2mv5Zs8W0pYnOqglxy3lz
-bJZTN7oR7VasHUtjmp0RT9nLZkUs5TZ6MHhlIq3ZsQ6w_Q9Rv1-ofxfwfCC4EBrWKbWAGCf6By4K
-Ew8321-2YnodhmsK5BrT4zQ1DZlmUvK8BmYjZe7wTljKjgYcsLTBfX4eMhJ7MIW1kpnl8AbiBfXh
-QzN56Mki51Q8PSQWHm0W9tnQ0z6wKdck6zBJ8JyNzewZahFKueDTn-9DOqIDfr3YHvQLLzeXyJ8e
-h4AgjW-hvlLzRGtkCknjLIgXVa3rMTycseAwbW-mgdCqqkw3SdEG8feAcyntmvE8j2jbtSDStQMB
-9JdvyNLuQdNG4pxpusgvVso0-8NQF0YVa9VFwg9U6IPSx5p8FcW68OAHt_fEgT4ZtiH7o9aur4o9
-oYqUh2lALCY-__9QLq1KkNjMKs33Jz9E8LbRerG9PLclkTrxCjYAeUWBjCwSI7OB7xkuaYDSjkjj
-a46NLpdBN1GNcsFFcZ79GFAK0_DsyxGLX8Tq6q0Bvhs8whD8wlSxpTGxYkyqNX-vcb7SDN_0WkCE
-XSdZWkqTHXcYbOvoCOb_e6SFAztuMenuHWY0utX0gBfx_X5lPDFyoYXErxFQHiA7t27keshXNa6R
-ukQRRS8kMjre1U74sc-fRNXkXpl57rG4rgxaEX0eBeowa53KAsVvUAoSac2aC_nfzXrDvoyf9Xi3
-JpEZNhUDLpFCEycV4I7jGQ9wo9qNaosvlsr6kbLDNdb_1xrGVgjT3xEvRNJNPqslSAu-yD-UFhC3
-AmCdYUnugw_eEFqXCHTARcRkdPPvl2XsmEKY2IqEeO5tz4DyXQFaL-5hEVh6lYEU1EOWHk3UGIXe
-Vc5_Ttp82qNLmlJPbZvgmNTJzYTHDQ_27KBcp7IVVZgPDjVKdWqQvZ18KhxvfF3Idgy82LBZniFV
-IbtxllXiPRxoPQriSXMnXjh3XkvSDI2pFxXfEvLRn1tvcFOwPNCz3QfPIzYg8uYXN5bRt3ZOrR_g
-ZhIlrc7HO0VbNbeqEVPKMZ-cjkqGj4VAuDKoQc0eQ6X_wCoAGO78nPpLeIvZPx1X3z5YoqNA \ No newline at end of file
diff --git a/kubernetes/message-router/templates/all-services.yaml b/kubernetes/message-router/templates/all-services.yaml
deleted file mode 100644
index da6fee117d..0000000000
--- a/kubernetes/message-router/templates/all-services.yaml
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMessageRouterZookeeper }}
-apiVersion: v1
-kind: Service
-metadata:
- name: zookeeper
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: zookeeper
-spec:
- ports:
- - name: zookeeper1
- port: 2181
- selector:
- app: zookeeper
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: global-kafka
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: global-kafka
-spec:
- ports:
- - name: kafka1
- port: 9092
- selector:
- app: global-kafka
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableMessageRouterDmaap }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: dmaap
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: dmaap
- version: 1.0.0
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "message-router",
- "version": "v1",
- "url": "/",
- "protocol": "REST",
- "port": "3904",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: mr1
- port: 3904
- nodePort: {{ .Values.nodePortPrefix }}27
- - name: mr2
- port: 3905
- nodePort: {{ .Values.nodePortPrefix }}26
- selector:
- app: dmaap
- type: NodePort
-#{{ end }} \ No newline at end of file
diff --git a/kubernetes/message-router/templates/dmaap-configmap.yaml b/kubernetes/message-router/templates/dmaap-configmap.yaml
deleted file mode 100644
index bd1e629b21..0000000000
--- a/kubernetes/message-router/templates/dmaap-configmap.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-cadi-prop-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/cadi.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-msgrtrapi-prop-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/MsgRtrApi.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-mykey-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/mykey").AsConfig . | indent 2 }}
diff --git a/kubernetes/message-router/templates/message-router-dmaap.yaml b/kubernetes/message-router/templates/message-router-dmaap.yaml
deleted file mode 100644
index a0c13802bb..0000000000
--- a/kubernetes/message-router/templates/message-router-dmaap.yaml
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMessageRouterDmaap }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: message-router-dmaap
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dmaapReplicas }}
- selector:
- matchLabels:
- app: dmaap
- template:
- metadata:
- labels:
- app: dmaap
- name: message-router-dmaap
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - global-kafka
- - --container-name
- - zookeeper
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: dmaap-readiness
- containers:
- - image: {{ .Values.image.dmaap }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: dmaap
- ports:
- - containerPort: 3904
- - containerPort: 3905
- readinessProbe:
- tcpSocket:
- port: 3904
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
- subPath: MsgRtrApi.properties
- name: appprops
- - mountPath: /appl/dmaapMR1/etc/cadi.properties
- subPath: cadi.properties
- name: cadi
- - mountPath: /appl/dmaapMR1/etc/keyfile
- subPath: mykey
- name: mykey
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: appprops
- configMap:
- name: mr-dmaap-msgrtrapi-prop-configmap
- - name: cadi
- configMap:
- name: mr-dmaap-cadi-prop-configmap
- - name: mykey
- configMap:
- name: mr-dmaap-mykey-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-{{ end }}
-
diff --git a/kubernetes/message-router/templates/message-router-kafka.yaml b/kubernetes/message-router/templates/message-router-kafka.yaml
deleted file mode 100644
index 844de040d4..0000000000
--- a/kubernetes/message-router/templates/message-router-kafka.yaml
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: message-router-global-kafka
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.kafkaReplicas }}
- selector:
- matchLabels:
- app: global-kafka
- template:
- metadata:
- labels:
- app: global-kafka
- name: message-router-global-kafka
- spec:
- initContainers:
- - command:
- - bash
- args:
- - -c
- - "if [ -d /var/tmp/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0 ]; then echo nothing to do; else cp -a /opt/config/src/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/* /var/tmp/; fi"
- image: {{ .Values.image.config }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /var/tmp
- name: kafka-data
- name: kafka-primer
- - command:
- - /root/ready.py
- args:
- - --container-name
- - zookeeper
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: kafka-readiness
- containers:
- - image: {{ .Values.image.kafka }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: global-kafka
- ports:
- - containerPort: 9092
- readinessProbe:
- tcpSocket:
- port: 9092
- initialDelaySeconds: 5
- periodSeconds: 10
- env:
- - name: KAFKA_ZOOKEEPER_CONNECT
- value: "zookeeper.{{ .Values.nsPrefix }}:2181"
- - name: KAFKA_ADVERTISED_HOST_NAME
- value: "global-kafka"
- - name: KAFKA_BROKER_ID
- value: "1"
- - name: KAFKA_ADVERTISED_PORT
- value: "9092"
- - name: KAFKA_PORT
- value: "9092"
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /var/run/docker.sock
- name: docker-socket
- - mountPath: /kafka
- name: kafka-data
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: docker-socket
- hostPath:
- path: /var/run/docker.sock
- - name: kafka-data
- persistentVolumeClaim:
- claimName: message-router-kafka
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
-
diff --git a/kubernetes/message-router/templates/message-router-pv-pvc.yaml b/kubernetes/message-router/templates/message-router-pv-pvc.yaml
deleted file mode 100644
index a39a975f33..0000000000
--- a/kubernetes/message-router/templates/message-router-pv-pvc.yaml
+++ /dev/null
@@ -1,81 +0,0 @@
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-*/}}
-
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: message-router-kafka
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
-#{{ end }}
-#{{ if not .Values.disableMessageRouterZookeeper }}
----
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: message-router-zookeeper
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
-#{{ end }}
diff --git a/kubernetes/message-router/templates/message-router-zookeeper.yaml b/kubernetes/message-router/templates/message-router-zookeeper.yaml
deleted file mode 100644
index 1b3e8f8ed9..0000000000
--- a/kubernetes/message-router/templates/message-router-zookeeper.yaml
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMessageRouterZookeeper }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: message-router-zookeeper
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.zookeeperReplicas }}
- selector:
- matchLabels:
- app: zookeeper
- template:
- metadata:
- labels:
- app: zookeeper
- name: message-router-zookeeper
- spec:
- initContainers:
- - command:
- - bash
- args:
- - -c
- - "if [ -d /var/tmp/version-2 ]; then echo nothing to do; else cp -a /opt/config/src/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/* /var/tmp/; fi"
- image: {{ .Values.image.config }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /var/tmp
- name: zookeeper-data
- name: zookeeper-primer
- containers:
- - image: {{ .Values.image.zookeeper }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: zookeeper
- ports:
- - containerPort: 2181
- readinessProbe:
- tcpSocket:
- port: 2181
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/zookeeper-3.4.9/data
- name: zookeeper-data
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: zookeeper-data
- persistentVolumeClaim:
- claimName: message-router-zookeeper
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
-
diff --git a/kubernetes/mock/templates/sniroemulator-deployment.yaml b/kubernetes/mock/templates/sniroemulator-deployment.yaml
deleted file mode 100644
index cd0da9fd78..0000000000
--- a/kubernetes/mock/templates/sniroemulator-deployment.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMockSniroEmulator }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sniro-emulator
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sniro-emulator
- replicas: 1
- template:
- metadata:
- labels:
- app: sniro-emulator
- name: sniro-emulator
- spec:
- containers:
- - image: "{{ .Values.image.onapmock }}:{{ .Values.image.tag }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sniro-emulator
- ports:
- - containerPort: 9999
- args: ["--verbose"]
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/msb/charts/kube2msb/templates/deployment.yaml b/kubernetes/msb/charts/kube2msb/templates/deployment.yaml
index 94b25a19bf..431387158d 100644
--- a/kubernetes/msb/charts/kube2msb/templates/deployment.yaml
+++ b/kubernetes/msb/charts/kube2msb/templates/deployment.yaml
@@ -33,12 +33,7 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- # TODO: Temporary command:
- command:
- - /bin/sh
- - -c
- - export AUTH_TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token); /bin/kube2msb --kube_master_url=${KUBE_MASTER_URL} --msb_url=${MSB_URL}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
env:
- name: KUBE_MASTER_URL
diff --git a/kubernetes/msb/charts/kube2msb/values.yaml b/kubernetes/msb/charts/kube2msb/values.yaml
index 43810a9781..a97863b858 100644
--- a/kubernetes/msb/charts/kube2msb/values.yaml
+++ b/kubernetes/msb/charts/kube2msb/values.yaml
@@ -3,9 +3,8 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
@@ -19,7 +18,7 @@ pullPolicy: Always
config:
routeLabels: "visualRange:1"
kubeMasterUrl: https://kubernetes.default:443
- discoveryUrl: http://{{.Release.Name}}-msb-discovery.{{include "common.namespace" .}}:10081
+ discoveryUrl: http://msb-discovery.{{include "common.namespace" .}}:10081
# default number of instances
replicaCount: 1
diff --git a/kubernetes/msb/charts/msb-consul/templates/service.yaml b/kubernetes/msb/charts/msb-consul/templates/service.yaml
index 841d3497c4..86442a2740 100644
--- a/kubernetes/msb/charts/msb-consul/templates/service.yaml
+++ b/kubernetes/msb/charts/msb-consul/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ .Values.service.name }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
diff --git a/kubernetes/msb/charts/msb-consul/values.yaml b/kubernetes/msb/charts/msb-consul/values.yaml
index 28df51a370..0c7a508dc4 100644
--- a/kubernetes/msb/charts/msb-consul/values.yaml
+++ b/kubernetes/msb/charts/msb-consul/values.yaml
@@ -3,7 +3,6 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
#################################################################
# Application configuration defaults.
diff --git a/kubernetes/msb/charts/msb-discovery/resources/config/log/logback.xml b/kubernetes/msb/charts/msb-discovery/resources/config/log/logback.xml
new file mode 100644
index 0000000000..33775962b7
--- /dev/null
+++ b/kubernetes/msb/charts/msb-discovery/resources/config/log/logback.xml
@@ -0,0 +1,27 @@
+<?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> \ No newline at end of file
diff --git a/kubernetes/msb/charts/msb-discovery/templates/configmap.yaml b/kubernetes/msb/charts/msb-discovery/templates/configmap.yaml
new file mode 100644
index 0000000000..97c720a6ab
--- /dev/null
+++ b/kubernetes/msb/charts/msb-discovery/templates/configmap.yaml
@@ -0,0 +1,7 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
diff --git a/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml b/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml
index f32a5d1544..aec03b0b3f 100644
--- a/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml
+++ b/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml
@@ -33,7 +33,7 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
@@ -53,11 +53,13 @@ spec:
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
+ - mountPath: /usr/local/discover-works/logs
+ name: msb-discovery-logs
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -68,9 +70,23 @@ spec:
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: /var/log/onap
+ name: msb-discovery-logs
+ - mountPath: /usr/share/filebeat/data
+ name: msb-discovery-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
+ - name: msb-discovery-logs
+ emptyDir: {}
+ - name: msb-discovery-filebeat
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/msb/charts/msb-discovery/templates/service.yaml b/kubernetes/msb/charts/msb-discovery/templates/service.yaml
index 841d3497c4..86442a2740 100644
--- a/kubernetes/msb/charts/msb-discovery/templates/service.yaml
+++ b/kubernetes/msb/charts/msb-discovery/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ .Values.service.name }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
diff --git a/kubernetes/msb/charts/msb-discovery/values.yaml b/kubernetes/msb/charts/msb-discovery/values.yaml
index d10ba6032e..fdbfa338cc 100644
--- a/kubernetes/msb/charts/msb-discovery/values.yaml
+++ b/kubernetes/msb/charts/msb-discovery/values.yaml
@@ -3,16 +3,15 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/msb/msb_discovery:1.1.0-SNAPSHOT-latest
+image: onap/msb/msb_discovery:1.1.0-STAGING-latest
pullPolicy: Always
# application configuration
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
index 0000000000..33775962b7
--- /dev/null
+++ b/kubernetes/msb/charts/msb-eag/resources/config/log/logback.xml
@@ -0,0 +1,27 @@
+<?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> \ No newline at end of file
diff --git a/kubernetes/msb/charts/msb-eag/templates/configmap.yaml b/kubernetes/msb/charts/msb-eag/templates/configmap.yaml
new file mode 100644
index 0000000000..97c720a6ab
--- /dev/null
+++ b/kubernetes/msb/charts/msb-eag/templates/configmap.yaml
@@ -0,0 +1,7 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
diff --git a/kubernetes/msb/charts/msb-eag/templates/deployment.yaml b/kubernetes/msb/charts/msb-eag/templates/deployment.yaml
index d41518d662..26ee3889c1 100644
--- a/kubernetes/msb/charts/msb-eag/templates/deployment.yaml
+++ b/kubernetes/msb/charts/msb-eag/templates/deployment.yaml
@@ -33,7 +33,7 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
@@ -56,15 +56,17 @@ spec:
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
- name: SDCLIENT_IP
- value: {{.Release.Name}}-msb-discovery.{{ include "common.namespace" . }}
+ value: msb-discovery.{{ include "common.namespace" . }}
- name: ROUTE_LABELS
value: {{ .Values.config.routeLabels }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
+ - mountPath: /usr/local/apiroute-works/logs
+ name: msb-discovery-logs
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -75,9 +77,22 @@ spec:
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: /var/log/onap
+ name: msb-discovery-logs
+ - mountPath: /usr/share/filebeat/data
+ name: msb-discovery-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
+ - name: msb-discovery-logs
+ emptyDir: {}
+ - name: msb-discovery-filebeat
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/msb/charts/msb-eag/templates/service.yaml b/kubernetes/msb/charts/msb-eag/templates/service.yaml
index e438f10d01..3e4a786cb8 100644
--- a/kubernetes/msb/charts/msb-eag/templates/service.yaml
+++ b/kubernetes/msb/charts/msb-eag/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ .Values.service.name }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
diff --git a/kubernetes/msb/charts/msb-eag/values.yaml b/kubernetes/msb/charts/msb-eag/values.yaml
index 757b46768b..74f9c69b5d 100644
--- a/kubernetes/msb/charts/msb-eag/values.yaml
+++ b/kubernetes/msb/charts/msb-eag/values.yaml
@@ -3,16 +3,15 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/msb/msb_apigateway:1.1.0-SNAPSHOT-latest
+image: onap/msb/msb_apigateway:1.1.0-STAGING-latest
pullPolicy: Always
# application configuration
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
index 0000000000..33775962b7
--- /dev/null
+++ b/kubernetes/msb/charts/msb-iag/resources/config/log/logback.xml
@@ -0,0 +1,27 @@
+<?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> \ No newline at end of file
diff --git a/kubernetes/msb/charts/msb-iag/templates/configmap.yaml b/kubernetes/msb/charts/msb-iag/templates/configmap.yaml
new file mode 100644
index 0000000000..97c720a6ab
--- /dev/null
+++ b/kubernetes/msb/charts/msb-iag/templates/configmap.yaml
@@ -0,0 +1,7 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/logback.xml").AsConfig . | indent 2 }}
diff --git a/kubernetes/msb/charts/msb-iag/templates/deployment.yaml b/kubernetes/msb/charts/msb-iag/templates/deployment.yaml
index d41518d662..26ee3889c1 100644
--- a/kubernetes/msb/charts/msb-iag/templates/deployment.yaml
+++ b/kubernetes/msb/charts/msb-iag/templates/deployment.yaml
@@ -33,7 +33,7 @@ spec:
name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
@@ -56,15 +56,17 @@ spec:
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
- name: SDCLIENT_IP
- value: {{.Release.Name}}-msb-discovery.{{ include "common.namespace" . }}
+ value: msb-discovery.{{ include "common.namespace" . }}
- name: ROUTE_LABELS
value: {{ .Values.config.routeLabels }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
readOnly: true
+ - mountPath: /usr/local/apiroute-works/logs
+ name: msb-discovery-logs
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -75,9 +77,22 @@ spec:
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: /var/log/onap
+ name: msb-discovery-logs
+ - mountPath: /usr/share/filebeat/data
+ name: msb-discovery-filebeat
volumes:
- name: localtime
hostPath:
path: /etc/localtime
+ - name: msb-discovery-logs
+ emptyDir: {}
+ - name: msb-discovery-filebeat
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/msb/charts/msb-iag/templates/service.yaml b/kubernetes/msb/charts/msb-iag/templates/service.yaml
index e438f10d01..3e4a786cb8 100644
--- a/kubernetes/msb/charts/msb-iag/templates/service.yaml
+++ b/kubernetes/msb/charts/msb-iag/templates/service.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ .Values.service.name }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
diff --git a/kubernetes/msb/charts/msb-iag/values.yaml b/kubernetes/msb/charts/msb-iag/values.yaml
index 6e4877b084..657a5543b2 100644
--- a/kubernetes/msb/charts/msb-iag/values.yaml
+++ b/kubernetes/msb/charts/msb-iag/values.yaml
@@ -3,16 +3,15 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/msb/msb_apigateway:1.1.0-SNAPSHOT-latest
+image: onap/msb/msb_apigateway:1.1.0-STAGING-latest
pullPolicy: Always
# application configuration
diff --git a/kubernetes/msb/resources/config/log/discovery/logback.xml b/kubernetes/msb/resources/config/log/discovery/logback.xml
new file mode 100644
index 0000000000..33775962b7
--- /dev/null
+++ b/kubernetes/msb/resources/config/log/discovery/logback.xml
@@ -0,0 +1,27 @@
+<?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> \ No newline at end of file
diff --git a/kubernetes/msb/resources/config/log/eag/logback.xml b/kubernetes/msb/resources/config/log/eag/logback.xml
new file mode 100644
index 0000000000..dafba4b5d4
--- /dev/null
+++ b/kubernetes/msb/resources/config/log/eag/logback.xml
@@ -0,0 +1,27 @@
+<?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="eag" />
+ <!-- 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> \ No newline at end of file
diff --git a/kubernetes/msb/resources/config/log/filebeat/filebeat.yml b/kubernetes/msb/resources/config/log/filebeat/filebeat.yml
new file mode 100644
index 0000000000..0bc14ea908
--- /dev/null
+++ b/kubernetes/msb/resources/config/log/filebeat/filebeat.yml
@@ -0,0 +1,41 @@
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among availabe Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase
diff --git a/kubernetes/msb/resources/config/log/iag/logback.xml b/kubernetes/msb/resources/config/log/iag/logback.xml
new file mode 100644
index 0000000000..f841859592
--- /dev/null
+++ b/kubernetes/msb/resources/config/log/iag/logback.xml
@@ -0,0 +1,27 @@
+<?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="iag" />
+ <!-- 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> \ No newline at end of file
diff --git a/kubernetes/msb/values.yaml b/kubernetes/msb/values.yaml
index 49e5196e41..6d5c9fb08e 100644
--- a/kubernetes/msb/values.yaml
+++ b/kubernetes/msb/values.yaml
@@ -17,4 +17,11 @@
#################################################################
global:
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+# application configuration
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+
diff --git a/kubernetes/mso/resources/config/docker-files/scripts/start-jboss-server.sh b/kubernetes/mso/resources/config/docker-files/scripts/start-jboss-server.sh
deleted file mode 100755
index 3280253743..0000000000
--- a/kubernetes/mso/resources/config/docker-files/scripts/start-jboss-server.sh
+++ /dev/null
@@ -1,63 +0,0 @@
-#!/bin/sh
-# Copyright 2015 AT&T Intellectual Properties
-##############################################################################
-# Script to initialize the chef-repo branch and.chef
-#
-##############################################################################
-# Copy the certificates
-echo 'Copying the *.crt provided in /shared folder'
-cp --verbose /shared/*.crt /usr/local/share/ca-certificates
-update-ca-certificates
-
-echo 'Running in JBOSS'
-su - jboss
-
-DEBUG=''
-if [ "$JBOSS_DEBUG" = true ] ; then
- DEBUG="--debug"
-fi
-
-#Start the chef-solo if mso-docker.json contains some data.
-if [ -s /var/berks-cookbooks/${CHEF_REPO_NAME}/environments/mso-docker.json ]
-then
- echo "mso-docker.json has some configuration, replay the recipes."
- chef-solo -c /var/berks-cookbooks/${CHEF_REPO_NAME}/solo.rb -o recipe[mso-config::apih],recipe[mso-config::bpmn],recipe[mso-config::jra]
-else
- echo "mso-docker.json is empty, do not replay the recipes."
-fi
-
-JBOSS_PIDFILE=/tmp/jboss-standalone.pid
-$JBOSS_HOME/bin/standalone.sh ${DEBUG} -c standalone-full-ha-mso.xml &
-JBOSS_PID=$!
-# Trap common signals and relay them to the jboss process
-trap "kill -HUP $JBOSS_PID" HUP
-trap "kill -TERM $JBOSS_PID" INT
-trap "kill -QUIT $JBOSS_PID" QUIT
-trap "kill -PIPE $JBOSS_PID" PIPE
-trap "kill -TERM $JBOSS_PID" TERM
-if [ "x$JBOSS_PIDFILE" != "x" ]; then
- echo $JBOSS_PID > $JBOSS_PIDFILE
-fi
-# Wait until the background process exits
-WAIT_STATUS=128
-while [ "$WAIT_STATUS" -ge 128 ]; do
- wait $JBOSS_PID 2>/dev/null
- WAIT_STATUS=$?
- if [ "$WAIT_STATUS" -gt 128 ]; then
- SIGNAL=`expr $WAIT_STATUS - 128`
- SIGNAL_NAME=`kill -l $SIGNAL`
- echo "*** JBossAS process ($JBOSS_PID) received $SIGNAL_NAME signal ***" >&2
- fi
-done
-if [ "$WAIT_STATUS" -lt 127 ]; then
- JBOSS_STATUS=$WAIT_STATUS
-else
- JBOSS_STATUS=0
-fi
-if [ "$JBOSS_STATUS" -ne 10 ]; then
- # Wait for a complete shudown
- wait $JBOSS_PID 2>/dev/null
-fi
-if [ "x$JBOSS_PIDFILE" != "x" ]; then
- grep "$JBOSS_PID" $JBOSS_PIDFILE && rm $JBOSS_PIDFILE
-fi
diff --git a/kubernetes/mso/resources/config/log/logback.apihandler-infra.xml b/kubernetes/mso/resources/config/log/logback.apihandler-infra.xml
deleted file mode 100644
index 3e0ea61ea6..0000000000
--- a/kubernetes/mso/resources/config/log/logback.apihandler-infra.xml
+++ /dev/null
@@ -1,139 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="ApiHandlerInfra"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.appc.xml b/kubernetes/mso/resources/config/log/logback.appc.xml
deleted file mode 100644
index 588f6f39d2..0000000000
--- a/kubernetes/mso/resources/config/log/logback.appc.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="AppCAdapter"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.asdc.xml b/kubernetes/mso/resources/config/log/logback.asdc.xml
deleted file mode 100644
index b4879e017f..0000000000
--- a/kubernetes/mso/resources/config/log/logback.asdc.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="ASDCController"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.bpmn.xml b/kubernetes/mso/resources/config/log/logback.bpmn.xml
deleted file mode 100644
index 3bc3ca157b..0000000000
--- a/kubernetes/mso/resources/config/log/logback.bpmn.xml
+++ /dev/null
@@ -1,139 +0,0 @@
-<configuration scan="true" scanPeriod="3 seconds" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="BPMN"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.msorequestsdbadapter.xml b/kubernetes/mso/resources/config/log/logback.msorequestsdbadapter.xml
deleted file mode 100644
index 64a5022aa6..0000000000
--- a/kubernetes/mso/resources/config/log/logback.msorequestsdbadapter.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="RequestDB"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.network.xml b/kubernetes/mso/resources/config/log/logback.network.xml
deleted file mode 100644
index 542a8f6f00..0000000000
--- a/kubernetes/mso/resources/config/log/logback.network.xml
+++ /dev/null
@@ -1,139 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="NetworkAdapter"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.sdnc.xml b/kubernetes/mso/resources/config/log/logback.sdnc.xml
deleted file mode 100644
index 1323a8961d..0000000000
--- a/kubernetes/mso/resources/config/log/logback.sdnc.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="SDNCAdapter"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.tenant.xml b/kubernetes/mso/resources/config/log/logback.tenant.xml
deleted file mode 100644
index a25c182e97..0000000000
--- a/kubernetes/mso/resources/config/log/logback.tenant.xml
+++ /dev/null
@@ -1,139 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="TenantAdapter"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.vfc.xml b/kubernetes/mso/resources/config/log/logback.vfc.xml
deleted file mode 100644
index d0b66be5bb..0000000000
--- a/kubernetes/mso/resources/config/log/logback.vfc.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="vfcadapter"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.vnf.xml b/kubernetes/mso/resources/config/log/logback.vnf.xml
deleted file mode 100644
index 32f6e69f81..0000000000
--- a/kubernetes/mso/resources/config/log/logback.vnf.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="VnfAdapter"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration>
diff --git a/kubernetes/mso/resources/config/log/logback.workflow-message-adapter.xml b/kubernetes/mso/resources/config/log/logback.workflow-message-adapter.xml
deleted file mode 100644
index a7130a103f..0000000000
--- a/kubernetes/mso/resources/config/log/logback.workflow-message-adapter.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<configuration scan="false" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- directory path for all other type logs -->
- <property name="logDir" value="/var/log/onap" />
-
- <!-- directory path for debugging type logs -->
- <property name="debugDir" value="/var/log/onap" />
-
- <!-- specify the component name
- <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" -->
- <property name="componentName" value="MSO"></property>
- <property name="subComponentName" value="WorkflowMessageAdapter"></property>
- <!-- 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="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
- <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
-
- <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
- <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
- <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
- <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
-
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
-
- <!-- The EELFAppender is used to record events to the general application
- log -->
-
- <!-- 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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${auditPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${metricPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- <encoder>
- <pattern>${errorPattern}</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}${jboss.server.name}.log</file>
- <rollingPolicy
- class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
- <!--<maxHistory>30</maxHistory>-->
- </rollingPolicy>
- <encoder>
- <pattern>${debugPattern}</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.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="debug" additivity="false">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-
-</configuration> \ No newline at end of file
diff --git a/kubernetes/mso/resources/config/mariadb/conf.d/mariadb1.cnf b/kubernetes/mso/resources/config/mariadb/conf.d/mariadb1.cnf
deleted file mode 100644
index 39ed022489..0000000000
--- a/kubernetes/mso/resources/config/mariadb/conf.d/mariadb1.cnf
+++ /dev/null
@@ -1,193 +0,0 @@
-# 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 = 500
-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=2G; 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/mso/resources/config/mariadb/docker-entrypoint-initdb.d/02-load-additional-changes.sh b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/02-load-additional-changes.sh
deleted file mode 100644
index a163801083..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/02-load-additional-changes.sh
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/sh
-#
-# ============LICENSE_START==========================================
-# ===================================================================
-# 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 and OpenECOMP are trademarks
-# and service marks of AT&T Intellectual Property.
-#
-#
-
-# TODO: update this script to work with the new DB schema
-
-# mysql -uroot -p$MYSQL_ROOT_PASSWORD -e "UPDATE heat_environment SET ENVIRONMENT='parameters:\n vfw_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vfw_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n unprotected_private_net_id: zdfw1fwl01_unprotected\n protected_private_net_id: zdfw1fwl01_protected\n ecomp_private_net_id: oam_ecomp\n unprotected_private_net_cidr: 192.168.10.0/24\n protected_private_net_cidr: 192.168.20.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vfw_private_ip_0: 192.168.10.100\n vfw_private_ip_1: 192.168.20.100\n vfw_private_ip_2: 192.168.9.100\n vpg_private_ip_0: 192.168.10.200\n vpg_private_ip_1: 192.168.9.200\n vsn_private_ip_0: 192.168.20.250\n vsn_private_ip_1: 192.168.9.250\n vfw_name_0: zdfw1fwl01fwl01\n vpg_name_0: zdfw1fwl01pgn01\n vsn_name_0: zdfw1fwl01snk01\n vnf_id: vFirewall_demo_app\n vf_module_id: vFirewall\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vfw_key\n pub_key: INSERT YOUR PUBLIC KEY HERE' where id=5;" mso_catalog
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/create_mso_db-tests.sql b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/create_mso_db-tests.sql
deleted file mode 100644
index 146ad01605..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/create_mso_db-tests.sql
+++ /dev/null
@@ -1,49 +0,0 @@
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-LOCK TABLES `NETWORK_RESOURCE` WRITE;
-/*!40000 ALTER TABLE `NETWORK_RESOURCE` DISABLE KEYS */;
-/*!40000 ALTER TABLE `NETWORK_RESOURCE` ENABLE KEYS */;
-insert into NETWORK_RESOURCE (id, NETWORK_TYPE, VERSION_STR, ORCHESTRATION_MODE ,DESCRIPTION, TEMPLATE_ID, NEUTRON_NETWORK_TYPE, AIC_VERSION_MIN) values
-(1, "vlan",'1',"NEUTRON","Cool network",1,"BASIC","0");
-UNLOCK TABLES;
-
-LOCK TABLES `NETWORK_RECIPE` WRITE;
-/*!40000 ALTER TABLE `NETWORK_RECIPE` DISABLE KEYS */;
-INSERT INTO `NETWORK_RECIPE`(`NETWORK_TYPE`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES
-('vlan','CREATE','1',NULL,'/active-bpel/services/REST/CreateNetwork',NULL,180,NULL),
-('vlan','DELETE','1',NULL,'/active-bpel/services/REST/DeleteNetwork',NULL,180,NULL);
-/*!40000 ALTER TABLE `NETWORK_RECIPE` ENABLE KEYS */;
-UNLOCK TABLES;
-
-LOCK TABLES `VNF_RECIPE` WRITE;
-INSERT INTO `VNF_RECIPE`(`ID`, `VNF_TYPE`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES
-(100,'VPE','CREATE','1','','/active-bpel/services/REST/CreateGenericVNF','',180,'SDN-ETHERNET-INTERNET'),
-(101,'VPE','DELETE','1','','/active-bpel/services/REST/DeleteGenericVNF','',180,'SDN-ETHERNET-INTERNET');
-UNLOCK TABLES;
-
-LOCK TABLES `VF_MODULE` WRITE;
-INSERT INTO `VF_MODULE`(`ID`, `TYPE`, `ASDC_SERVICE_MODEL_VERSION`, `MODEL_NAME`, `MODEL_VERSION`, `IS_BASE`, `VNF_RESOURCE_ID`) VALUES
-(100,'dns-servicetest/DNSResource-1::VF_DNS::module-1','1.0','VF_DNS::module-1','1.0','1','7'),
-(101,'dns-servicetest/DNSResource-1::Mog111..mog_psm..module-1','1.0','Mog111..mog_psm..module-1','1.0','1','7');
-UNLOCK TABLES;
-
-LOCK TABLES `VNF_RESOURCE` WRITE;
-INSERT INTO `VNF_RESOURCE`(`ID`, `VNF_TYPE`, `ASDC_SERVICE_MODEL_VERSION`, `ORCHESTRATION_MODE`, `MODEL_VERSION`) VALUES
-(100,'dns-servicetest/DNSResource-1','1.0','VF_DNS::module-1','1.0');
-UNLOCK TABLES;
-
-DELETE FROM HEAT_TEMPLATE_PARAMS;
-DELETE FROM HEAT_TEMPLATE;
-DELETE FROM HEAT_ENVIRONMENT;
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/create_mso_db-default.sql b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/create_mso_db-default.sql
deleted file mode 100644
index 7d2eed16bd..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/create_mso_db-default.sql
+++ /dev/null
@@ -1,139 +0,0 @@
-SOURCE ../../camunda/mariadb_engine_7.7.3-ee.sql
-
---
--- Create an admin user automatically for the cockpit
---
-SOURCE ../../camunda/mysql_create_camunda_admin.sql
-
---
--- Current Database: `mso_requests`
---
-
-DROP DATABASE IF EXISTS `mso_requests`;
-
-CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mso_requests` /*!40100 DEFAULT CHARACTER SET latin1 */;
-
-USE `mso_requests`;
-
-SOURCE ../../main-schemas/MySQL-Requests-schema.sql
-
---
--- Current Database: `mso_catalog`
---
-
-DROP DATABASE IF EXISTS `mso_catalog`;
-
-CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mso_catalog` /*!40100 DEFAULT CHARACTER SET latin1 */;
-
-USE `mso_catalog`;
-
-SOURCE ../../main-schemas/MySQL-Catalog-schema.sql
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','Contrail30-l2nodhcp','1',NULL,'heat_template_version: 2015-04-30\n\ndescription:\n HOT template that creates a Contrail Virtual Network with L2NODHCP\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n shared:\n type: boolean\n description: Shared amongst tenants\n default: False\n external:\n type: boolean\n description: router_external for the VirtualNetwork\n default: False\n route_targets:\n type: comma_delimited_list\n description: Network route-targets (RT)\n default: \"\"\n subnet_list:\n type: json\n description: Network subnets\n default: []\n policy_refs:\n type: comma_delimited_list\n description: Policies referenced by Network\n default: \"\"\n policy_refsdata:\n type: json\n description: Policies referenced by Network\n default: []\n route_table_refs:\n type: comma_delimited_list\n description: Route Tables referenced by Network\n default: \"\"\n virtual_network_properties_allow_transit:\n type: boolean\n description: allow_transit for the VirtualNetwork\n default: True\n virtual_network_properties_forwarding_mode:\n type: string\n description: forwarding_mode for the VirtualNetwork\n default: l2\n virtual_network_properties_rpf:\n type: string\n description: rpf for the VirtualNetwork\n default: disable\n flood_unknown_unicast:\n type: boolean\n description: flood_unknown_unicast for the VirtualNetwork\n default: True\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n networkIpam:\n type: OS::ContrailV2::NetworkIpam\n properties:\n name: { get_param: network_name }\n\n network:\n type: OS::ContrailV2::VirtualNetwork\n properties:\n name: { get_param: network_name }\n is_shared: {get_param: shared}\n router_external: { get_param: external }\n route_target_list:\n {\n route_target_list_route_target: { get_param: route_targets }\n }\n network_ipam_refs: [{ get_resource: networkIpam }]\n network_ipam_refs_data:\n [\n {\n network_ipam_refs_data_ipam_subnets: { get_param: subnet_list }\n }\n ]\n network_policy_refs: { get_param: policy_refs }\n network_policy_refs_data: { get_param: policy_refsdata }\n route_table_refs: { get_param: route_table_refs }\n flood_unknown_unicast: { get_param: flood_unknown_unicast } \n virtual_network_properties:\n {\n virtual_network_properties_allow_transit: { get_param: virtual_network_properties_allow_transit },\n virtual_network_properties_forwarding_mode: { get_param: virtual_network_properties_forwarding_mode },\n virtual_network_properties_rpf: { get_param: virtual_network_properties_rpf },\n }\n',10,'MANUAL RECORD','2017-10-05 18:52:03');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','Contrail30-gndirect','1',NULL,'heat_template_version: 2015-04-30\n\ndescription:\n HOT template that creates a Contrail Virtual Network for GNDIRECT\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n shared:\n type: boolean\n description: Shared amongst tenants\n default: False\n external:\n type: boolean\n description: router_external for the VirtualNetwork\n default: False\n route_targets:\n type: comma_delimited_list\n description: Network route-targets (RT)\n default: \"\"\n subnet_list:\n type: json\n description: Network subnets\n default: []\n policy_refs:\n type: comma_delimited_list\n description: Policies referenced by Network\n default: \"\"\n policy_refsdata:\n type: json\n description: Policies referenced by Network\n default: []\n route_table_refs:\n type: comma_delimited_list\n description: Route Tables referenced by Network\n default: \"\"\n virtual_network_properties_rpf:\n type: string\n description: rpf for the VirtualNetwork\n default: disable\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n networkIpam:\n type: OS::ContrailV2::NetworkIpam\n properties:\n name: { get_param: network_name }\n\n network:\n type: OS::ContrailV2::VirtualNetwork\n properties:\n name: { get_param: network_name }\n is_shared: {get_param: shared}\n router_external: { get_param: external }\n route_target_list:\n {\n route_target_list_route_target: { get_param: route_targets }\n }\n network_ipam_refs: [{ get_resource: networkIpam }]\n network_ipam_refs_data:\n [\n {\n network_ipam_refs_data_ipam_subnets: { get_param: subnet_list }\n }\n ]\n network_policy_refs: { get_param: policy_refs }\n network_policy_refs_data: { get_param: policy_refsdata }\n route_table_refs: { get_param: route_table_refs }\n virtual_network_properties:\n {\n virtual_network_properties_rpf: { get_param: virtual_network_properties_rpf }\n }\n',10,'MANUAL RECORD','2017-10-05 18:52:03');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`,`NAME`,`VERSION`,`BODY`,`TIMEOUT_MINUTES`,`DESCRIPTION`,`CREATION_TIMESTAMP`,`ARTIFACT_CHECKSUM`) VALUES ('efee1d84-b8ec-11e7-abc4-cec278b6b50a','Generic NeutronNet','1','heat_template_version: 2013-05-23\n\ndescription:\n HOT template that creates a Generic Neutron Network\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n network_subnet_name:\n type: string\n description: Name of subnet network (e.g. core, dmz)\n default: ECOMPNetwork\n network_subnet_cidr:\n type: string\n description: CIDR of subnet network (e.g. core, dmz)\n default: 10.0.0.0/16\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n network:\n type: OS::Neutron::Net\n properties:\n name: {get_param: network_name }\n\n subnet:\n type: OS::Neutron::Subnet\n properties:\n name: { get_param: network_subnet_name }\n network_id: { get_resource: network }\n cidr: { get_param: network_subnet_cidr }\n enable_dhcp: false\n',10,'Generic Neutron Template','2017-10-26 14:44:00', 'MANUAL RECORD');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','external','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','flood_unknown_unicast','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','network_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','policy_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','policy_refsdata','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','route_table_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','route_targets','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','shared','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_allow_transit','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_forwarding_mode','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_rpf','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','external','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','network_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','policy_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','policy_refsdata','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','route_table_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','route_targets','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','shared','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_rpf','\0','string',NULL);
-
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (1,'CONTRAIL_BASIC','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (2,'CONTRAIL_BASIC','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (3,'CONTRAIL_BASIC','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (4,'CONTRAIL_SHARED','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (5,'CONTRAIL_SHARED','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (6,'CONTRAIL_SHARED','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (7,'CONTRAIL_EXTERNAL','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (8,'CONTRAIL_EXTERNAL','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (9,'CONTRAIL_EXTERNAL','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (10,'CONTRAIL30_BASIC','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (11,'CONTRAIL30_BASIC','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (12,'CONTRAIL30_BASIC','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (13,'CONTRAIL30_MPSCE','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (14,'CONTRAIL30_MPSCE','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (15,'CONTRAIL30_MPSCE','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (16,'VID_DEFAULT','createInstance','VID_DEFAULT recipe to create network if no custom BPMN flow is found','/mso/async/services/CreateNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (17,'VID_DEFAULT','updateInstance','VID_DEFAULT recipe to update network if no custom BPMN flow is found','/mso/async/services/UpdateNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (18,'VID_DEFAULT','deleteInstance','VID_DEFAULT recipe to delete network if no custom BPMN flow is found','/mso/async/services/DeleteNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (19,'CONTRAIL30_L2NODHCP','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (20,'CONTRAIL30_L2NODHCP','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (21,'CONTRAIL30_L2NODHCP','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (22,'CONTRAIL30_GNDIRECT','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (23,'CONTRAIL30_GNDIRECT','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (24,'CONTRAIL30_GNDIRECT','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('48cc36cc-a9fe-11e7-8b4b-0242ac120002','VID_DEFAULT','48cd56c8-a9fe-11e7-8b4b-0242ac120002','1.0','Default service for VID to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-05 18:52:03',NULL);
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('48cc3acd-a9fe-11e7-8b4b-0242ac120002','*','48ce2256-a9fe-11e7-8b4b-0242ac120002','1.0','Default service to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-05 18:52:03',NULL);
-
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (1,'createInstance','1','VID_DEFAULT recipe to create service-instance if no custom BPMN flow is found','/mso/async/services/CreateGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc36cc-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (2,'deleteInstance','1','VID_DEFAULT recipe to delete service-instance if no custom BPMN flow is found','/mso/async/services/DeleteGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc36cc-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (3,'createInstance','1','DEFAULT recipe to create service-instance if no custom BPMN flow is found','/mso/async/services/CreateGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc3acd-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (4,'deleteInstance','1','DEFAULT recipe to delete service-instance if no custom BPMN flow is found','/mso/async/services/DeleteGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc3acd-a9fe-11e7-8b4b-0242ac120002');
-
---
--- Custom Reciepe for the VoLTE service added temporarily
---
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('dfcd7471-16c7-444e-8268-d4c50d90593a','UUI_DEFAULT','dfcd7471-16c7-444e-8268-d4c50d90593a','1.0','Default service for UUI to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-23 18:52:03',NULL);
-
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (11,'createInstance','1','Custom recipe to create E2E service-instance if no custom BPMN flow is found','/mso/async/services/CreateCustomE2EServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','dfcd7471-16c7-444e-8268-d4c50d90593a');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (12,'deleteInstance','1','Custom recipe to delete E2E service-instance if no custom BPMN flow is found','/mso/async/services/DeleteCustomE2EServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','dfcd7471-16c7-444e-8268-d4c50d90593a');
-
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`) VALUES ('CONTRAIL30_GNDIRECT','4885c7a1-a9fe-11e7-8b4b-0242ac120002','3.0',NULL);
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`) VALUES ('CONTRAIL30_L2NODHCP','4885c198-a9fe-11e7-8b4b-0242ac120002','3.0',NULL);
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`,`AIC_VERSION_MIN` , `AIC_VERSION_MAX` ) VALUES ('Generic NeutronNet','efee1d84-b8ec-11e7-abc4-cec278b6b50a','2.0','NULL');
-
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (1,'*','VOLUME_GROUP',NULL,'CREATE',NULL,'1','Recipe Match All for','/mso/async/services/createCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (2,'*','VOLUME_GROUP',NULL,'DELETE',NULL,'1','Recipe Match All for','/mso/async/services/deleteCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (3,'*','VOLUME_GROUP',NULL,'UPDATE',NULL,'1','Recipe Match All for','/mso/async/services/updateCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (4,NULL,'VOLUME_GROUP',NULL,'CREATE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/CreateVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (5,NULL,'VOLUME_GROUP',NULL,'DELETE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/DeleteVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (6,NULL,'VOLUME_GROUP',NULL,'UPDATE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/UpdateVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (7,NULL,'volumeGroup','VID_DEFAULT','createInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/CreateVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (8,NULL,'volumeGroup','VID_DEFAULT','deleteInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/DeleteVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (9,NULL,'volumeGroup','VID_DEFAULT','updateInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/UpdateVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (10,NULL,'vfModule','VID_DEFAULT','createInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/CreateVfModuleInfra',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (11,NULL,'vfModule','VID_DEFAULT','deleteInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/DeleteVfModuleInfra',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (12,NULL,'vfModule','VID_DEFAULT','updateInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/UpdateVfModuleInfra',null,180,'2017-10-05 18:52:03');
-
---
--- Default Reciepe for the VNF componnets added start #SO-334, to unblock the VNF operations
---
-
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','createInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/CreateVfModuleInfra','vfModule',NULL,180,NULL);
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','updateInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/UpdateVfModuleInfra','vfModule',NULL,180,NULL);
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','deleteInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/DeleteVfModuleInfra','vfModule',NULL,180,NULL);
---
--- Default Reciepe for the VNF componnets added End
---
-
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (1,NULL,'CREATE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/workflow/services/CreateGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (2,NULL,'DELETE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/async/services//deleteGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (3,NULL,'UPDATE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/workflow/services/updateGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (4,'*','CREATE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/CreateVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (5,'*','DELETE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/DeleteVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (6,'*','UPDATE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/UpdateVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (7,NULL,'createInstance',NULL,'1','VID_DEFAULT','VID_DEFAULT recipe to create VNF if no custom BPMN flow is found','/mso/async/services/CreateVnfInfra',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (8,NULL,'deleteInstance',NULL,'1','VID_DEFAULT','VID_DEFAULT recipe to delete VNF if no custom BPMN flow is found','/mso/async/services/DeleteVnfInfra',NULL,180,'2017-10-05 18:52:03');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/create_mso_db-demo-dns.sql b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/create_mso_db-demo-dns.sql
deleted file mode 100644
index b5063defda..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/create_mso_db-demo-dns.sql
+++ /dev/null
@@ -1,77 +0,0 @@
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID1','base_vlb.env','1.0','BASE VLB ENV file','parameters:\n vlb_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vlb_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n vlb_private_net_id: zdfw1lb01_private\n ecomp_private_net_id: oam_ecomp\n vlb_private_net_cidr: 192.168.10.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vlb_private_ip_0: 192.168.10.111\n vlb_private_ip_1: 192.168.9.111\n vdns_private_ip_0: 192.168.10.211\n vdns_private_ip_1: 192.168.9.211\n vlb_name_0: zdfw1lb01lb01\n vdns_name_0: zdfw1lb01dns01\n vnf_id: vLoadBalancer_demo_app\n vf_module_id: vLoadBalancer\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vlb_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID2','dnsscaling.env','1.0','DNS Scaling ENV file','parameters:\n vlb_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vlb_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n vlb_private_net_id: zdfw1lb01_private\n ecomp_private_net_id: oam_ecomp\n vlb_private_ip_0: 192.168.10.111\n vlb_private_ip_1: 192.168.9.111\n vdns_private_ip_0: 192.168.10.222\n vdns_private_ip_1: 192.168.9.222\n vdns_name_0: zdfw1lb01dns02\n vnf_id: vLoadBalancer_demo_app\n vf_module_id: vLoadBalancer\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vlb_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID1','base_vlb.yaml','1.0','Base VLB Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy vLoadBalancer/vDNS demo app for OpenECOMP\n\nparameters:\n vlb_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vlb_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n vlb_private_net_id:\n type: string\n label: vLoadBalancer private network name or ID\n description: Private network that connects vLoadBalancer with vDNSs\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n vlb_private_net_cidr:\n type: string\n label: vLoadBalancer private network CIDR\n description: The CIDR of the vLoadBalancer private network\n ecomp_private_net_cidr:\n type: string\n label: ECOMP private network CIDR\n description: The CIDR of the protected private network\n vlb_private_ip_0:\n type: string\n label: vLoadBalancer private IP address towards the private network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs\n vlb_private_ip_1:\n type: string\n label: vLoadBalancer private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components\n vdns_private_ip_0:\n type: string\n label: vDNS private IP address towards the private network\n description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer\n vdns_private_ip_1:\n type: string\n label: vDNS private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vDNS to communicate with ECOMP components\n vlb_name_0:\n type: string\n label: vLoadBalancer name\n description: Name of the vLoadBalancer\n vdns_name_0:\n type: string\n label: vDNS name\n description: Name of the vDNS\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vLoadBalancer Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n my_keypair:\n type: OS::Nova::KeyPair\n properties:\n name: { get_param: key_name }\n public_key: { get_param: pub_key }\n save_private_key: false\n\n vlb_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: vlb_private_net_id }\n\n vlb_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n name: { get_param: vlb_private_net_id }\n network_id: { get_resource: vlb_private_network }\n cidr: { get_param: vlb_private_net_cidr }\n\n vlb_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vlb_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vlb_private_0_port }\n - port: { get_resource: vlb_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __dcae_collector_ip__: { get_param: dcae_collector_ip }\n __local_private_ipaddr__: { get_param: vlb_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n DCAE_COLLECTOR_IP=__dcae_collector_ip__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_lb_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vlb.sh\n chmod +x v_lb_init.sh\n chmod +x vlb.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $DCAE_COLLECTOR_IP > config/dcae_collector_ip.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n LOCAL_PUBLIC_IPADDR=$(ifconfig eth0 | grep \"inet addr\" | tr -s \' \' | cut -d\' \' -f3 | cut -d\':\' -f2)\n echo $LOCAL_PUBLIC_IPADDR > config/local_public_ipaddr.txt\n mv vlb.sh /etc/init.d\n update-rc.d vlb.sh defaults\n ./v_lb_init.sh\n\n vlb_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: vlb_private_network }\n fixed_ips: [{\"subnet\": { get_resource: vlb_private_subnet }, \"ip_address\": { get_param: vlb_private_ip_0 }}]\n\n vlb_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vlb_private_ip_1 }}]\n\n vdns_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vdns_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vdns_private_0_port }\n - port: { get_resource: vdns_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __lb_oam_int__ : { get_param: vlb_private_ip_1 }\n __lb_private_ipaddr__: { get_param: vlb_private_ip_0 }\n __local_private_ipaddr__: { get_param: vdns_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n LB_OAM_INT=__lb_oam_int__\n LB_PRIVATE_IPADDR=__lb_private_ipaddr__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_dns_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vdns.sh\n chmod +x v_dns_init.sh\n chmod +x vdns.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $LB_OAM_INT > config/lb_oam_int.txt\n echo $LB_PRIVATE_IPADDR > config/lb_private_ipaddr.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vdns.sh /etc/init.d\n update-rc.d vdns.sh defaults\n ./v_dns_init.sh\n\n vdns_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: vlb_private_network }\n fixed_ips: [{\"subnet\": { get_resource: vlb_private_subnet }, \"ip_address\": { get_param: vdns_private_ip_0 }}]\n\n vdns_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_1 }}]\n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID2','dnsscaling.yaml','1.0','DNS Scaling Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy a vDNS for OpenECOMP (scaling-up scenario)\n\nparameters:\n vlb_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vlb_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n vlb_private_net_id:\n type: string\n label: vLoadBalancer private network name or ID\n description: Private network that connects vLoadBalancer with vDNSs\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n vlb_private_ip_0:\n type: string\n label: vLoadBalancer private IP address towards the private network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs\n vlb_private_ip_1:\n type: string\n label: vLoadBalancer private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components\n vdns_private_ip_0:\n type: string\n label: vDNS private IP address towards the private network\n description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer\n vdns_private_ip_1:\n type: string\n label: vDNS private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vDNS to communicate with ECOMP components\n vdns_name_0:\n type: string\n label: vDNS name\n description: Name of the vDNS\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vLoadBalancer Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n vdns_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vdns_name_0 }\n key_name: { get_param: key_name }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vdns_private_0_port }\n - port: { get_resource: vdns_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __lb_oam_int__ : { get_param: vlb_private_ip_1 }\n __lb_private_ipaddr__: { get_param: vlb_private_ip_0 }\n __local_private_ipaddr__: { get_param: vdns_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n LB_OAM_INT=__lb_oam_int__\n LB_PRIVATE_IPADDR=__lb_private_ipaddr__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_dns_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vdns.sh\n chmod +x v_dns_init.sh\n chmod +x vdns.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $LB_OAM_INT > config/lb_oam_int.txt\n echo $LB_PRIVATE_IPADDR > config/lb_private_ipaddr.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vdns.sh /etc/init.d\n update-rc.d vdns.sh defaults\n ./v_dns_init.sh\n\n vdns_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: vlb_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: vlb_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_0 }}]\n\n vdns_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_1 }}]\n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','dcae_collector_ip','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','ecomp_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','ecomp_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','key_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','public_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','pub_key','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdns_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdns_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdsn_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vf_module_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_flavor_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_image_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vnf_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','webserver_ip','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','dcae_collector_ip','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','ecomp_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','key_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','public_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','pub_key','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdns_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdns_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdsn_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vf_module_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_flavor_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_image_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vnf_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','webserver_ip','','string',NULL);
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('1e34774e-715e-4fd6-bd09-7b654622f35i','dns-service','585822c8-4027-4f84-ba50-e9248606f111','1.0','dns service for unit test','2016-11-14 13:04:07',NULL);
-
-INSERT INTO `service_to_resource_customizations` (`SERVICE_MODEL_UUID`, `RESOURCE_MODEL_CUSTOMIZATION_UUID`, `MODEL_TYPE`, `CREATION_TIMESTAMP`) VALUES ('1e34774e-715e-4fd6-bd09-7b654622f35i','302aa6be-a9fe-11e7-8b4b-0242ac120002','vnf','2017-10-05 18:51:28');
-
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-1::module-1.group','585822c7-4027-4f84-ba50-e9248606f132','1.0','VF_RI1_DNS::module-1',NULL,1,'Artifact-UUID1',NULL,'2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131');
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-2::module-1.group','585822c7-4027-4f84-ba50-e9248606f133','1.0','VF_RI1_DNS::module-2',NULL,0,'Artifact-UUID2',NULL,'2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131');
-
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('30316d81-a9fe-11e7-8b4b-0242ac120002',NULL,1,0,NULL,NULL,'EnvArtifact-UUID1',NULL,'2017-10-05 18:51:25','1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-1::module-1.group');
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('303170ae-a9fe-11e7-8b4b-0242ac120002',NULL,0,0,NULL,NULL,'EnvArtifact-UUID2',NULL,'2017-10-05 18:51:25','1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-2::module-1.group');
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','30316d81-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:51:26');
-
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','303170ae-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:51:26');
-
-INSERT INTO `vnf_resource` (`ORCHESTRATION_MODE`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `MODEL_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `TOSCA_NODE_TYPE`, `HEAT_TEMPLATE_ARTIFACT_UUID`) VALUES ('HEAT','dns service for unit test1707MIGRATED','2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131',NULL,NULL,'585822c7-4027-4f84-ba50-e9248606f112','1.0','DNSResource',NULL,NULL);
-
-INSERT INTO `vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`, `MODEL_INSTANCE_NAME`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_MAX_COUNT`, `NF_TYPE`, `NF_ROLE`, `NF_FUNCTION`, `NF_NAMING_CODE`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','DNSResource-1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2017-10-05 18:51:25','585822c7-4027-4f84-ba50-e9248606f131');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/create_mso_db-demo-vfw.sql b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/create_mso_db-demo-vfw.sql
deleted file mode 100644
index 15001050b2..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/create_mso_db-demo-vfw.sql
+++ /dev/null
@@ -1,59 +0,0 @@
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID3','base_vfw.env','1.0','base_vfw ENV file','parameters:\n vfw_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vfw_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n unprotected_private_net_id: zdfw1fwl01_unprotected\n protected_private_net_id: zdfw1fwl01_protected\n ecomp_private_net_id: oam_ecomp\n unprotected_private_net_cidr: 192.168.10.0/24\n protected_private_net_cidr: 192.168.20.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vfw_private_ip_0: 192.168.10.100\n vfw_private_ip_1: 192.168.20.100\n vfw_private_ip_2: 192.168.9.100\n vpg_private_ip_0: 192.168.10.200\n vpg_private_ip_1: 192.168.9.200\n vsn_private_ip_0: 192.168.20.250\n vsn_private_ip_1: 192.168.9.250\n vfw_name_0: zdfw1fwl01fwl01\n vpg_name_0: zdfw1fwl01pgn01\n vsn_name_0: zdfw1fwl01snk01\n vnf_id: vFirewall_demo_app\n vf_module_id: vFirewall\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vfw_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID3','base_vfw.yaml','1.0','Base VFW Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy vFirewall demo app for OpenECOMP\n\nparameters:\n vfw_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vfw_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n unprotected_private_net_id:\n type: string\n label: Unprotected private network name or ID\n description: Private network that connects vPacketGenerator with vFirewall\n protected_private_net_id:\n type: string\n label: Protected private network name or ID\n description: Private network that connects vFirewall with vSink\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n unprotected_private_net_cidr:\n type: string\n label: Unprotected private network CIDR\n description: The CIDR of the unprotected private network\n protected_private_net_cidr:\n type: string\n label: Protected private network CIDR\n description: The CIDR of the protected private network\n ecomp_private_net_cidr:\n type: string\n label: ECOMP private network CIDR\n description: The CIDR of the protected private network\n vfw_private_ip_0:\n type: string\n label: vFirewall private IP address towards the unprotected network\n description: Private IP address that is assigned to the vFirewall to communicate with the vPacketGenerator\n vfw_private_ip_1:\n type: string\n label: vFirewall private IP address towards the protected network\n description: Private IP address that is assigned to the vFirewall to communicate with the vSink\n vfw_private_ip_2:\n type: string\n label: vFirewall private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vFirewall to communicate with ECOMP components\n vpg_private_ip_0:\n type: string\n label: vPacketGenerator private IP address towards the unprotected network\n description: Private IP address that is assigned to the vPacketGenerator to communicate with the vFirewall\n vpg_private_ip_1:\n type: string\n label: vPacketGenerator private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vPacketGenerator to communicate with ECOMP components\n vsn_private_ip_0:\n type: string\n label: vSink private IP address towards the protected network\n description: Private IP address that is assigned to the vSink to communicate with the vFirewall\n vsn_private_ip_1:\n type: string\n label: vSink private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vSink to communicate with ECOMP components\n vfw_name_0:\n type: string\n label: vFirewall name\n description: Name of the vFirewall\n vpg_name_0:\n type: string\n label: vPacketGenerator name\n description: Name of the vPacketGenerator\n vsn_name_0:\n type: string\n label: vSink name\n description: Name of the vSink\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vFirewall Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n my_keypair:\n type: OS::Nova::KeyPair\n properties:\n name: { get_param: key_name }\n public_key: { get_param: pub_key }\n save_private_key: false\n\n unprotected_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: unprotected_private_net_id }\n\n protected_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: protected_private_net_id }\n\n unprotected_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n network_id: { get_resource: unprotected_private_network }\n cidr: { get_param: unprotected_private_net_cidr }\n\n protected_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n network_id: { get_resource: protected_private_network }\n cidr: { get_param: protected_private_net_cidr }\n\n vfw_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vfw_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vfw_private_0_port }\n - port: { get_resource: vfw_private_1_port }\n - port: { get_resource: vfw_private_2_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __dcae_collector_ip__ : { get_param: dcae_collector_ip }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n DCAE_COLLECTOR_IP=__dcae_collector_ip__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_firewall_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vfirewall.sh\n chmod +x v_firewall_init.sh\n chmod +x vfirewall.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $DCAE_COLLECTOR_IP > config/dcae_collector_ip.txt\n echo \"no\" > config/install.txt\n mv vfirewall.sh /etc/init.d\n sudo update-rc.d vfirewall.sh defaults\n ./v_firewall_init.sh\n\n vfw_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: unprotected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: unprotected_private_subnet }, \"ip_address\": { get_param: vfw_private_ip_0 }}]\n\n vfw_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: protected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: protected_private_subnet }, \"ip_address\": { get_param: vfw_private_ip_1 }}]\n\n vfw_private_2_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vfw_private_ip_2 }}]\n\n vpg_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vpg_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vpg_private_0_port }\n - port: { get_resource: vpg_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __fw_ipaddr__: { get_param: vfw_private_ip_0 }\n __protected_net_cidr__: { get_param: protected_private_net_cidr }\n __sink_ipaddr__: { get_param: vsn_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n FW_IPADDR=__fw_ipaddr__\n PROTECTED_NET_CIDR=__protected_net_cidr__\n SINK_IPADDR=__sink_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_packetgen_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vpacketgen.sh\n chmod +x v_packetgen_init.sh\n chmod +x vpacketgen.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $FW_IPADDR > config/fw_ipaddr.txt\n echo $PROTECTED_NET_CIDR > config/protected_net_cidr.txt\n echo $SINK_IPADDR > config/sink_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vpacketgen.sh /etc/init.d\n sudo update-rc.d vpacketgen.sh defaults\n ./v_packetgen_init.sh\n\n vpg_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: unprotected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: unprotected_private_subnet }, \"ip_address\": { get_param: vpg_private_ip_0 }}]\n\n vpg_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vpg_private_ip_1 }}]\n\n vsn_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vsn_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vsn_private_0_port }\n - port: { get_resource: vsn_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __protected_net_gw__: { get_param: vfw_private_ip_1 }\n __unprotected_net__: { get_param: unprotected_private_net_cidr }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n PROTECTED_NET_GW=__protected_net_gw__\n UNPROTECTED_NET=__unprotected_net__\n UNPROTECTED_NET=$(echo $UNPROTECTED_NET | cut -d\'/\' -f1)\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_sink_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vsink.sh\n chmod +x v_sink_init.sh\n chmod +x vsink.sh\n echo $PROTECTED_NET_GW > config/protected_net_gw.txt\n echo $UNPROTECTED_NET > config/unprotected_net.txt\n echo \"no\" > config/install.txt\n mv vsink.sh /etc/init.d\n sudo update-rc.d vsink.sh defaults\n ./v_sink_init.sh\n\n vsn_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: protected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: protected_private_subnet }, \"ip_address\": { get_param: vsn_private_ip_0 }}]\n\n vsn_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vsn_private_ip_1 }}]\n \n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','dcae_collector_ip','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','ecomp_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','ecomp_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','key_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','protected_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','protected_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','public_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','pub_key','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','unprotected_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','unprotected_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_flavor_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_image_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_2','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vf_module_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vnf_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','webserver_ip','','string',NULL);
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('2e34774e-715e-4fd5-bd09-7b654622f35i','vfw-service','585822c7-4027-4f84-ba50-e9248606f112','1.0','VFW service','2016-11-14 13:04:07',NULL);
-
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33f.VF_RI1_VFW::module-1::module-1.group','585822c7-4027-4f84-ba50-e9248606f134','1.0','VF_RI1_VFW::module-1',NULL,1,'Artifact-UUID3',NULL,'2016-11-14 13:04:07','685822c7-4027-4f84-ba50-e9248606f132');
-
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('5aa23938-a9fe-11e7-8b4b-0242ac120002',NULL,1,0,NULL,NULL,'EnvArtifact-UUID3',NULL,'2017-10-05 18:52:03','1e34774e-715e-4fd5-bd08-7b654622f33f.VF_RI1_VFW::module-1::module-1.group');
-
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('5a9bd247-a9fe-11e7-8b4b-0242ac120002','5aa23938-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:52:03');
-
-INSERT INTO `vnf_resource` (`ORCHESTRATION_MODE`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `MODEL_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `TOSCA_NODE_TYPE`, `HEAT_TEMPLATE_ARTIFACT_UUID`) VALUES ('HEAT','VFW service1707MIGRATED','2016-11-14 13:04:07','685822c7-4027-4f84-ba50-e9248606f132',NULL,NULL,'585822c7-4027-4f84-ba50-e9248606f113','1.0','VFWResource',NULL,NULL);
-
-INSERT INTO `vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`, `MODEL_INSTANCE_NAME`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_MAX_COUNT`, `NF_TYPE`, `NF_ROLE`, `NF_FUNCTION`, `NF_NAMING_CODE`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('5a9bd247-a9fe-11e7-8b4b-0242ac120002','VFWResource-1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2017-10-05 18:52:03','685822c7-4027-4f84-ba50-e9248606f132');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mariadb_engine_7.7.3-ee.sql b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mariadb_engine_7.7.3-ee.sql
deleted file mode 100644
index b9b8dd62c9..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mariadb_engine_7.7.3-ee.sql
+++ /dev/null
@@ -1,1195 +0,0 @@
-DROP DATABASE IF EXISTS `camundabpmn`;
-
-CREATE DATABASE `camundabpmn`;
-
-USE `camundabpmn`;
-
-# DROP USER IF EXISTS 'camunda';
-delete from mysql.user where User='camunda';
-CREATE USER 'camunda';
-GRANT ALL on camundabpmn.* to 'camunda' identified by 'camunda123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `camundabpmn`;
-
-create table ACT_GE_PROPERTY (
- NAME_ varchar(64),
- VALUE_ varchar(300),
- REV_ integer,
- primary key (NAME_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-insert into ACT_GE_PROPERTY
-values ('schema.version', 'fox', 1);
-
-insert into ACT_GE_PROPERTY
-values ('schema.history', 'create(fox)', 1);
-
-insert into ACT_GE_PROPERTY
-values ('next.dbid', '1', 1);
-
-insert into ACT_GE_PROPERTY
-values ('deployment.lock', '0', 1);
-
-insert into ACT_GE_PROPERTY
-values ('history.cleanup.job.lock', '0', 1);
-
-create table ACT_GE_BYTEARRAY (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- DEPLOYMENT_ID_ varchar(64),
- BYTES_ LONGBLOB,
- GENERATED_ TINYINT,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RE_DEPLOYMENT (
- ID_ varchar(64),
- NAME_ varchar(255),
- DEPLOY_TIME_ timestamp(3),
- SOURCE_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EXECUTION (
- ID_ varchar(64),
- REV_ integer,
- PROC_INST_ID_ varchar(64),
- BUSINESS_KEY_ varchar(255),
- PARENT_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- SUPER_EXEC_ varchar(64),
- SUPER_CASE_EXEC_ varchar(64),
- CASE_INST_ID_ varchar(64),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- IS_ACTIVE_ TINYINT,
- IS_CONCURRENT_ TINYINT,
- IS_SCOPE_ TINYINT,
- IS_EVENT_SCOPE_ TINYINT,
- SUSPENSION_STATE_ integer,
- CACHED_ENT_STATE_ integer,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_JOB (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- TYPE_ varchar(255) NOT NULL,
- LOCK_EXP_TIME_ timestamp(3) NULL,
- LOCK_OWNER_ varchar(255),
- EXCLUSIVE_ boolean,
- EXECUTION_ID_ varchar(64),
- PROCESS_INSTANCE_ID_ varchar(64),
- PROCESS_DEF_ID_ varchar(64),
- PROCESS_DEF_KEY_ varchar(255),
- RETRIES_ integer,
- EXCEPTION_STACK_ID_ varchar(64),
- EXCEPTION_MSG_ varchar(4000),
- DUEDATE_ timestamp(3) NULL,
- REPEAT_ varchar(255),
- HANDLER_TYPE_ varchar(255),
- HANDLER_CFG_ varchar(4000),
- DEPLOYMENT_ID_ varchar(64),
- SUSPENSION_STATE_ integer NOT NULL DEFAULT 1,
- JOB_DEF_ID_ varchar(64),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_JOBDEF (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- ACT_ID_ varchar(255),
- JOB_TYPE_ varchar(255) NOT NULL,
- JOB_CONFIGURATION_ varchar(255),
- SUSPENSION_STATE_ integer,
- JOB_PRIORITY_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RE_PROCDEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- HAS_START_FORM_KEY_ TINYINT,
- SUSPENSION_STATE_ integer,
- TENANT_ID_ varchar(64),
- VERSION_TAG_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_TASK (
- ID_ varchar(64),
- REV_ integer,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- NAME_ varchar(255),
- PARENT_TASK_ID_ varchar(64),
- DESCRIPTION_ varchar(4000),
- TASK_DEF_KEY_ varchar(255),
- OWNER_ varchar(255),
- ASSIGNEE_ varchar(255),
- DELEGATION_ varchar(64),
- PRIORITY_ integer,
- CREATE_TIME_ timestamp(3),
- DUE_DATE_ datetime(3),
- FOLLOW_UP_DATE_ datetime(3),
- SUSPENSION_STATE_ integer,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_IDENTITYLINK (
- ID_ varchar(64),
- REV_ integer,
- GROUP_ID_ varchar(255),
- TYPE_ varchar(255),
- USER_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_VARIABLE (
- ID_ varchar(64) not null,
- REV_ integer,
- TYPE_ varchar(255) not null,
- NAME_ varchar(255) not null,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- TASK_ID_ varchar(64),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- VAR_SCOPE_ varchar(64) not null,
- SEQUENCE_COUNTER_ bigint,
- IS_CONCURRENT_LOCAL_ TINYINT,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EVENT_SUBSCR (
- ID_ varchar(64) not null,
- REV_ integer,
- EVENT_TYPE_ varchar(255) not null,
- EVENT_NAME_ varchar(255),
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- ACTIVITY_ID_ varchar(255),
- CONFIGURATION_ varchar(255),
- CREATED_ timestamp(3) not null,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_INCIDENT (
- ID_ varchar(64) not null,
- REV_ integer not null,
- INCIDENT_TIMESTAMP_ timestamp(3) not null,
- INCIDENT_MSG_ varchar(4000),
- INCIDENT_TYPE_ varchar(255) not null,
- EXECUTION_ID_ varchar(64),
- ACTIVITY_ID_ varchar(255),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- CAUSE_INCIDENT_ID_ varchar(64),
- ROOT_CAUSE_INCIDENT_ID_ varchar(64),
- CONFIGURATION_ varchar(255),
- TENANT_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_AUTHORIZATION (
- ID_ varchar(64) not null,
- REV_ integer not null,
- TYPE_ integer not null,
- GROUP_ID_ varchar(255),
- USER_ID_ varchar(255),
- RESOURCE_TYPE_ integer not null,
- RESOURCE_ID_ varchar(64),
- PERMS_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_FILTER (
- ID_ varchar(64) not null,
- REV_ integer not null,
- RESOURCE_TYPE_ varchar(255) not null,
- NAME_ varchar(255) not null,
- OWNER_ varchar(255),
- QUERY_ LONGTEXT not null,
- PROPERTIES_ LONGTEXT,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_METER_LOG (
- ID_ varchar(64) not null,
- NAME_ varchar(64) not null,
- REPORTER_ varchar(255),
- VALUE_ bigint,
- TIMESTAMP_ timestamp(3),
- MILLISECONDS_ bigint DEFAULT 0,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EXT_TASK (
- ID_ varchar(64) not null,
- REV_ integer not null,
- WORKER_ID_ varchar(255),
- TOPIC_NAME_ varchar(255),
- RETRIES_ integer,
- ERROR_MSG_ varchar(4000),
- ERROR_DETAILS_ID_ varchar(64),
- LOCK_EXP_TIME_ timestamp(3) NULL,
- SUSPENSION_STATE_ integer,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_BATCH (
- ID_ varchar(64) not null,
- REV_ integer not null,
- TYPE_ varchar(255),
- TOTAL_JOBS_ integer,
- JOBS_CREATED_ integer,
- JOBS_PER_SEED_ integer,
- INVOCATIONS_PER_JOB_ integer,
- SEED_JOB_DEF_ID_ varchar(64),
- BATCH_JOB_DEF_ID_ varchar(64),
- MONITOR_JOB_DEF_ID_ varchar(64),
- SUSPENSION_STATE_ integer,
- CONFIGURATION_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_EXEC_BUSKEY on ACT_RU_EXECUTION(BUSINESS_KEY_);
-create index ACT_IDX_EXEC_TENANT_ID on ACT_RU_EXECUTION(TENANT_ID_);
-create index ACT_IDX_TASK_CREATE on ACT_RU_TASK(CREATE_TIME_);
-create index ACT_IDX_TASK_ASSIGNEE on ACT_RU_TASK(ASSIGNEE_);
-create index ACT_IDX_TASK_TENANT_ID on ACT_RU_TASK(TENANT_ID_);
-create index ACT_IDX_IDENT_LNK_USER on ACT_RU_IDENTITYLINK(USER_ID_);
-create index ACT_IDX_IDENT_LNK_GROUP on ACT_RU_IDENTITYLINK(GROUP_ID_);
-create index ACT_IDX_EVENT_SUBSCR_CONFIG_ on ACT_RU_EVENT_SUBSCR(CONFIGURATION_);
-create index ACT_IDX_EVENT_SUBSCR_TENANT_ID on ACT_RU_EVENT_SUBSCR(TENANT_ID_);
-create index ACT_IDX_VARIABLE_TASK_ID on ACT_RU_VARIABLE(TASK_ID_);
-create index ACT_IDX_VARIABLE_TENANT_ID on ACT_RU_VARIABLE(TENANT_ID_);
-create index ACT_IDX_ATHRZ_PROCEDEF on ACT_RU_IDENTITYLINK(PROC_DEF_ID_);
-create index ACT_IDX_INC_CONFIGURATION on ACT_RU_INCIDENT(CONFIGURATION_);
-create index ACT_IDX_INC_TENANT_ID on ACT_RU_INCIDENT(TENANT_ID_);
--- CAM-5914
-create index ACT_IDX_JOB_EXECUTION_ID on ACT_RU_JOB(EXECUTION_ID_);
--- this index needs to be limited in mariadb see CAM-6938
-create index ACT_IDX_JOB_HANDLER on ACT_RU_JOB(HANDLER_TYPE_(100),HANDLER_CFG_(155));
-create index ACT_IDX_JOB_PROCINST on ACT_RU_JOB(PROCESS_INSTANCE_ID_);
-create index ACT_IDX_JOB_TENANT_ID on ACT_RU_JOB(TENANT_ID_);
-create index ACT_IDX_JOBDEF_TENANT_ID on ACT_RU_JOBDEF(TENANT_ID_);
-
--- new metric milliseconds column
-CREATE INDEX ACT_IDX_METER_LOG_MS ON ACT_RU_METER_LOG(MILLISECONDS_);
-CREATE INDEX ACT_IDX_METER_LOG_NAME_MS ON ACT_RU_METER_LOG(NAME_, MILLISECONDS_);
-CREATE INDEX ACT_IDX_METER_LOG_REPORT ON ACT_RU_METER_LOG(NAME_, REPORTER_, MILLISECONDS_);
-
--- old metric timestamp column
-CREATE INDEX ACT_IDX_METER_LOG_TIME ON ACT_RU_METER_LOG(TIMESTAMP_);
-CREATE INDEX ACT_IDX_METER_LOG ON ACT_RU_METER_LOG(NAME_, TIMESTAMP_);
-
-create index ACT_IDX_EXT_TASK_TOPIC on ACT_RU_EXT_TASK(TOPIC_NAME_);
-create index ACT_IDX_EXT_TASK_TENANT_ID on ACT_RU_EXT_TASK(TENANT_ID_);
-create index ACT_IDX_EXT_TASK_PRIORITY ON ACT_RU_EXT_TASK(PRIORITY_);
-create index ACT_IDX_EXT_TASK_ERR_DETAILS ON ACT_RU_EXT_TASK(ERROR_DETAILS_ID_);
-create index ACT_IDX_AUTH_GROUP_ID ON ACT_RU_AUTHORIZATION(GROUP_ID_);
-create index ACT_IDX_JOB_JOB_DEF_ID on ACT_RU_JOB(JOB_DEF_ID_);
-
-alter table ACT_GE_BYTEARRAY
- add constraint ACT_FK_BYTEARR_DEPL
- foreign key (DEPLOYMENT_ID_)
- references ACT_RE_DEPLOYMENT (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PARENT
- foreign key (PARENT_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_SUPER
- foreign key (SUPER_EXEC_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_IDENTITYLINK
- add constraint ACT_FK_TSKASS_TASK
- foreign key (TASK_ID_)
- references ACT_RU_TASK (ID_);
-
-alter table ACT_RU_IDENTITYLINK
- add constraint ACT_FK_ATHRZ_PROCEDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF(ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION(ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_BYTEARRAY
- foreign key (BYTEARRAY_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-alter table ACT_RU_JOB
- add constraint ACT_FK_JOB_EXCEPTION
- foreign key (EXCEPTION_STACK_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-alter table ACT_RU_EVENT_SUBSCR
- add constraint ACT_FK_EVENT_EXEC
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION(ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_CAUSE
- foreign key (CAUSE_INCIDENT_ID_)
- references ACT_RU_INCIDENT (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_RCAUSE
- foreign key (ROOT_CAUSE_INCIDENT_ID_)
- references ACT_RU_INCIDENT (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_EXT_TASK
- add constraint ACT_FK_EXT_TASK_ERROR_DETAILS
- foreign key (ERROR_DETAILS_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-create index ACT_IDX_INC_JOB_DEF on ACT_RU_INCIDENT(JOB_DEF_ID_);
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_JOB_DEF
- foreign key (JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-alter table ACT_RU_AUTHORIZATION
- add constraint ACT_UNIQ_AUTH_USER
- unique (USER_ID_,TYPE_,RESOURCE_TYPE_,RESOURCE_ID_);
-
-alter table ACT_RU_AUTHORIZATION
- add constraint ACT_UNIQ_AUTH_GROUP
- unique (GROUP_ID_,TYPE_,RESOURCE_TYPE_,RESOURCE_ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_UNIQ_VARIABLE
- unique (VAR_SCOPE_, NAME_);
-
-alter table ACT_RU_EXT_TASK
- add constraint ACT_FK_EXT_TASK_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-create index ACT_IDX_BATCH_SEED_JOB_DEF ON ACT_RU_BATCH(SEED_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_SEED_JOB_DEF
- foreign key (SEED_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-create index ACT_IDX_BATCH_MONITOR_JOB_DEF ON ACT_RU_BATCH(MONITOR_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_MONITOR_JOB_DEF
- foreign key (MONITOR_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-create index ACT_IDX_BATCH_JOB_DEF ON ACT_RU_BATCH(BATCH_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_JOB_DEF
- foreign key (BATCH_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
--- indexes for deadlock problems - https://app.camunda.com/jira/browse/CAM-2567 --
-create index ACT_IDX_INC_CAUSEINCID on ACT_RU_INCIDENT(CAUSE_INCIDENT_ID_);
-create index ACT_IDX_INC_EXID on ACT_RU_INCIDENT(EXECUTION_ID_);
-create index ACT_IDX_INC_PROCDEFID on ACT_RU_INCIDENT(PROC_DEF_ID_);
-create index ACT_IDX_INC_PROCINSTID on ACT_RU_INCIDENT(PROC_INST_ID_);
-create index ACT_IDX_INC_ROOTCAUSEINCID on ACT_RU_INCIDENT(ROOT_CAUSE_INCIDENT_ID_);
--- index for deadlock problem - https://app.camunda.com/jira/browse/CAM-4440 --
-create index ACT_IDX_AUTH_RESOURCE_ID on ACT_RU_AUTHORIZATION(RESOURCE_ID_);
--- index to prevent deadlock on fk constraint - https://app.camunda.com/jira/browse/CAM-5440 --
-create index ACT_IDX_EXT_TASK_EXEC on ACT_RU_EXT_TASK(EXECUTION_ID_);
-
--- indexes to improve deployment
-create index ACT_IDX_BYTEARRAY_NAME on ACT_GE_BYTEARRAY(NAME_);
-create index ACT_IDX_DEPLOYMENT_NAME on ACT_RE_DEPLOYMENT(NAME_);
-create index ACT_IDX_DEPLOYMENT_TENANT_ID on ACT_RE_DEPLOYMENT(TENANT_ID_);
-create index ACT_IDX_JOBDEF_PROC_DEF_ID ON ACT_RU_JOBDEF(PROC_DEF_ID_);
-create index ACT_IDX_JOB_HANDLER_TYPE ON ACT_RU_JOB(HANDLER_TYPE_);
-create index ACT_IDX_EVENT_SUBSCR_EVT_NAME ON ACT_RU_EVENT_SUBSCR(EVENT_NAME_);
-create index ACT_IDX_PROCDEF_DEPLOYMENT_ID ON ACT_RE_PROCDEF(DEPLOYMENT_ID_);
-create index ACT_IDX_PROCDEF_TENANT_ID ON ACT_RE_PROCDEF(TENANT_ID_);
-create index ACT_IDX_PROCDEF_VER_TAG ON ACT_RE_PROCDEF(VERSION_TAG_);
--- create case definition table --
-create table ACT_RE_CASE_DEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- TENANT_ID_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create case execution table --
-create table ACT_RU_CASE_EXECUTION (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CASE_INST_ID_ varchar(64),
- SUPER_CASE_EXEC_ varchar(64),
- SUPER_EXEC_ varchar(64),
- BUSINESS_KEY_ varchar(255),
- PARENT_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- ACT_ID_ varchar(255),
- PREV_STATE_ integer,
- CURRENT_STATE_ integer,
- REQUIRED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create case sentry part table --
-
-create table ACT_RU_CASE_SENTRY_PART (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CASE_INST_ID_ varchar(64),
- CASE_EXEC_ID_ varchar(64),
- SENTRY_ID_ varchar(255),
- TYPE_ varchar(255),
- SOURCE_CASE_EXEC_ID_ varchar(64),
- STANDARD_EVENT_ varchar(255),
- SOURCE_ varchar(255),
- VARIABLE_EVENT_ varchar(255),
- VARIABLE_NAME_ varchar(255),
- SATISFIED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create index on business key --
-create index ACT_IDX_CASE_EXEC_BUSKEY on ACT_RU_CASE_EXECUTION(BUSINESS_KEY_);
-
--- create foreign key constraints on ACT_RU_CASE_EXECUTION --
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_PARENT
- foreign key (PARENT_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_CASE_DEF
- foreign key (CASE_DEF_ID_)
- references ACT_RE_CASE_DEF(ID_);
-
--- create foreign key constraints on ACT_RU_VARIABLE --
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_CASE_EXE
- foreign key (CASE_EXECUTION_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
--- create foreign key constraints on ACT_RU_TASK --
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_CASE_EXE
- foreign key (CASE_EXECUTION_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_CASE_DEF
- foreign key (CASE_DEF_ID_)
- references ACT_RE_CASE_DEF(ID_);
-
--- create foreign key constraints on ACT_RU_CASE_SENTRY_PART --
-alter table ACT_RU_CASE_SENTRY_PART
- add constraint ACT_FK_CASE_SENTRY_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_CASE_SENTRY_PART
- add constraint ACT_FK_CASE_SENTRY_CASE_EXEC
- foreign key (CASE_EXEC_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-create index ACT_IDX_CASE_DEF_TENANT_ID on ACT_RE_CASE_DEF(TENANT_ID_);
-create index ACT_IDX_CASE_EXEC_TENANT_ID on ACT_RU_CASE_EXECUTION(TENANT_ID_);
--- create decision definition table --
-create table ACT_RE_DECISION_DEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- DEC_REQ_ID_ varchar(64),
- DEC_REQ_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create decision requirements definition table --
-create table ACT_RE_DECISION_REQ_DEF (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) NOT NULL,
- VERSION_ integer NOT NULL,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-alter table ACT_RE_DECISION_DEF
- add constraint ACT_FK_DEC_REQ
- foreign key (DEC_REQ_ID_)
- references ACT_RE_DECISION_REQ_DEF(ID_);
-
-create index ACT_IDX_DEC_DEF_TENANT_ID on ACT_RE_DECISION_DEF(TENANT_ID_);
-create index ACT_IDX_DEC_DEF_REQ_ID on ACT_RE_DECISION_DEF(DEC_REQ_ID_);
-create index ACT_IDX_DEC_REQ_DEF_TENANT_ID on ACT_RE_DECISION_REQ_DEF(TENANT_ID_);
-create table ACT_HI_PROCINST (
- ID_ varchar(64) not null,
- PROC_INST_ID_ varchar(64) not null,
- BUSINESS_KEY_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64) not null,
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- START_USER_ID_ varchar(255),
- START_ACT_ID_ varchar(255),
- END_ACT_ID_ varchar(255),
- SUPER_PROCESS_INSTANCE_ID_ varchar(64),
- SUPER_CASE_INSTANCE_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- DELETE_REASON_ varchar(4000),
- TENANT_ID_ varchar(64),
- STATE_ varchar(255),
- primary key (ID_),
- unique (PROC_INST_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_ACTINST (
- ID_ varchar(64) not null,
- PARENT_ACT_INST_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64) not null,
- PROC_INST_ID_ varchar(64) not null,
- EXECUTION_ID_ varchar(64) not null,
- ACT_ID_ varchar(255) not null,
- TASK_ID_ varchar(64),
- CALL_PROC_INST_ID_ varchar(64),
- CALL_CASE_INST_ID_ varchar(64),
- ACT_NAME_ varchar(255),
- ACT_TYPE_ varchar(255) not null,
- ASSIGNEE_ varchar(64),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- ACT_INST_STATE_ integer,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_TASKINST (
- ID_ varchar(64) not null,
- TASK_DEF_KEY_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- NAME_ varchar(255),
- PARENT_TASK_ID_ varchar(64),
- DESCRIPTION_ varchar(4000),
- OWNER_ varchar(255),
- ASSIGNEE_ varchar(255),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- DELETE_REASON_ varchar(4000),
- PRIORITY_ integer,
- DUE_DATE_ datetime(3),
- FOLLOW_UP_DATE_ datetime(3),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_VARINST (
- ID_ varchar(64) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- NAME_ varchar(255) not null,
- VAR_TYPE_ varchar(100),
- REV_ integer,
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_DETAIL (
- ID_ varchar(64) not null,
- TYPE_ varchar(255) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- VAR_INST_ID_ varchar(64),
- NAME_ varchar(255) not null,
- VAR_TYPE_ varchar(255),
- REV_ integer,
- TIME_ datetime(3) not null,
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- OPERATION_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_IDENTITYLINK (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- TYPE_ varchar(255),
- USER_ID_ varchar(255),
- GROUP_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- OPERATION_TYPE_ varchar(64),
- ASSIGNER_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_COMMENT (
- ID_ varchar(64) not null,
- TYPE_ varchar(255),
- TIME_ datetime(3) not null,
- USER_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- ACTION_ varchar(255),
- MESSAGE_ varchar(4000),
- FULL_MSG_ LONGBLOB,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_ATTACHMENT (
- ID_ varchar(64) not null,
- REV_ integer,
- USER_ID_ varchar(255),
- NAME_ varchar(255),
- DESCRIPTION_ varchar(4000),
- TYPE_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- URL_ varchar(4000),
- CONTENT_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_OP_LOG (
- ID_ varchar(64) not null,
- DEPLOYMENT_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- JOB_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- BATCH_ID_ varchar(64),
- USER_ID_ varchar(255),
- TIMESTAMP_ timestamp(3) not null,
- OPERATION_TYPE_ varchar(64),
- OPERATION_ID_ varchar(64),
- ENTITY_TYPE_ varchar(30),
- PROPERTY_ varchar(64),
- ORG_VALUE_ varchar(4000),
- NEW_VALUE_ varchar(4000),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_INCIDENT (
- ID_ varchar(64) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CREATE_TIME_ timestamp(3) not null,
- END_TIME_ timestamp(3) null,
- INCIDENT_MSG_ varchar(4000),
- INCIDENT_TYPE_ varchar(255) not null,
- ACTIVITY_ID_ varchar(255),
- CAUSE_INCIDENT_ID_ varchar(64),
- ROOT_CAUSE_INCIDENT_ID_ varchar(64),
- CONFIGURATION_ varchar(255),
- INCIDENT_STATE_ integer,
- TENANT_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_JOB_LOG (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- JOB_ID_ varchar(64) not null,
- JOB_DUEDATE_ timestamp(3) NULL,
- JOB_RETRIES_ integer,
- JOB_PRIORITY_ bigint NOT NULL DEFAULT 0,
- JOB_EXCEPTION_MSG_ varchar(4000),
- JOB_EXCEPTION_STACK_ID_ varchar(64),
- JOB_STATE_ integer,
- JOB_DEF_ID_ varchar(64),
- JOB_DEF_TYPE_ varchar(255),
- JOB_DEF_CONFIGURATION_ varchar(255),
- ACT_ID_ varchar(255),
- EXECUTION_ID_ varchar(64),
- PROCESS_INSTANCE_ID_ varchar(64),
- PROCESS_DEF_ID_ varchar(64),
- PROCESS_DEF_KEY_ varchar(255),
- DEPLOYMENT_ID_ varchar(64),
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_BATCH (
- ID_ varchar(64) not null,
- TYPE_ varchar(255),
- TOTAL_JOBS_ integer,
- JOBS_PER_SEED_ integer,
- INVOCATIONS_PER_JOB_ integer,
- SEED_JOB_DEF_ID_ varchar(64),
- MONITOR_JOB_DEF_ID_ varchar(64),
- BATCH_JOB_DEF_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_EXT_TASK_LOG (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- EXT_TASK_ID_ varchar(64) not null,
- RETRIES_ integer,
- TOPIC_NAME_ varchar(255),
- WORKER_ID_ varchar(255),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- ERROR_MSG_ varchar(4000),
- ERROR_DETAILS_ID_ varchar(64),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- STATE_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_HI_PRO_INST_END on ACT_HI_PROCINST(END_TIME_);
-create index ACT_IDX_HI_PRO_I_BUSKEY on ACT_HI_PROCINST(BUSINESS_KEY_);
-create index ACT_IDX_HI_PRO_INST_TENANT_ID on ACT_HI_PROCINST(TENANT_ID_);
-create index ACT_IDX_HI_PRO_INST_PROC_DEF_KEY on ACT_HI_PROCINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_ACT_INST_START on ACT_HI_ACTINST(START_TIME_);
-create index ACT_IDX_HI_ACT_INST_END on ACT_HI_ACTINST(END_TIME_);
-create index ACT_IDX_HI_ACT_INST_PROCINST on ACT_HI_ACTINST(PROC_INST_ID_, ACT_ID_);
-create index ACT_IDX_HI_ACT_INST_COMP on ACT_HI_ACTINST(EXECUTION_ID_, ACT_ID_, END_TIME_, ID_);
-create index ACT_IDX_HI_ACT_INST_STATS on ACT_HI_ACTINST(PROC_DEF_ID_, ACT_ID_, END_TIME_, ACT_INST_STATE_);
-create index ACT_IDX_HI_ACT_INST_TENANT_ID on ACT_HI_ACTINST(TENANT_ID_);
-create index ACT_IDX_HI_ACT_INST_PROC_DEF_KEY on ACT_HI_ACTINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_TASK_INST_TENANT_ID on ACT_HI_TASKINST(TENANT_ID_);
-create index ACT_IDX_HI_TASK_INST_PROC_DEF_KEY on ACT_HI_TASKINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_DETAIL_PROC_INST on ACT_HI_DETAIL(PROC_INST_ID_);
-create index ACT_IDX_HI_DETAIL_ACT_INST on ACT_HI_DETAIL(ACT_INST_ID_);
-create index ACT_IDX_HI_DETAIL_CASE_INST on ACT_HI_DETAIL(CASE_INST_ID_);
-create index ACT_IDX_HI_DETAIL_CASE_EXEC on ACT_HI_DETAIL(CASE_EXECUTION_ID_);
-create index ACT_IDX_HI_DETAIL_TIME on ACT_HI_DETAIL(TIME_);
-create index ACT_IDX_HI_DETAIL_NAME on ACT_HI_DETAIL(NAME_);
-create index ACT_IDX_HI_DETAIL_TASK_ID on ACT_HI_DETAIL(TASK_ID_);
-create index ACT_IDX_HI_DETAIL_TENANT_ID on ACT_HI_DETAIL(TENANT_ID_);
-create index ACT_IDX_HI_DETAIL_PROC_DEF_KEY on ACT_HI_DETAIL(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_IDENT_LNK_USER on ACT_HI_IDENTITYLINK(USER_ID_);
-create index ACT_IDX_HI_IDENT_LNK_GROUP on ACT_HI_IDENTITYLINK(GROUP_ID_);
-create index ACT_IDX_HI_IDENT_LNK_TENANT_ID on ACT_HI_IDENTITYLINK(TENANT_ID_);
-create index ACT_IDX_HI_IDENT_LNK_PROC_DEF_KEY on ACT_HI_IDENTITYLINK(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
-create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
-create index ACT_IDX_HI_CASEVAR_CASE_INST on ACT_HI_VARINST(CASE_INST_ID_);
-create index ACT_IDX_HI_VAR_INST_TENANT_ID on ACT_HI_VARINST(TENANT_ID_);
-create index ACT_IDX_HI_VAR_INST_PROC_DEF_KEY on ACT_HI_VARINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_INCIDENT_TENANT_ID on ACT_HI_INCIDENT(TENANT_ID_);
-create index ACT_IDX_HI_INCIDENT_PROC_DEF_KEY on ACT_HI_INCIDENT(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_JOB_LOG_PROCINST on ACT_HI_JOB_LOG(PROCESS_INSTANCE_ID_);
-create index ACT_IDX_HI_JOB_LOG_PROCDEF on ACT_HI_JOB_LOG(PROCESS_DEF_ID_);
-create index ACT_IDX_HI_JOB_LOG_TENANT_ID on ACT_HI_JOB_LOG(TENANT_ID_);
-create index ACT_IDX_HI_JOB_LOG_JOB_DEF_ID on ACT_HI_JOB_LOG(JOB_DEF_ID_);
-create index ACT_IDX_HI_JOB_LOG_PROC_DEF_KEY on ACT_HI_JOB_LOG(PROCESS_DEF_KEY_);
-
-create index ACT_HI_EXT_TASK_LOG_PROCINST on ACT_HI_EXT_TASK_LOG(PROC_INST_ID_);
-create index ACT_HI_EXT_TASK_LOG_PROCDEF on ACT_HI_EXT_TASK_LOG(PROC_DEF_ID_);
-create index ACT_HI_EXT_TASK_LOG_PROC_DEF_KEY on ACT_HI_EXT_TASK_LOG(PROC_DEF_KEY_);
-create index ACT_HI_EXT_TASK_LOG_TENANT_ID on ACT_HI_EXT_TASK_LOG(TENANT_ID_);
-
-create index ACT_IDX_HI_OP_LOG_PROCINST on ACT_HI_OP_LOG(PROC_INST_ID_);
-create index ACT_IDX_HI_OP_LOG_PROCDEF on ACT_HI_OP_LOG(PROC_DEF_ID_);
-create table ACT_HI_CASEINST (
- ID_ varchar(64) not null,
- CASE_INST_ID_ varchar(64) not null,
- BUSINESS_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64) not null,
- CREATE_TIME_ datetime(3) not null,
- CLOSE_TIME_ datetime(3),
- DURATION_ bigint,
- STATE_ integer,
- CREATE_USER_ID_ varchar(255),
- SUPER_CASE_INSTANCE_ID_ varchar(64),
- SUPER_PROCESS_INSTANCE_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_),
- unique (CASE_INST_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_CASEACTINST (
- ID_ varchar(64) not null,
- PARENT_ACT_INST_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64) not null,
- CASE_INST_ID_ varchar(64) not null,
- CASE_ACT_ID_ varchar(255) not null,
- TASK_ID_ varchar(64),
- CALL_PROC_INST_ID_ varchar(64),
- CALL_CASE_INST_ID_ varchar(64),
- CASE_ACT_NAME_ varchar(255),
- CASE_ACT_TYPE_ varchar(255),
- CREATE_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- STATE_ integer,
- REQUIRED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_HI_CAS_I_CLOSE on ACT_HI_CASEINST(CLOSE_TIME_);
-create index ACT_IDX_HI_CAS_I_BUSKEY on ACT_HI_CASEINST(BUSINESS_KEY_);
-create index ACT_IDX_HI_CAS_I_TENANT_ID on ACT_HI_CASEINST(TENANT_ID_);
-create index ACT_IDX_HI_CAS_A_I_CREATE on ACT_HI_CASEACTINST(CREATE_TIME_);
-create index ACT_IDX_HI_CAS_A_I_END on ACT_HI_CASEACTINST(END_TIME_);
-create index ACT_IDX_HI_CAS_A_I_COMP on ACT_HI_CASEACTINST(CASE_ACT_ID_, END_TIME_, ID_);
-create index ACT_IDX_HI_CAS_A_I_CASEINST on ACT_HI_CASEACTINST(CASE_INST_ID_, CASE_ACT_ID_);
-create index ACT_IDX_HI_CAS_A_I_TENANT_ID on ACT_HI_CASEACTINST(TENANT_ID_);
--- create history decision instance table --
-create table ACT_HI_DECINST (
- ID_ varchar(64) NOT NULL,
- DEC_DEF_ID_ varchar(64) NOT NULL,
- DEC_DEF_KEY_ varchar(255) NOT NULL,
- DEC_DEF_NAME_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- ACT_ID_ varchar(255),
- EVAL_TIME_ datetime(3) not null,
- COLLECT_VALUE_ double,
- USER_ID_ varchar(255),
- ROOT_DEC_INST_ID_ varchar(64),
- DEC_REQ_ID_ varchar(64),
- DEC_REQ_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create history decision input table --
-create table ACT_HI_DEC_IN (
- ID_ varchar(64) NOT NULL,
- DEC_INST_ID_ varchar(64) NOT NULL,
- CLAUSE_ID_ varchar(64),
- CLAUSE_NAME_ varchar(255),
- VAR_TYPE_ varchar(100),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create history decision output table --
-create table ACT_HI_DEC_OUT (
- ID_ varchar(64) NOT NULL,
- DEC_INST_ID_ varchar(64) NOT NULL,
- CLAUSE_ID_ varchar(64),
- CLAUSE_NAME_ varchar(255),
- RULE_ID_ varchar(64),
- RULE_ORDER_ integer,
- VAR_NAME_ varchar(255),
- VAR_TYPE_ varchar(100),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-
-create index ACT_IDX_HI_DEC_INST_ID on ACT_HI_DECINST(DEC_DEF_ID_);
-create index ACT_IDX_HI_DEC_INST_KEY on ACT_HI_DECINST(DEC_DEF_KEY_);
-create index ACT_IDX_HI_DEC_INST_PI on ACT_HI_DECINST(PROC_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_CI on ACT_HI_DECINST(CASE_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_ACT on ACT_HI_DECINST(ACT_ID_);
-create index ACT_IDX_HI_DEC_INST_ACT_INST on ACT_HI_DECINST(ACT_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_TIME on ACT_HI_DECINST(EVAL_TIME_);
-create index ACT_IDX_HI_DEC_INST_TENANT_ID on ACT_HI_DECINST(TENANT_ID_);
-create index ACT_IDX_HI_DEC_INST_ROOT_ID on ACT_HI_DECINST(ROOT_DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_REQ_ID on ACT_HI_DECINST(DEC_REQ_ID_);
-create index ACT_IDX_HI_DEC_INST_REQ_KEY on ACT_HI_DECINST(DEC_REQ_KEY_);
-
-
-create index ACT_IDX_HI_DEC_IN_INST on ACT_HI_DEC_IN(DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_IN_CLAUSE on ACT_HI_DEC_IN(DEC_INST_ID_, CLAUSE_ID_);
-
-create index ACT_IDX_HI_DEC_OUT_INST on ACT_HI_DEC_OUT(DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_OUT_RULE on ACT_HI_DEC_OUT(RULE_ORDER_, CLAUSE_ID_);
-
-
--- mariadb identity:
-
-create table ACT_ID_GROUP (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- TYPE_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_MEMBERSHIP (
- USER_ID_ varchar(64),
- GROUP_ID_ varchar(64),
- primary key (USER_ID_, GROUP_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_USER (
- ID_ varchar(64),
- REV_ integer,
- FIRST_ varchar(255),
- LAST_ varchar(255),
- EMAIL_ varchar(255),
- PWD_ varchar(255),
- SALT_ varchar(255),
- PICTURE_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_INFO (
- ID_ varchar(64),
- REV_ integer,
- USER_ID_ varchar(64),
- TYPE_ varchar(64),
- KEY_ varchar(255),
- VALUE_ varchar(255),
- PASSWORD_ LONGBLOB,
- PARENT_ID_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_TENANT (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_TENANT_MEMBER (
- ID_ varchar(64) not null,
- TENANT_ID_ varchar(64) not null,
- USER_ID_ varchar(64),
- GROUP_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-alter table ACT_ID_MEMBERSHIP
- add constraint ACT_FK_MEMB_GROUP
- foreign key (GROUP_ID_)
- references ACT_ID_GROUP (ID_);
-
-alter table ACT_ID_MEMBERSHIP
- add constraint ACT_FK_MEMB_USER
- foreign key (USER_ID_)
- references ACT_ID_USER (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_UNIQ_TENANT_MEMB_USER
- unique (TENANT_ID_, USER_ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_UNIQ_TENANT_MEMB_GROUP
- unique (TENANT_ID_, GROUP_ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB
- foreign key (TENANT_ID_)
- references ACT_ID_TENANT (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB_USER
- foreign key (USER_ID_)
- references ACT_ID_USER (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB_GROUP
- foreign key (GROUP_ID_)
- references ACT_ID_GROUP (ID_);
-
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mysql_create_camunda_admin.sql b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mysql_create_camunda_admin.sql
deleted file mode 100644
index 3658c6c235..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mysql_create_camunda_admin.sql
+++ /dev/null
@@ -1,25 +0,0 @@
-USE camundabpmn;
-
-INSERT INTO `act_id_group` (`ID_`, `REV_`, `NAME_`, `TYPE_`) VALUES ('camunda-admin',1,'camunda BPM Administrators','SYSTEM');
-
-INSERT INTO `act_id_user` (`ID_`, `REV_`, `FIRST_`, `LAST_`, `EMAIL_`, `PWD_`, `SALT_`, `PICTURE_ID_`) VALUES ('admin',1,'admin','user','camundaadmin@onap.org','{SHA-512}n5jUw7fvXM9sZBcrIkLiAOCqiPHutaqEkbg6IQVQdylVP1im8SczBJf4f2xL7cvWwIAZjkcSSQzgFTsdaJSEiA==','ftTn4gNgMcq07wdSD0lEJQ==',NULL);
-
-INSERT INTO `act_id_membership` (`USER_ID_`, `GROUP_ID_`) VALUES ('admin','camunda-admin');
-
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b0e028-a3c6-11e7-b0ec-0242ac120003',1,1,NULL,'admin',1,'admin',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b525e9-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,2,'camunda-admin',2);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b8814a-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,0,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49baa42b-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,1,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49bd8a5c-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,2,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49bfd44d-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,3,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c1f72e-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,4,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c41a0f-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,5,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c77570-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,6,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49ca5ba1-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,7,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49cca592-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,8,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49ceef83-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,9,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d11264-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,10,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d38365-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,11,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d5a646-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,12,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d83e57-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,13,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49da3a28-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,14,'*',2147483647);
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Catalog-schema.sql b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Catalog-schema.sql
deleted file mode 100644
index ca002fbe6b..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Catalog-schema.sql
+++ /dev/null
@@ -1,462 +0,0 @@
-
- alter table HEAT_TEMPLATE_PARAMS
- drop
- foreign key FK_p3ol1xcvp831glqohrlu6o07o;
-
- alter table MODEL_RECIPE
- drop
- foreign key FK_c23r0puyqug6n44jg39dutm1c;
-
- alter table SERVICE
- drop
- foreign key FK_l3qy594u2xr1tfpmma3uigsna;
-
- alter table SERVICE_RECIPE
- drop
- foreign key FK_i3r1b8j6e7dg9hkp49evnnm5y;
-
- alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS
- drop
- foreign key FK_kiddaay6cfe0aob1f1jaio1bb;
-
- alter table VF_MODULE
- drop
- foreign key FK_12jptc9it7gs3pru08skobxxc;
-
- alter table VNF_RESOURCE_CUSTOMIZATION
- drop
- foreign key FK_iff1ayhb1hrp5jhea3vvikuni;
-
- drop table if exists ALLOTTED_RESOURCE;
-
- drop table if exists ALLOTTED_RESOURCE_CUSTOMIZATION;
-
- drop table if exists HEAT_ENVIRONMENT;
-
- drop table if exists HEAT_FILES;
-
- drop table if exists HEAT_NESTED_TEMPLATE;
-
- drop table if exists HEAT_TEMPLATE;
-
- drop table if exists HEAT_TEMPLATE_PARAMS;
-
- drop table if exists MODEL;
-
- drop table if exists MODEL_RECIPE;
-
- drop table if exists NETWORK_RECIPE;
-
- drop table if exists NETWORK_RESOURCE;
-
- drop table if exists NETWORK_RESOURCE_CUSTOMIZATION;
-
- drop table if exists SERVICE;
-
- drop table if exists SERVICE_RECIPE;
-
- drop table if exists SERVICE_TO_ALLOTTED_RESOURCES;
-
- drop table if exists SERVICE_TO_NETWORKS;
-
- drop table if exists SERVICE_TO_RESOURCE_CUSTOMIZATIONS;
-
- drop table if exists TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP;
-
- drop table if exists TOSCA_CSAR;
-
- drop table if exists VF_MODULE;
-
- drop table if exists VF_MODULE_CUSTOMIZATION;
-
- drop table if exists VF_MODULE_TO_HEAT_FILES;
-
- drop table if exists VNF_COMPONENTS;
-
- drop table if exists VNF_COMPONENTS_RECIPE;
-
- drop table if exists VNF_RECIPE;
-
- drop table if exists VNF_RESOURCE;
-
- drop table if exists VNF_RESOURCE_CUSTOMIZATION;
-
- drop table if exists VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM;
-
- create table ALLOTTED_RESOURCE (
- MODEL_UUID varchar(255) not null,
- MODEL_INVARIANT_UUID varchar(255),
- MODEL_VERSION varchar(255),
- MODEL_NAME varchar(255),
- TOSCA_NODE_TYPE varchar(255),
- SUBCATEGORY varchar(255),
- DESCRIPTION varchar(255),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table ALLOTTED_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(255),
- AR_MODEL_UUID varchar(255),
- PROVIDING_SERVICE_MODEL_INVARIANT_UUID varchar(255),
- TARGET_NETWORK_ROLE varchar(255),
- NF_FUNCTION varchar(255),
- NF_TYPE varchar(255),
- NF_ROLE varchar(255),
- NF_NAMING_CODE varchar(255),
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table HEAT_ENVIRONMENT (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(100) not null,
- VERSION varchar(20) not null,
- DESCRIPTION varchar(1200),
- BODY longtext not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD',
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_FILES (
- ARTIFACT_UUID varchar(255) not null,
- DESCRIPTION varchar(255),
- NAME varchar(255),
- VERSION varchar(255),
- BODY longtext,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(255),
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_NESTED_TEMPLATE (
- PARENT_HEAT_TEMPLATE_UUID varchar(200) not null,
- CHILD_HEAT_TEMPLATE_UUID varchar(200) not null,
- PROVIDER_RESOURCE_FILE varchar(100),
- primary key (PARENT_HEAT_TEMPLATE_UUID, CHILD_HEAT_TEMPLATE_UUID)
- );
-
- create table HEAT_TEMPLATE (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(200) not null,
- VERSION varchar(20) not null,
- BODY longtext not null,
- TIMEOUT_MINUTES integer,
- DESCRIPTION varchar(1200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD' not null,
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_TEMPLATE_PARAMS (
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(255) not null,
- PARAM_NAME varchar(255) not null,
- IS_REQUIRED bit not null,
- PARAM_TYPE varchar(20),
- PARAM_ALIAS varchar(45),
- primary key (HEAT_TEMPLATE_ARTIFACT_UUID, PARAM_NAME)
- );
-
- create table MODEL (
- id integer not null auto_increment,
- MODEL_TYPE varchar(20) not null,
- MODEL_VERSION_ID varchar(40) not null,
- MODEL_INVARIANT_ID varchar(40),
- MODEL_NAME varchar(40) not null,
- MODEL_VERSION varchar(20),
- MODEL_CUSTOMIZATION_ID varchar(40),
- MODEL_CUSTOMIZATION_NAME varchar(40),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table MODEL_RECIPE (
- id integer not null auto_increment,
- MODEL_ID integer not null,
- ACTION varchar(20) not null,
- SCHEMA_VERSION varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- MODEL_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table NETWORK_RECIPE (
- id integer not null auto_increment,
- MODEL_NAME varchar(20) not null,
- ACTION varchar(20) not null,
- VERSION_STR varchar(20) not null,
- SERVICE_TYPE varchar(45),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- NETWORK_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table NETWORK_RESOURCE (
- MODEL_UUID varchar(200) not null,
- MODEL_NAME varchar(200) not null,
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20),
- TOSCA_NODE_TYPE varchar(200),
- NEUTRON_NETWORK_TYPE varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_MODE varchar(20),
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- AIC_VERSION_MIN varchar(20) default 2.5 not null,
- AIC_VERSION_MAX varchar(20) default 2.5,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table NETWORK_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- NETWORK_RESOURCE_MODEL_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(255),
- NETWORK_TECHNOLOGY varchar(255),
- NETWORK_TYPE varchar(255),
- NETWORK_SCOPE varchar(255),
- NETWORK_ROLE varchar(255),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE (
- MODEL_UUID varchar(200) not null,
- MODEL_NAME varchar(200) not null,
- MODEL_VERSION varchar(20) not null,
- DESCRIPTION varchar(1200),
- TOSCA_CSAR_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- MODEL_INVARIANT_UUID varchar(200) default 'MANUAL_RECORD' not null,
- SERVICE_TYPE varchar(20),
- SERVICE_ROLE varchar(20),
- primary key (MODEL_UUID)
- );
-
- create table SERVICE_RECIPE (
- id integer not null auto_increment,
- SERVICE_MODEL_UUID varchar(200) not null,
- ACTION varchar(40) not null,
- ORCHESTRATION_URI varchar(256) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- VERSION_STR varchar(20),
- DESCRIPTION varchar(1200),
- SERVICE_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- SERVICE_TIMEOUT_INTERIM integer,
- primary key (id)
- );
-
- create table SERVICE_TO_ALLOTTED_RESOURCES (
- SERVICE_MODEL_UUID varchar(200) not null,
- AR_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SERVICE_MODEL_UUID, AR_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE_TO_NETWORKS (
- SERVICE_MODEL_UUID varchar(200) not null,
- NETWORK_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SERVICE_MODEL_UUID, NETWORK_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE_TO_RESOURCE_CUSTOMIZATIONS (
- MODEL_TYPE varchar(20) not null,
- RESOURCE_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- SERVICE_MODEL_UUID varchar(200) not null,
- primary key (MODEL_TYPE, RESOURCE_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP (
- NETWORK_RESOURCE_MODEL_NAME varchar(200) not null,
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- AIC_VERSION_MIN varchar(20) not null,
- AIC_VERSION_MAX varchar(20),
- primary key (NETWORK_RESOURCE_MODEL_NAME)
- );
-
- create table TOSCA_CSAR (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(200) not null,
- VERSION varchar(20) not null,
- ARTIFACT_CHECKSUM varchar(200) not null,
- URL varchar(200) not null,
- DESCRIPTION varchar(1200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (ARTIFACT_UUID)
- );
-
- create table VF_MODULE (
- MODEL_UUID varchar(200) not null,
- VNF_RESOURCE_MODEL_UUID varchar(200),
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20) not null,
- MODEL_NAME varchar(200) not null,
- DESCRIPTION varchar(1200),
- IS_BASE integer not null,
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- VOL_HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table VF_MODULE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- VF_MODULE_MODEL_UUID varchar(200) not null,
- VOL_ENVIRONMENT_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- HEAT_ENVIRONMENT_ARTIFACT_UUID varchar(200),
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- INITIAL_COUNT integer,
- AVAILABILITY_ZONE_COUNT integer,
- LABEL varchar(200),
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table VF_MODULE_TO_HEAT_FILES (
- VF_MODULE_MODEL_UUID varchar(200) not null,
- HEAT_FILES_ARTIFACT_UUID varchar(200) not null,
- primary key (VF_MODULE_MODEL_UUID, HEAT_FILES_ARTIFACT_UUID)
- );
-
- create table VNF_COMPONENTS (
- VNF_ID integer not null,
- COMPONENT_TYPE varchar(20) not null,
- HEAT_TEMPLATE_ID integer,
- HEAT_ENVIRONMENT_ID integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (VNF_ID, COMPONENT_TYPE)
- );
-
- create table VNF_COMPONENTS_RECIPE (
- id integer not null auto_increment,
- VNF_TYPE varchar(200),
- VF_MODULE_MODEL_UUID varchar(100),
- VNF_COMPONENT_TYPE varchar(45) not null,
- ACTION varchar(20) not null,
- SERVICE_TYPE varchar(45),
- VERSION varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- VNF_COMPONENT_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table VNF_RECIPE (
- id integer not null auto_increment,
- VF_MODULE_ID varchar(100),
- ACTION varchar(20) not null,
- VERSION_STR varchar(20) not null,
- VNF_TYPE varchar(200),
- SERVICE_TYPE varchar(45) default null,
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- VNF_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table VNF_RESOURCE (
- MODEL_UUID varchar(200) not null,
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20) not null,
- MODEL_NAME varchar(200),
- TOSCA_NODE_TYPE varchar(200),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_MODE varchar(20) not null,
- AIC_VERSION_MIN varchar(20),
- AIC_VERSION_MAX varchar(20),
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table VNF_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(200) not null,
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- AVAILABILITY_ZONE_MAX_COUNT integer,
- NF_FUNCTION varchar(200),
- NF_TYPE varchar(200),
- NF_ROLE varchar(200),
- NF_NAMING_CODE varchar(200),
- VNF_RESOURCE_MODEL_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM (
- VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID, VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID)
- );
-
- alter table MODEL
- add constraint UK_rra00f1rk6eyy7g00k9raxh2v unique (MODEL_TYPE, MODEL_VERSION_ID);
-
- alter table MODEL_RECIPE
- add constraint UK_b4g8j9wtqrkxfycyi3ursk7gb unique (MODEL_ID, ACTION);
-
- alter table NETWORK_RECIPE
- add constraint UK_pbsa8i44m8p10f9529jdgfuk9 unique (MODEL_NAME, ACTION, VERSION_STR);
-
- alter table SERVICE_RECIPE
- add constraint UK_2lr377dpqnvl5aqlp5dtj2fcp unique (SERVICE_MODEL_UUID, ACTION);
-
- alter table VNF_COMPONENTS_RECIPE
- add constraint UK_g3je95aaxxiuest25f0qoy2u8 unique (VNF_TYPE, VF_MODULE_MODEL_UUID, VNF_COMPONENT_TYPE, ACTION, SERVICE_TYPE, VERSION);
-
- alter table VNF_RECIPE
- add constraint UK_f3tvqau498vrifq3cr8qnigkr unique (VF_MODULE_ID, ACTION, VERSION_STR);
-
- alter table HEAT_TEMPLATE_PARAMS
- add constraint FK_p3ol1xcvp831glqohrlu6o07o
- foreign key (HEAT_TEMPLATE_ARTIFACT_UUID)
- references HEAT_TEMPLATE (ARTIFACT_UUID);
-
- alter table MODEL_RECIPE
- add constraint FK_c23r0puyqug6n44jg39dutm1c
- foreign key (MODEL_ID)
- references MODEL (id);
-
- alter table SERVICE
- add constraint FK_l3qy594u2xr1tfpmma3uigsna
- foreign key (TOSCA_CSAR_ARTIFACT_UUID)
- references TOSCA_CSAR (ARTIFACT_UUID);
-
- alter table SERVICE_RECIPE
- add constraint FK_i3r1b8j6e7dg9hkp49evnnm5y
- foreign key (SERVICE_MODEL_UUID)
- references SERVICE (MODEL_UUID);
-
- alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS
- add constraint FK_kiddaay6cfe0aob1f1jaio1bb
- foreign key (SERVICE_MODEL_UUID)
- references SERVICE (MODEL_UUID);
-
- alter table VF_MODULE
- add constraint FK_12jptc9it7gs3pru08skobxxc
- foreign key (VNF_RESOURCE_MODEL_UUID)
- references VNF_RESOURCE (MODEL_UUID);
-
- alter table VNF_RESOURCE_CUSTOMIZATION
- add constraint FK_iff1ayhb1hrp5jhea3vvikuni
- foreign key (VNF_RESOURCE_MODEL_UUID)
- references VNF_RESOURCE (MODEL_UUID);
diff --git a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Requests-schema.sql b/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Requests-schema.sql
deleted file mode 100644
index f64548e23d..0000000000
--- a/kubernetes/mso/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Requests-schema.sql
+++ /dev/null
@@ -1,84 +0,0 @@
-
- drop table if exists INFRA_ACTIVE_REQUESTS;
-
- drop table if exists SITE_STATUS;
-
- create table INFRA_ACTIVE_REQUESTS (
- REQUEST_ID varchar(45) not null,
- CLIENT_REQUEST_ID varchar(45),
- ACTION varchar(45) not null,
- REQUEST_STATUS varchar(20),
- STATUS_MESSAGE varchar(2000),
- PROGRESS bigint,
- START_TIME datetime,
- END_TIME datetime,
- SOURCE varchar(45),
- VNF_ID varchar(45),
- VNF_NAME varchar(80),
- VNF_TYPE varchar(200),
- SERVICE_TYPE varchar(45),
- AIC_NODE_CLLI varchar(11),
- TENANT_ID varchar(45),
- PROV_STATUS varchar(20),
- VNF_PARAMS longtext,
- VNF_OUTPUTS longtext,
- REQUEST_BODY longtext,
- RESPONSE_BODY longtext,
- LAST_MODIFIED_BY varchar(50),
- MODIFY_TIME datetime,
- REQUEST_TYPE varchar(20),
- VOLUME_GROUP_ID varchar(45),
- VOLUME_GROUP_NAME varchar(45),
- VF_MODULE_ID varchar(45),
- VF_MODULE_NAME varchar(200),
- VF_MODULE_MODEL_NAME varchar(200),
- AAI_SERVICE_ID varchar(50),
- AIC_CLOUD_REGION varchar(11),
- CALLBACK_URL varchar(200),
- CORRELATOR varchar(80),
- SERVICE_INSTANCE_ID varchar(45),
- SERVICE_INSTANCE_NAME varchar(80),
- REQUEST_SCOPE varchar(20),
- REQUEST_ACTION varchar(45) not null,
- NETWORK_ID varchar(45),
- NETWORK_NAME varchar(80),
- NETWORK_TYPE varchar(80),
- REQUESTOR_ID varchar(80),
- primary key (REQUEST_ID)
- );
-
- create table SITE_STATUS (
- SITE_NAME varchar(255) not null,
- STATUS bit,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SITE_NAME)
- );
- create table OPERATION_STATUS (
- SERVICE_ID varchar(255) not null,
- OPERATION_ID varchar(255) not null,
- SERVICE_NAME varchar(255),
- OPERATION_TYPE varchar(255),
- USER_ID varchar(255),
- RESULT varchar(255),
- OPERATION_CONTENT varchar(255),
- PROGRESS varchar(255),
- REASON varchar(255),
- OPERATE_AT datetime,
- FINISHED_AT datetime,
- primary key (SERVICE_ID,OPERATION_ID)
- );
- create table RESOURCE_OPERATION_STATUS (
- SERVICE_ID varchar(255) not null,
- OPERATION_ID varchar(255) not null,
- RESOURCE_TEMPLATE_UUID varchar(255) not null,
- OPER_TYPE varchar(255),
- RESOURCE_INSTANCE_ID varchar(255),
- JOB_ID varchar(255),
- STATUS varchar(255),
- PROGRESS varchar(255),
- ERROR_CODE varchar(255) ,
- STATUS_DESCRIPOTION varchar(255) ,
- primary key (SERVICE_ID,OPERATION_ID,RESOURCE_TEMPLATE_UUID)
- );
- alter table INFRA_ACTIVE_REQUESTS
- add constraint UK_bhu6w8p7wvur4pin0gjw2d5ak unique (CLIENT_REQUEST_ID);
diff --git a/kubernetes/mso/resources/config/mso/aai.crt b/kubernetes/mso/resources/config/mso/aai.crt
deleted file mode 100755
index d51c05606e..0000000000
--- a/kubernetes/mso/resources/config/mso/aai.crt
+++ /dev/null
@@ -1,66 +0,0 @@
-Bag Attributes
- friendlyName: aaiopenecomp
- localKeyID: 54 69 6D 65 20 31 35 31 30 30 33 33 31 37 31 38 39 32
-subject=/C=US/ST=NJ/L=Bedminister/O=ONAP/CN=aai.api.simpledemo.openecomp.org/emailAddress=aai-host@api.simpledemo.openecomp.org
-issuer=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Server CA X1/emailAddress=simpledemo@openecomp.org
------BEGIN CERTIFICATE-----
-MIIDyzCCArMCCQDrA8zzZKXznDANBgkqhkiG9w0BAQsFADCBrTELMAkGA1UEBhMC
-VVMxCzAJBgNVBAgMAk5KMRMwEQYDVQQHDApCZWRtaW5zdGVyMRIwEAYDVQQKDAlP
-cGVuRUNPTVAxEzARBgNVBAsMCnNpbXBsZWRlbW8xKjAoBgNVBAMMIU9wZW5FQ09N
-UCBzaW1wbGVkZW1vIFNlcnZlciBDQSBYMTEnMCUGCSqGSIb3DQEJARYYc2ltcGxl
-ZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE3MTEwMzIzNDUzNVoXDTE4MTIwNjIzNDUz
-NVowgaAxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOSjEUMBIGA1UEBwwLQmVkbWlu
-aXN0ZXIxDTALBgNVBAoMBE9OQVAxKTAnBgNVBAMMIGFhaS5hcGkuc2ltcGxlZGVt
-by5vcGVuZWNvbXAub3JnMTQwMgYJKoZIhvcNAQkBFiVhYWktaG9zdEBhcGkuc2lt
-cGxlZGVtby5vcGVuZWNvbXAub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
-CgKCAQEA6gFktbGZVt4o78kU6oeCdqx04yPNTd1qRmJ06CD87fgrIDCTXVC+PE7R
-hHd1V71aNnoElBzn+mwetn4qG4T9IqAJvFIXxrzLpS7WlKBxStFhe4GNXl+RDqWc
-UM+47+s32TwZ3czQrhMVR9VNENUHo2d6XylGaUDcVgrMYWbFYWfmIJ4tO1latW9n
-h+perB0nNBxNDK9nYtjLHQk6ukTmONSnldvCgu/TFX5C34qB49cI0LmCf5Lwk9tv
-8dmTZ6Um8A0EbQen+uPaaHeEXm/EtFy0FSVzoKmxuQS0g4JNhfnfNCHVDO7zGE+N
-pCb9VfUI2fXIZvjNBAemKN/b2i5d6QIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBh
-93eaeAw0aA4ukAPpuWIODxxAnZlFfDH4uzwnv6smDJzO1biRwQ5BBZfL8qSVozrp
-aDKeIPWP7fZvjl3mGfCp8mLkI6WkfXVcZy5IlJGDTnW+G8Cpohq910W/Ibp1J9zx
-Ki4IdgKx7FbSYLpgwH2g2EPshHXQX2qFdxYvnEH0PzJjYBKeyyHV3N2kNr6+kM3Q
-HpXXIiLNbNcqLT+9zOmuJszN8ILLV56vu8Clzwxld+ru0tiO2OJk2eT+mtw2PI1/
-jcYqEEdOIZycrQiytxXgvte7A9VFQP/1Tl22BBYrAW2BhyW67kopATeiSunK1FmO
-DLcT7mR+59F964RV9BJR
------END CERTIFICATE-----
-Bag Attributes
- friendlyName: root
- 2.16.840.1.113894.746875.1.1: <Unsupported tag 6>
-subject=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Server CA X1/emailAddress=simpledemo@openecomp.org
-issuer=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Root Certification Authority/emailAddress=simpledemo@openecomp.org
------BEGIN CERTIFICATE-----
-MIIFpTCCA42gAwIBAgIJAJqx8dKnCZZoMA0GCSqGSIb3DQEBCwUAMIG9MQswCQYD
-VQQGEwJVUzELMAkGA1UECAwCTkoxEzARBgNVBAcMCkJlZG1pbnN0ZXIxEjAQBgNV
-BAoMCU9wZW5FQ09NUDETMBEGA1UECwwKc2ltcGxlZGVtbzE6MDgGA1UEAwwxT3Bl
-bkVDT01QIHNpbXBsZWRlbW8gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEn
-MCUGCSqGSIb3DQEJARYYc2ltcGxlZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE2MTEy
-ODIxMTQyNloXDTIxMTEyNzIxMTQyNlowga0xCzAJBgNVBAYTAlVTMQswCQYDVQQI
-DAJOSjETMBEGA1UEBwwKQmVkbWluc3RlcjESMBAGA1UECgwJT3BlbkVDT01QMRMw
-EQYDVQQLDApzaW1wbGVkZW1vMSowKAYDVQQDDCFPcGVuRUNPTVAgc2ltcGxlZGVt
-byBTZXJ2ZXIgQ0EgWDExJzAlBgkqhkiG9w0BCQEWGHNpbXBsZWRlbW9Ab3BlbmVj
-b21wLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALr4rivKQuRk
-YNf5Ig40e1nqj6s6LB1vgMOYbKfRziOFpPcUpsHPOhusHowiUsrU1vdFSzPz6Ej7
-PjlmNSg2Qka8YCn9kd6QgM7U0KcPJvIucBp+qjifH3EvP0jgDPhDeVRYxzV454dv
-5kQ9uCpswJP7YAnX51dkWeH8nwPUoagt31bOl9LXENSrgxEThxdLYMJnQJWk2CmV
-otXM4tT1dxyJxFUrZ6uJCEAYw5VtlplqihHf8lHy+sWQavtsLz/4dc+sGeXSTfoI
-voKvoh3uZ5gEhGV8yfJxk1veX5y5/AxP80vQ+smWYjTnQL5QQ57y4bciez4XVBmQ
-SWimWtOi4e8CAwEAAaOBtTCBsjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
-AwIBhjAdBgNVHQ4EFgQUTqdsYgGNGubdJHq9tsaJhM9HE5wwcAYDVR0gBGkwZzBl
-BgRVHSAAMF0wWwYIKwYBBQUHAgIwTxpNSWYgeW91IHRydXN0IHRoaXMgY2VydCB0
-aGVuIHdlIGhhdmUgYSBicmlkZ2UgdGhhdCB5b3UgbWlnaHQgYmUgaW50ZXJlc3Rl
-ZCBpbi4wDQYJKoZIhvcNAQELBQADggIBAKNNlRqFuE/JgV1BHyYK0xoSXH4aZP/7
-IoHtDVcSaZAOOuFOUrwVMUbzRBebbb6RpFwt/X+NLFUGysd+XNLF7W7lzxKtmFNX
-n4OpNkBe0y5O7yurus8rERHzu3jiOSgVo+WzDlGpYSRnG3hI2qPWqD+Puzx/WwI8
-XUTuzEQQ3gUSyVFfXHpay3VpYmLZiLJ9WKY5SDw7Ie6Sxrju4Qm1HwnFY8wHZGcs
-2KMQzorJ1ZNQf523yUTghbT0rKaSFaD8zugPtI2ONfFG/QgrkQXo78opzPsHnHwa
-SxGSiAgeLbwAUCvPNl27zr6k6+7TcNjV0VUivAs0OG3VEAdgi7UWYB+30KfWwHwE
-zGmvd4IAGqIqlqLcSVArN5z8JK1B5nfjQn5UrclU1vK+dnuiKE2X4rKuBTRYRFR/
-km+mj4koYFPKFHndmJl1uv2OCJK9l5CSIuKWeI1qv8BASKqgNdoT/SKBXqxgYlCb
-o+j4IDjxrxChRO+e5vl9lA7INfRrbljCkUjfLRa+v2q9tWQ3+EQUwwnSrSfihh2T
-j0Tksr6b8dDsvMlCdOKG1B+JPcEXORSFKNXVTEfjqpJG8s16kFAocWt3S6xO0k1t
-qbQp+3tWQgW2TGnX0rMZzB6NGRNfWhlYmq2zHgXkiCIZ26Ztgt/LNbwEvN3+VlLo
-z/Rd+SKtlrfb
------END CERTIFICATE-----
diff --git a/kubernetes/mso/resources/config/mso/encryption.key b/kubernetes/mso/resources/config/mso/encryption.key
deleted file mode 100644
index eb52241e7f..0000000000
--- a/kubernetes/mso/resources/config/mso/encryption.key
+++ /dev/null
@@ -1 +0,0 @@
-aa3871669d893c7fb8abbcda31b88b4f
diff --git a/kubernetes/mso/resources/config/mso/jboss/standalone-full-ha-mso.xml b/kubernetes/mso/resources/config/mso/jboss/standalone-full-ha-mso.xml
deleted file mode 100644
index 86edeb386a..0000000000
--- a/kubernetes/mso/resources/config/mso/jboss/standalone-full-ha-mso.xml
+++ /dev/null
@@ -1,609 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-
-<server xmlns="urn:jboss:domain:4.2">
-
- <extensions>
- <extension module="org.jboss.as.clustering.infinispan"/>
- <extension module="org.jboss.as.clustering.jgroups"/>
- <extension module="org.jboss.as.connector"/>
- <extension module="org.jboss.as.deployment-scanner"/>
- <extension module="org.jboss.as.ee"/>
- <extension module="org.jboss.as.ejb3"/>
- <extension module="org.jboss.as.jaxrs"/>
- <extension module="org.jboss.as.jdr"/>
- <extension module="org.jboss.as.jmx"/>
- <extension module="org.jboss.as.jpa"/>
- <extension module="org.jboss.as.jsf"/>
- <extension module="org.jboss.as.jsr77"/>
- <extension module="org.jboss.as.logging"/>
- <extension module="org.jboss.as.mail"/>
- <extension module="org.jboss.as.modcluster"/>
- <extension module="org.jboss.as.naming"/>
- <extension module="org.jboss.as.pojo"/>
- <extension module="org.jboss.as.remoting"/>
- <extension module="org.jboss.as.sar"/>
- <extension module="org.jboss.as.security"/>
- <extension module="org.jboss.as.transactions"/>
- <extension module="org.jboss.as.webservices"/>
- <extension module="org.jboss.as.weld"/>
- <extension module="org.wildfly.extension.batch.jberet"/>
- <extension module="org.wildfly.extension.bean-validation"/>
- <extension module="org.wildfly.extension.clustering.singleton"/>
- <extension module="org.wildfly.extension.io"/>
- <extension module="org.wildfly.extension.messaging-activemq"/>
- <extension module="org.wildfly.extension.request-controller"/>
- <extension module="org.wildfly.extension.security.manager"/>
- <extension module="org.wildfly.extension.undertow"/>
- <extension module="org.wildfly.iiop-openjdk"/>
- </extensions>
-
-
- <management>
- <security-realms>
- <security-realm name="ManagementRealm">
- <authentication>
- <local default-user="$local" skip-group-loading="true"/>
- <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/>
- </authentication>
- <authorization map-groups-to-roles="false">
- <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/>
- </authorization>
- </security-realm>
- <security-realm name="ApplicationRealm">
- <server-identities>
- <ssl>
- <keystore path="application.keystore" relative-to="jboss.server.config.dir" keystore-password="password" alias="server" key-password="password" generate-self-signed-certificate-host="localhost"/>
- </ssl>
- </server-identities>
- <authentication>
- <local default-user="$local" allowed-users="*" skip-group-loading="true"/>
- <properties path="application-users.properties" relative-to="jboss.server.config.dir"/>
- </authentication>
- <authorization>
- <properties path="application-roles.properties" relative-to="jboss.server.config.dir"/>
- </authorization>
- </security-realm>
- </security-realms>
- <audit-log>
- <formatters>
- <json-formatter name="json-formatter"/>
- </formatters>
- <handlers>
- <file-handler name="file" formatter="json-formatter" path="audit-log.log" relative-to="jboss.server.data.dir"/>
- </handlers>
- <logger log-boot="true" log-read-only="false" enabled="false">
- <handlers>
- <handler name="file"/>
- </handlers>
- </logger>
- </audit-log>
- <management-interfaces>
- <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true">
- <socket-binding http="management-http"/>
- </http-interface>
- </management-interfaces>
- <access-control provider="simple">
- <role-mapping>
- <role name="SuperUser">
- <include>
- <user name="$local"/>
- </include>
- </role>
- </role-mapping>
- </access-control>
- </management>
-
- <profile>
- <subsystem xmlns="urn:jboss:domain:logging:3.0">
- <console-handler name="CONSOLE">
- <level name="INFO"/>
- <formatter>
- <named-formatter name="COLOR-PATTERN"/>
- </formatter>
- </console-handler>
- <periodic-rotating-file-handler name="FILE" autoflush="true">
- <formatter>
- <named-formatter name="PATTERN"/>
- </formatter>
- <file relative-to="jboss.server.log.dir" path="server.log"/>
- <suffix value=".yyyy-MM-dd"/>
- <append value="true"/>
- </periodic-rotating-file-handler>
- <logger category="com.arjuna">
- <level name="WARN"/>
- </logger>
- <logger category="org.jboss.as.config">
- <level name="DEBUG"/>
- </logger>
- <logger category="sun.rmi">
- <level name="WARN"/>
- </logger>
- <root-logger>
- <level name="INFO"/>
- <handlers>
- <handler name="CONSOLE"/>
- <handler name="FILE"/>
- </handlers>
- </root-logger>
- <formatter name="PATTERN">
- <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
- </formatter>
- <formatter name="COLOR-PATTERN">
- <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
- </formatter>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:batch-jberet:1.0">
- <default-job-repository name="in-memory"/>
- <default-thread-pool name="batch"/>
- <job-repository name="in-memory">
- <in-memory/>
- </job-repository>
- <thread-pool name="batch">
- <max-threads count="10"/>
- <keepalive-time time="30" unit="seconds"/>
- </thread-pool>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:bean-validation:1.0"/>
- <subsystem xmlns="urn:jboss:domain:datasources:4.0">
- <datasources>
- <datasource jndi-name="java:jboss/datasources/mso-requests" pool-name="mso-requests" enabled="true" use-ccm="true">
- <connection-url>jdbc:mariadb://mso-mariadb.{{.Values.nsPrefix}}:3306/mso_requests?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
- <driver>mariadb</driver>
- <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
- <pool>
- <min-pool-size>10</min-pool-size>
- <max-pool-size>100</max-pool-size>
- <prefill>true</prefill>
- <use-strict-min>false</use-strict-min>
- <flush-strategy>FailingConnectionOnly</flush-strategy>
- </pool>
- <security>
- <user-name>mso</user-name>
- <password>mso123</password>
- </security>
- <validation>
- <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
- <validate-on-match>false</validate-on-match>
- <background-validation>true</background-validation>
- <background-validation-millis>20000</background-validation-millis>
- <use-fast-fail>true</use-fast-fail>
- <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
- </validation>
- <timeout>
- <idle-timeout-minutes>15</idle-timeout-minutes>
- <query-timeout>30</query-timeout>
- <allocation-retry>1</allocation-retry>
- <allocation-retry-wait-millis>3000</allocation-retry-wait-millis>
- </timeout>
- </datasource>
- <datasource jndi-name="java:jboss/datasources/mso-catalog" pool-name="mso-catalog" enabled="true" use-ccm="true">
- <connection-url>jdbc:mariadb://mso-mariadb.{{.Values.nsPrefix}}:3306/mso_catalog?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
- <driver>mariadb</driver>
- <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
- <pool>
- <min-pool-size>10</min-pool-size>
- <max-pool-size>100</max-pool-size>
- <prefill>true</prefill>
- <use-strict-min>false</use-strict-min>
- <flush-strategy>FailingConnectionOnly</flush-strategy>
- </pool>
- <security>
- <user-name>catalog</user-name>
- <password>catalog123</password>
- </security>
- <validation>
- <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
- <validate-on-match>false</validate-on-match>
- <background-validation>true</background-validation>
- <background-validation-millis>20000</background-validation-millis>
- <use-fast-fail>true</use-fast-fail>
- <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
- </validation>
- <timeout>
- <idle-timeout-minutes>15</idle-timeout-minutes>
- <query-timeout>30</query-timeout>
- <allocation-retry>1</allocation-retry>
- <allocation-retry-wait-millis>3000</allocation-retry-wait-millis>
- </timeout>
- </datasource>
- <datasource jta="true" jndi-name="java:jboss/datasources/ProcessEngine" pool-name="ProcessEngine" enabled="true" use-java-context="true" use-ccm="true">
- <connection-url>jdbc:mariadb://mso-mariadb.{{.Values.nsPrefix}}:3306/camundabpmn?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
- <driver>mariadb</driver>
- <new-connection-sql>set autocommit=1</new-connection-sql>
- <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
- <pool>
- <min-pool-size>10</min-pool-size>
- <max-pool-size>100</max-pool-size>
- <prefill>true</prefill>
- <use-strict-min>false</use-strict-min>
- <flush-strategy>FailingConnectionOnly</flush-strategy>
- </pool>
- <security>
- <user-name>camunda</user-name>
- <password>camunda123</password>
- </security>
- <validation>
- <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
- <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
- </validation>
- <statement>
- <prepared-statement-cache-size>32</prepared-statement-cache-size>
- <share-prepared-statements>true</share-prepared-statements>
- </statement>
- </datasource>
- <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
- <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
- <driver>h2</driver>
- <security>
- <user-name>sa</user-name>
- <password>sa</password>
- </security>
- </datasource>
- <drivers>
- <driver name="h2" module="com.h2database.h2">
- <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
- </driver>
- <driver name="mariadb" module="mariadb">
- <xa-datasource-class>org.mariadb.jdbc.MySQLDataSource</xa-datasource-class>
- </driver>
- </drivers>
- </datasources>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:deployment-scanner:2.0">
- <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:ee:4.0">
- <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement>
- <concurrent>
- <context-services>
- <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/>
- </context-services>
- <managed-thread-factories>
- <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/>
- </managed-thread-factories>
- <managed-executor-services>
- <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" keepalive-time="5000"/>
- </managed-executor-services>
- <managed-scheduled-executor-services>
- <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" keepalive-time="3000"/>
- </managed-scheduled-executor-services>
- </concurrent>
- <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:ejb3:4.0">
- <session-bean>
- <stateless>
- <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>
- </stateless>
- <stateful default-access-timeout="5000" cache-ref="distributable" passivation-disabled-cache-ref="simple"/>
- <singleton default-access-timeout="5000"/>
- </session-bean>
- <mdb>
- <resource-adapter-ref resource-adapter-name="${ejb.resource-adapter-name:activemq-ra.rar}"/>
- <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
- </mdb>
- <pools>
- <bean-instance-pools>
- <strict-max-pool name="slsb-strict-max-pool" derive-size="from-worker-pools" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
- <strict-max-pool name="mdb-strict-max-pool" derive-size="from-cpu-count" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
- </bean-instance-pools>
- </pools>
- <caches>
- <cache name="simple"/>
- <cache name="distributable" passivation-store-ref="infinispan" aliases="passivating clustered"/>
- </caches>
- <passivation-stores>
- <passivation-store name="infinispan" cache-container="ejb" max-size="10000"/>
- </passivation-stores>
- <async thread-pool-name="default"/>
- <timer-service thread-pool-name="default" default-data-store="default-file-store">
- <data-stores>
- <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/>
- </data-stores>
- </timer-service>
- <remote connector-ref="http-remoting-connector" thread-pool-name="default"/>
- <thread-pools>
- <thread-pool name="default">
- <max-threads count="10"/>
- <keepalive-time time="100" unit="milliseconds"/>
- </thread-pool>
- </thread-pools>
- <iiop enable-by-default="false" use-qualified-name="false"/>
- <default-security-domain value="other"/>
- <default-missing-method-permissions-deny-access value="true"/>
- <log-system-exceptions value="true"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:io:1.1">
- <worker name="default"/>
- <buffer-pool name="default"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:infinispan:4.0">
- <cache-container name="server" aliases="singleton cluster" default-cache="default" module="org.wildfly.clustering.server">
- <transport lock-timeout="60000"/>
- <replicated-cache name="default" mode="SYNC">
- <transaction mode="BATCH"/>
- </replicated-cache>
- </cache-container>
- <cache-container name="web" default-cache="dist" module="org.wildfly.clustering.web.infinispan">
- <transport lock-timeout="60000"/>
- <distributed-cache name="dist" mode="ASYNC" l1-lifespan="0" owners="2">
- <locking isolation="REPEATABLE_READ"/>
- <transaction mode="BATCH"/>
- <file-store/>
- </distributed-cache>
- <distributed-cache name="concurrent" mode="SYNC" l1-lifespan="0" owners="2">
- <file-store/>
- </distributed-cache>
- </cache-container>
- <cache-container name="ejb" aliases="sfsb" default-cache="dist" module="org.wildfly.clustering.ejb.infinispan">
- <transport lock-timeout="60000"/>
- <distributed-cache name="dist" mode="ASYNC" l1-lifespan="0" owners="2">
- <locking isolation="REPEATABLE_READ"/>
- <transaction mode="BATCH"/>
- <file-store/>
- </distributed-cache>
- </cache-container>
- <cache-container name="hibernate" default-cache="local-query" module="org.hibernate.infinispan">
- <transport lock-timeout="60000"/>
- <local-cache name="local-query">
- <eviction strategy="LRU" max-entries="10000"/>
- <expiration max-idle="100000"/>
- </local-cache>
- <invalidation-cache name="entity" mode="SYNC">
- <transaction mode="NON_XA"/>
- <eviction strategy="LRU" max-entries="10000"/>
- <expiration max-idle="100000"/>
- </invalidation-cache>
- <replicated-cache name="timestamps" mode="ASYNC"/>
- </cache-container>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:iiop-openjdk:1.0">
- <orb socket-binding="iiop" ssl-socket-binding="iiop-ssl"/>
- <initializers security="identity" transactions="spec"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>
- <subsystem xmlns="urn:jboss:domain:jca:4.0">
- <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>
- <bean-validation enabled="true"/>
- <default-workmanager>
- <short-running-threads>
- <core-threads count="50"/>
- <queue-length count="50"/>
- <max-threads count="50"/>
- <keepalive-time time="10" unit="seconds"/>
- </short-running-threads>
- <long-running-threads>
- <core-threads count="50"/>
- <queue-length count="50"/>
- <max-threads count="50"/>
- <keepalive-time time="10" unit="seconds"/>
- </long-running-threads>
- </default-workmanager>
- <cached-connection-manager/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>
- <subsystem xmlns="urn:jboss:domain:jgroups:4.0">
- <channels default="ee">
- <channel name="ee" stack="udp"/>
- </channels>
- <stacks>
- <stack name="udp">
- <transport type="UDP" socket-binding="jgroups-udp"/>
- <protocol type="PING"/>
- <protocol type="MERGE3"/>
- <protocol type="FD_SOCK" socket-binding="jgroups-udp-fd"/>
- <protocol type="FD_ALL"/>
- <protocol type="VERIFY_SUSPECT"/>
- <protocol type="pbcast.NAKACK2"/>
- <protocol type="UNICAST3"/>
- <protocol type="pbcast.STABLE"/>
- <protocol type="pbcast.GMS"/>
- <protocol type="UFC"/>
- <protocol type="MFC"/>
- <protocol type="FRAG2"/>
- </stack>
- <stack name="tcp">
- <transport type="TCP" socket-binding="jgroups-tcp"/>
- <protocol type="MPING" socket-binding="jgroups-mping"/>
- <protocol type="MERGE3"/>
- <protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>
- <protocol type="FD"/>
- <protocol type="VERIFY_SUSPECT"/>
- <protocol type="pbcast.NAKACK2"/>
- <protocol type="UNICAST3"/>
- <protocol type="pbcast.STABLE"/>
- <protocol type="pbcast.GMS"/>
- <protocol type="MFC"/>
- <protocol type="FRAG2"/>
- </stack>
- </stacks>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jmx:1.3">
- <expose-resolved-model/>
- <expose-expression-model/>
- <remoting-connector/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jpa:1.1">
- <jpa default-datasource="" default-extended-persistence-inheritance="DEEP"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:jsf:1.0"/>
- <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/>
- <subsystem xmlns="urn:jboss:domain:mail:2.0">
- <mail-session name="default" jndi-name="java:jboss/mail/Default">
- <smtp-server outbound-socket-binding-ref="mail-smtp"/>
- </mail-session>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:messaging-activemq:1.0">
- <server name="default">
- <cluster password="${jboss.messaging.cluster.password:CHANGE ME!!}"/>
- <security-setting name="#">
- <role name="guest" send="true" consume="true" create-non-durable-queue="true" delete-non-durable-queue="true"/>
- </security-setting>
- <address-setting name="#" dead-letter-address="jms.queue.DLQ" expiry-address="jms.queue.ExpiryQueue" max-size-bytes="10485760" page-size-bytes="2097152" message-counter-history-day-limit="10" redistribution-delay="1000"/>
- <http-connector name="http-connector" socket-binding="http" endpoint="http-acceptor"/>
- <http-connector name="http-connector-throughput" socket-binding="http" endpoint="http-acceptor-throughput">
- <param name="batch-delay" value="50"/>
- </http-connector>
- <in-vm-connector name="in-vm" server-id="0"/>
- <http-acceptor name="http-acceptor" http-listener="default"/>
- <http-acceptor name="http-acceptor-throughput" http-listener="default">
- <param name="batch-delay" value="50"/>
- <param name="direct-deliver" value="false"/>
- </http-acceptor>
- <in-vm-acceptor name="in-vm" server-id="0"/>
- <broadcast-group name="bg-group1" jgroups-channel="activemq-cluster" connectors="http-connector"/>
- <discovery-group name="dg-group1" jgroups-channel="activemq-cluster"/>
- <cluster-connection name="my-cluster" address="jms" connector-name="http-connector" discovery-group="dg-group1"/>
- <jms-queue name="ExpiryQueue" entries="java:/jms/queue/ExpiryQueue"/>
- <jms-queue name="DLQ" entries="java:/jms/queue/DLQ"/>
- <connection-factory name="InVmConnectionFactory" entries="java:/ConnectionFactory" connectors="in-vm"/>
- <connection-factory name="RemoteConnectionFactory" entries="java:jboss/exported/jms/RemoteConnectionFactory" connectors="http-connector" ha="true" block-on-acknowledge="true" reconnect-attempts="-1"/>
- <pooled-connection-factory name="activemq-ra" entries="java:/JmsXA java:jboss/DefaultJMSConnectionFactory" connectors="in-vm" transaction="xa"/>
- </server>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:modcluster:2.0">
- <mod-cluster-config advertise-socket="modcluster" connector="ajp">
- <dynamic-load-provider>
- <load-metric type="cpu"/>
- </dynamic-load-provider>
- </mod-cluster-config>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:naming:2.0">
- <remote-naming/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>
- <subsystem xmlns="urn:jboss:domain:remoting:3.0">
- <endpoint/>
- <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:resource-adapters:4.0"/>
- <subsystem xmlns="urn:jboss:domain:request-controller:1.0"/>
- <subsystem xmlns="urn:jboss:domain:sar:1.0"/>
- <subsystem xmlns="urn:jboss:domain:security-manager:1.0">
- <deployment-permissions>
- <maximum-set>
- <permission class="java.security.AllPermission"/>
- </maximum-set>
- </deployment-permissions>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:security:1.2">
- <security-domains>
- <security-domain name="other" cache-type="default">
- <authentication>
- <login-module code="Remoting" flag="optional">
- <module-option name="password-stacking" value="useFirstPass"/>
- </login-module>
- <login-module code="RealmDirect" flag="required">
- <module-option name="password-stacking" value="useFirstPass"/>
- </login-module>
- </authentication>
- </security-domain>
- <security-domain name="jboss-web-policy" cache-type="default">
- <authorization>
- <policy-module code="Delegating" flag="required"/>
- </authorization>
- </security-domain>
- <security-domain name="jboss-ejb-policy" cache-type="default">
- <authorization>
- <policy-module code="Delegating" flag="required"/>
- </authorization>
- </security-domain>
- <security-domain name="jaspitest" cache-type="default">
- <authentication-jaspi>
- <login-module-stack name="dummy">
- <login-module code="Dummy" flag="optional"/>
- </login-module-stack>
- <auth-module code="Dummy"/>
- </authentication-jaspi>
- </security-domain>
- </security-domains>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:singleton:1.0">
- <singleton-policies default="default">
- <singleton-policy name="default" cache-container="server">
- <simple-election-policy/>
- </singleton-policy>
- </singleton-policies>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:transactions:3.0">
- <core-environment>
- <process-id>
- <uuid/>
- </process-id>
- </core-environment>
- <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:undertow:3.1">
- <buffer-cache name="default"/>
- <server name="default-server">
- <ajp-listener name="ajp" socket-binding="ajp"/>
- <http-listener name="default" socket-binding="http" enable-http2="true"/>
- <https-listener name="https" socket-binding="https" security-realm="ApplicationRealm" enable-http2="true"/>
- <host name="default-host" alias="localhost">
- <location name="/" handler="welcome-content"/>
- <filter-ref name="server-header"/>
- <filter-ref name="x-powered-by-header"/>
- </host>
- </server>
- <servlet-container name="default">
- <jsp-config/>
- <websockets/>
- </servlet-container>
- <handlers>
- <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>
- </handlers>
- <filters>
- <response-header name="server-header" header-name="Server" header-value="WildFly/10"/>
- <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>
- </filters>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:webservices:2.0">
- <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>
- <endpoint-config name="Standard-Endpoint-Config"/>
- <endpoint-config name="Recording-Endpoint-Config">
- <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">
- <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>
- </pre-handler-chain>
- </endpoint-config>
- <client-config name="Standard-Client-Config"/>
- </subsystem>
- <subsystem xmlns="urn:jboss:domain:weld:3.0"/>
- </profile>
-
- <interfaces>
- <interface name="management">
- <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
- </interface>
- <interface name="public">
- <inet-address value="${jboss.bind.address:127.0.0.1}"/>
- </interface>
- <interface name="private">
- <inet-address value="${jboss.bind.address.private:127.0.0.1}"/>
- </interface>
- <interface name="unsecure">
- <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
- </interface>
- </interfaces>
-
- <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
- <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>
- <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/>
- <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>
- <socket-binding name="http" port="${jboss.http.port:8080}"/>
- <socket-binding name="https" port="${jboss.https.port:8443}"/>
- <socket-binding name="iiop" interface="unsecure" port="3528"/>
- <socket-binding name="iiop-ssl" interface="unsecure" port="3529"/>
- <socket-binding name="jgroups-mping" interface="private" port="0" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>
- <socket-binding name="jgroups-tcp" interface="private" port="7600"/>
- <socket-binding name="jgroups-tcp-fd" interface="private" port="57600"/>
- <socket-binding name="jgroups-udp" interface="private" port="55200" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45688"/>
- <socket-binding name="jgroups-udp-fd" interface="private" port="54200"/>
- <socket-binding name="modcluster" port="0" multicast-address="224.0.1.105" multicast-port="23364"/>
- <socket-binding name="txn-recovery-environment" port="4712"/>
- <socket-binding name="txn-status-manager" port="4713"/>
- <outbound-socket-binding name="mail-smtp">
- <remote-destination host="localhost" port="25"/>
- </outbound-socket-binding>
- </socket-binding-group>
-
-</server>
diff --git a/kubernetes/mso/resources/config/mso/mso-docker.json b/kubernetes/mso/resources/config/mso/mso-docker.json
deleted file mode 100755
index b2775590a6..0000000000
--- a/kubernetes/mso/resources/config/mso/mso-docker.json
+++ /dev/null
@@ -1,181 +0,0 @@
-{
- "name": "mso-docker",
- "description": "MSO Docker Images",
- "chef_type": "environment",
- "json_class": "Chef::Environment",
- "default_attributes":
- {
- "mso_config_path": "/etc/mso/config.d/",
-
- "mso-api-handler-infra-config":
- {
- "bpelURL": "http://localhost:8080",
- "bpelAuth": "786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1",
- "camundaURL": "http://localhost:8080",
- "camundaAuth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
- },
-
- "asdc-connections":
- {
- "asdc-controller1":
- {
- "user": "mso",
- "consumerGroup": "sdc-OpenSource-Env1",
- "consumerId": "sdc-COpenSource-Env11",
- "environmentName": "{{ .Values.dmaapTopic }}",
- "asdcAddress": "sdc-be.{{.Values.nsPrefix}}:8443",
- "password": "613AF3483E695524F9857643B697FA51C7A9A0951094F53791485BF3458F9EADA37DBACCCEBD0CB242B85B4062745247",
- "pollingInterval": 60,
- "pollingTimeout": 60,
- "relevantArtifactTypes": "HEAT,HEAT_ENV,HEAT_VOL",
- "activateServerTLSAuth": "false",
- "keyStorePassword": "",
- "keyStorePath": ""
- }
- },
-
- "mso-sdnc-adapter-config":
- {
- "sdncurls":
- [
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/L3SDN-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/config/L3SDN-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/Firewall-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/config",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/VNF-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/NBNC-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/NORTHBOUND-API:service-topology-operation",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/GENERIC-RESOURCE-API:",
- "http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/VNFTOPOLOGYAIC-API:"
- ],
-
- "bpelurl": "http://localhost:8080/mso/SDNCAdapterCallbackService",
- "restbpelurl": "http://localhost:8080/mso/WorkflowMessage",
- "myurl": "http://localhost:8080/adapters/rest/SDNCNotify",
- "sdncauth": "263f7d5f944d4d0c76db74b4148bec67d0bc796a874bc0d2a2a12aae89a866aa69133f700f391f784719a37f6a68d29bf5a2fbae1dab0402db7788c800c5ba73",
- "bpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1",
- "sdncconnecttime": "5000"
- },
- "mso-po-adapter-config":
- {
- "identity_services":
- [
- {
- "dcp_clli": "DEFAULT_KEYSTONE",
- "identity_url": "{{ .Values.openStackKeyStoneUrl }}/v2.0",
- "mso_id": "{{ .Values.openStackUserName }}",
- "mso_pass": "{{ .Values.openStackEncryptedPasswordHere }}",
- "admin_tenant":"{{ .Values.openStackServiceTenantName }}",
- "member_role": "admin",
- "tenant_metadata": "true",
- "identity_server_type": "KEYSTONE",
- "identity_authentication_type": "USERNAME_PASSWORD"
- }
- ],
-
- "cloud_sites":
- [
- {
- "id": "{{ .Values.openStackRegion }}",
- "aic_version": "2.5",
- "lcp_clli": "{{ .Values.openStackRegion }}",
- "region_id": "{{ .Values.openStackRegion }}",
- "identity_service_id": "DEFAULT_KEYSTONE"
- }
- ],
-
- "vnfbpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1",
- "checkrequiredparameters": "true",
- "nwbpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
- },
-
-
- "mso-workflow-message-adapter-config":
- {
- "wmbpelurl": "http://localhost:8080/mso/WorkflowMessage",
- "wmbpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
- },
-
- "mso-appc-adapter-config":
- {
- "appc_url": "http://localhost:18080",
- "appc_stub": "/AppC-Simulator/action/execute",
- "appc_auth": "786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1",
- "appc_timeout": "30",
- "ueb_cluster_address": "http://localhost:18080",
- "ueb_consumer_group": "testgroup",
- "ueb_consumer_id": "testuser",
- "ueb_topic": "queuetopic",
- "ueb_polling_interval": "30",
- "ueb_polling_interval": "30",
- "ueb_user": "user",
- "ueb_password": "1ec0d74615d4e4639f991c0590c83b88",
- "bpel_url": "http://localhost:18080",
- "bpel_stub": "/AppC-Simulator/bpmn/appCResponse",
- "bpel_auth": "786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1",
- "bpel_timeout": "30"
- },
-
- "mso-bpmn-config":
- {
- "urnFileSystemLoadingEnabled": "true"
- },
-
- "mso-bpmn-urn-config":
- {
- "debug":"false",
- "invariantIdL3ToHigherLayerDeleteBonding": "50359538-066f-4a8d-807f-f2bc8eaa79dc",
- "versionIdL3ToHigherLayerDeleteBonding": "52dbec20-47aa-42e4-936c-331d8e350d44",
- "infraCustomerId": "21014aa2-526b-11e6-beb8-9e71128cae77",
- "sniroAuth": "test:testpwd",
- "sniroEndpoint": "http://sniro-emulator.{{.Values.nsPrefix}}:8080/sniro/api/v2/placement",
- "sniroTimeout": "PT30M",
- "serviceAgnosticSniroHost": "http://sniro-emulator.{{.Values.nsPrefix}}:8080",
- "serviceAgnosticSniroEndpoint": "/sniro/api/v2/placement",
- "aaiEndpoint": "https://aai-service.{{.Values.nsPrefix}}:8443",
- "aaiAuth": "2630606608347B7124C244AB0FE34F6F",
- "adaptersNamespace": "http://org.openecomp.mso",
- "adaptersCompletemsoprocessEndpoint": "http://localhost:8080/CompleteMsoProcess",
- "adaptersDbEndpoint": "http://localhost:8080/dbadapters/MsoRequestsDbAdapter",
- "adaptersOpenecompDbEndpoint": "http://localhost:8080/dbadapters/RequestsDbAdapter",
- "catalogDbEndpoint": "http://localhost:8080/ecomp/mso/catalog",
- "adaptersSdncEndpoint": "http://localhost:8080/adapters/SDNCAdapter",
- "adaptersSdncRestEndpoint": "http://localhost:8080/adapters/rest/v1/sdnc",
- "adaptersTenantEndpoint": "http://localhost:8080/tenants/TenantAdapter",
- "adaptersDbAuth": "6B0E6863FB8EE010AB6F191B3C0489437601E81DC7C86305CB92DB98AFC53D74",
- "adaptersWorkflowMessageEndpoint": "http://localhost:8080/workflows/messages/message",
- "workflowMessageEndpoint": "http://localhost:8080/mso/WorkflowMessage",
- "workflowSdncAdapterCallback": "http://localhost:8080/mso/SDNCAdapterCallbackService",
- "workflowSdncReplicationDelay": "PT5S",
- "workflowAaiDistributionDelay": "PT30S",
- "msoKey": "07a7159d3bf51a0e53be7a8f89699be7",
- "adaptersPoAuth": "6B0E6863FB8EE010AB6F191B3C0489437601E81DC7C86305CB92DB98AFC53D74",
- "sdncTimeout": "PT5M",
- "rollback": "true",
- "adaptersNetworkEndpoint": "http://localhost:8080/networks/NetworkAdapter",
- "adaptersNetworkRestEndpoint": "http://localhost:8080/networks/rest/v1/networks",
- "adaptersVnfAsyncEndpoint": "http://localhost:8080/vnfs/VnfAdapterAsync",
- "workflowVnfAdapterDeleteCallback": "http://localhost:8080/mso/vnfAdapterNotify",
- "workflowVnfAdapterCreateCallback": "http://localhost:8080/mso/vnfAdapterNotify",
- "adaptersVnfRestEndpoint": "http://localhost:8080/vnfs/rest/v1/vnfs",
- "workflowVnfAdapterRestCallback": "http://localhost:8080/mso/vnfAdapterRestNotify",
- "poTimeout": "PT5M",
- "sdncFirewallYangModel": "http://com/att/svc/mis/firewall-lite-gui",
- "sdncFirewallYangModelVersion": "2015-05-15",
- "sdncTimeoutFirewall": "20",
- "callbackRetryAttempts": "30",
- "callbackRetrySleepTime": "1000",
- "workflowL3ToHigherLayerAddBondingModelName" : "WAN Bonding",
- "workflowL3ToHigherLayerAddBondingModelVersion" : "2.0"
- }
- },
-
- "override_attributes":
- {
- },
-
- "cookbook_versions":
- {
- "mso-config": "~> 1.0.0"
- }
-}
diff --git a/kubernetes/mso/templates/all-services.yaml b/kubernetes/mso/templates/all-services.yaml
deleted file mode 100644
index 70e67e482e..0000000000
--- a/kubernetes/mso/templates/all-services.yaml
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMsoMariadb }}
-apiVersion: v1
-kind: Service
-metadata:
- name: mso-mariadb
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: mso-mariadb
-spec:
- ports:
- - port: 3306
- name: mso-mariadb-3306
- selector:
- app: mso-mariadb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableMsoMso }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: mso
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: mso
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "so",
- "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"
- }
- ]'
-spec:
- selector:
- app: mso
- ports:
- - name: mso1
- port: 8080
- nodePort: {{ .Values.nodePortPrefix }}23
- - name: mso2
- port: 3904
- nodePort: {{ .Values.nodePortPrefix }}25
- - name: mso3
- port: 3905
- nodePort: {{ .Values.nodePortPrefix }}24
- - name: mso4
- port: 9990
- nodePort: {{ .Values.nodePortPrefix }}22
- - name: mso5
- port: 8787
- nodePort: {{ .Values.nodePortPrefix }}50
- type: NodePort
-#{{ end }}
diff --git a/kubernetes/mso/templates/db-deployment-configmap.yaml b/kubernetes/mso/templates/db-deployment-configmap.yaml
deleted file mode 100644
index 2949876e43..0000000000
--- a/kubernetes/mso/templates/db-deployment-configmap.yaml
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMsoMariadb }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-confd-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/conf.d/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-docker-entry-initd-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-automated-tests-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-bulkload-default-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-demo-dns-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-demo-vfw-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-scripts-camunda-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mso-main-schemas-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/*").AsConfig . | indent 2 }}
-#{{ end }}
diff --git a/kubernetes/mso/templates/db-deployment.yaml b/kubernetes/mso/templates/db-deployment.yaml
deleted file mode 100644
index 801b7d4038..0000000000
--- a/kubernetes/mso/templates/db-deployment.yaml
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMsoMariadb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: mso-mariadb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dbReplicas }}
- selector:
- matchLabels:
- app: mso-mariadb
- template:
- metadata:
- labels:
- app: mso-mariadb
- name: mso-mariadb
- spec:
- hostname: mso-mariadb
- containers:
- - args:
- image: {{ .Values.image.mariadb }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "mso-mariadb"
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: password
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /etc/mysql/conf.d
- name: mso-mariadb-conf
- - mountPath: /docker-entrypoint-initdb.d/02-load-additional-changes.sh
- name: mso-mariadb-docker-entrypoint-initdb
- subPath: 02-load-additional-changes.sh
- - mountPath: /docker-entrypoint-initdb.d/01-load-default-sql-files.sh
- name: mso-mariadb-docker-entrypoint-initdb
- subPath: 01-load-default-sql-files.sh
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests
- name: mso-mariadb-docker-entrypoint-automated-tests
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default
- name: mso-mariadb-docker-entrypoint-bulkload-default
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns
- name: mso-mariadb-docker-entrypoint-demo-dns
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw
- name: mso-mariadb-docker-entrypoint-demo-vfw
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/camunda
- name: mso-mariadb-docker-entrypoint-camunda
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/main-schemas
- name: mso-mariadb-docker-entrypoint-main-schemas
- - mountPath: /var/lib/mysql
- name: mso-mariadb-data
- ports:
- - containerPort: 3306
- name: mso-mariadb
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: mso-mariadb-conf
- configMap:
- name: mso-confd-configmap
- - name: mso-mariadb-docker-entrypoint-initdb
- configMap:
- name: mso-docker-entry-initd-configmap
- - name: mso-mariadb-docker-entrypoint-automated-tests
- configMap:
- name: mso-automated-tests-configmap
- - name: mso-mariadb-docker-entrypoint-bulkload-default
- configMap:
- name: mso-bulkload-default-configmap
- - name: mso-mariadb-docker-entrypoint-demo-dns
- configMap:
- name: mso-demo-dns-configmap
- - name: mso-mariadb-docker-entrypoint-demo-vfw
- configMap:
- name: mso-demo-vfw-configmap
- - name: mso-mariadb-docker-entrypoint-camunda
- configMap:
- name: mso-scripts-camunda-configmap
- - name: mso-mariadb-docker-entrypoint-main-schemas
- configMap:
- name: mso-main-schemas-configmap
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: mso-mariadb-data
- persistentVolumeClaim:
- claimName: mso-db
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/mso/templates/mso-deployment.yaml b/kubernetes/mso/templates/mso-deployment.yaml
deleted file mode 100644
index 8a099a4744..0000000000
--- a/kubernetes/mso/templates/mso-deployment.yaml
+++ /dev/null
@@ -1,164 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMsoMso }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: mso
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.msoReplicas }}
- selector:
- matchLabels:
- app: mso
- template:
- metadata:
- labels:
- app: mso
- name: mso
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - mso-mariadb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: mso-readiness
- containers:
- - command:
- - /tmp/start-jboss-server.sh
- image: {{ .Values.image.mso }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: mso
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /shared/
- name: mso
- - mountPath: /tmp/start-jboss-server.sh
- name: mso-docker-files
- subPath: start-jboss-server.sh
- - mountPath: /opt/jboss/standalone/configuration/standalone-full-ha-mso.xml
- name: mso-jboss-config
- subPath: standalone-full-ha-mso.xml
- - mountPath: /var/log/onap
- name: mso-logs
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.network.xml
- name: mso-logback
- subPath: logback.network.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.tenant.xml
- name: mso-logback
- subPath: logback.tenant.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.vnf.xml
- name: mso-logback
- subPath: logback.vnf.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-po-adapter-config/logback.vfc.xml
- name: mso-logback
- subPath: logback.vfc.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-api-handler-infra-config/logback.apihandler-infra.xml
- name: mso-logback
- subPath: logback.apihandler-infra.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-appc-adapter-config/logback.appc.xml
- name: mso-logback
- subPath: logback.appc.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-requests-db-adapter-config/logback.msorequestsdbadapter.xml
- name: mso-logback
- subPath: logback.msorequestsdbadapter.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-asdc-controller-config/logback.asdc.xml
- name: mso-logback
- subPath: logback.asdc.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-sdnc-adapter-config/logback.sdnc.xml
- name: mso-logback
- subPath: logback.sdnc.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-bpmn-config/logback.bpmn.xml
- name: mso-logback
- subPath: logback.bpmn.xml
- - mountPath: /var/berks-cookbooks/mso-config/files/default/mso-workflow-message-adapter-config/logback.workflow-message-adapter.xml
- name: mso-logback
- subPath: logback.workflow-message-adapter.xml
- env:
- - name: JBOSS_DEBUG
- value: "false"
- ports:
- - containerPort: 3904
- - containerPort: 3905
- - containerPort: 8080
- - containerPort: 9990
- - containerPort: 8787
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: mso-logs
- - mountPath: /usr/share/filebeat/data
- name: mso-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: mso-logback
- configMap:
- name: mso-log-configmap
- - name: filebeat-conf
- configMap:
- name: mso-filebeat-configmap
- - name: mso
- configMap:
- name: mso-config-mso-configmap
- items:
- - key: mso-docker.json
- path: mso-docker.json
- mode: 0755
- - key: aai.crt
- path: aai.crt
- mode: 0755
- - key: encryption.key
- path: encryption.key
- mode: 0644
- - name: mso-logs
- emptyDir: {}
- - name: mso-data-filebeat
- emptyDir: {}
- - name: mso-docker-files
- configMap:
- name: mso-docker-file-configmap
- items:
- - key: start-jboss-server.sh
- path: start-jboss-server.sh
- mode: 0755
- - name: mso-jboss-config
- configMap:
- name: mso-jboss-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/mso/templates/mso-pv-pvc.yaml b/kubernetes/mso/templates/mso-pv-pvc.yaml
deleted file mode 100644
index 1ee4ab088b..0000000000
--- a/kubernetes/mso/templates/mso-pv-pvc.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-*/}}
-
-#{{ if not .Values.disableMsoMariadb }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-mso"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-mso"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/mso/mariadb/data
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: mso-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-mso"
-#{{ end }}
diff --git a/kubernetes/multicloud/.helmignore b/kubernetes/multicloud/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/multicloud/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/multicloud/Chart.yaml b/kubernetes/multicloud/Chart.yaml
index 4f9a154880..3dbbe29986 100644
--- a/kubernetes/multicloud/Chart.yaml
+++ b/kubernetes/multicloud/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP multicloud broker
name: multicloud
-version: 1.1.0
+version: 2.0.0
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/.helmignore b/kubernetes/multicloud/charts/multicloud-ocata/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-ocata/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/Chart.yaml b/kubernetes/multicloud/charts/multicloud-ocata/Chart.yaml
new file mode 100644
index 0000000000..3dfc80af4e
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-ocata/Chart.yaml
@@ -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 multicloud OpenStack Ocata Plugin
+name: multicloud-ocata
+version: 2.0.0
diff --git a/kubernetes/multicloud/resources/config/log/ocata/log.yml b/kubernetes/multicloud/charts/multicloud-ocata/resources/config/log/log.yml
index ef71b907c8..2ef26b7411 100644
--- a/kubernetes/multicloud/resources/config/log/ocata/log.yml
+++ b/kubernetes/multicloud/charts/multicloud-ocata/resources/config/log/log.yml
@@ -26,9 +26,9 @@ handlers:
formatters:
standard:
- format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
mdcFormat:
- format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:[%(mdc)s]: %(message)s"
- mdcfmt: "{requestID}"
+ 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
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/templates/NOTES.txt b/kubernetes/multicloud/charts/multicloud-ocata/templates/NOTES.txt
new file mode 100644
index 0000000000..befedf4578
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-ocata/templates/NOTES.txt
@@ -0,0 +1,34 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/templates/configmap.yaml b/kubernetes/multicloud/charts/multicloud-ocata/templates/configmap.yaml
new file mode 100644
index 0000000000..8d506fbfb5
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-ocata/templates/configmap.yaml
@@ -0,0 +1,23 @@
+{{/*
+# 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" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/templates/deployment.yaml b/kubernetes/multicloud/charts/multicloud-ocata/templates/deployment.yaml
new file mode 100644
index 0000000000..0106a79973
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-ocata/templates/deployment.yaml
@@ -0,0 +1,117 @@
+{{/*
+# 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:
+ - env:
+ - name: MSB_ADDR
+ value: "{{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}"
+ - name: MSB_PORT
+ value: "{{ .Values.config.msbPort }}"
+ - name: AAI_ADDR
+ value: aai.{{ include "common.namespace" . }}
+ - name: AAI_PORT
+ value: "{{ .Values.config.aai.port }}"
+ - name: AAI_SCHEMA_VERSION
+ value: "{{ .Values.config.aai.schemaVersion }}"
+ - name: AAI_USERNAME
+ value: "{{ .Values.config.aai.username }}"
+ - name: AAI_PASSWORD
+ value: "{{ .Values.config.aai.password }}"
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: ocata-log
+ - mountPath: /opt/ocata/ocata/pub/config/log.yml
+ name: ocata-logconfig
+ subPath: log.yml
+ 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:
+ httpGet:
+ path: /api/multicloud-ocata/v0/swagger.json
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ 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 }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: ocata-log
+ - mountPath: /usr/share/filebeat/data
+ name: ocata-data-filebeat
+
+ volumes:
+ - name: ocata-log
+ emptyDir: {}
+ - name: ocata-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: multicloud-filebeat-configmap
+ - name: ocata-logconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Always
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/templates/service.yaml b/kubernetes/multicloud/charts/multicloud-ocata/templates/service.yaml
new file mode 100644
index 0000000000..f47383e0db
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-ocata/templates/service.yaml
@@ -0,0 +1,52 @@
+{{/*
+# 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.service.name }}
+ 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": "multicloud-ocata",
+ "version": "v0",
+ "url": "/api/multicloud-ocata/v0",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange": "1"
+ }
+ ]'
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - name: {{ .Values.service.name }}
+ port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/multicloud/charts/multicloud-ocata/values.yaml b/kubernetes/multicloud/charts/multicloud-ocata/values.yaml
new file mode 100644
index 0000000000..4dff580136
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-ocata/values.yaml
@@ -0,0 +1,82 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/multicloud/openstack-ocata:1.1.2-SNAPSHOT
+pullPolicy: Always
+
+# application configuration
+config:
+ msbgateway: msb-iag
+ msbPort: 80
+ aai:
+ port: 8443
+ schemaVersion: v11
+ username: AAI
+ password: AAI
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 10
+ successThreshold: 1
+ failureThreshold: 5
+ enabled: true
+
+service:
+ type: NodePort
+ name: multicloud-ocata
+ externalPort: 9006
+ internalPort: 9006
+ nodePort: 93
+
+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/multicloud/charts/multicloud-vio/.helmignore b/kubernetes/multicloud/charts/multicloud-vio/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-vio/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/multicloud/charts/multicloud-vio/Chart.yaml b/kubernetes/multicloud/charts/multicloud-vio/Chart.yaml
new file mode 100644
index 0000000000..83aa96ab90
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-vio/Chart.yaml
@@ -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 multicloud VIO plugin
+name: multicloud-vio
+version: 2.0.0
diff --git a/kubernetes/multicloud/resources/config/log/vio/log.yml b/kubernetes/multicloud/charts/multicloud-vio/resources/config/log/log.yml
index 91654645c8..91654645c8 100644
--- a/kubernetes/multicloud/resources/config/log/vio/log.yml
+++ b/kubernetes/multicloud/charts/multicloud-vio/resources/config/log/log.yml
diff --git a/kubernetes/multicloud/charts/multicloud-vio/templates/NOTES.txt b/kubernetes/multicloud/charts/multicloud-vio/templates/NOTES.txt
new file mode 100644
index 0000000000..befedf4578
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-vio/templates/NOTES.txt
@@ -0,0 +1,34 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/multicloud/charts/multicloud-vio/templates/configmap.yaml b/kubernetes/multicloud/charts/multicloud-vio/templates/configmap.yaml
new file mode 100644
index 0000000000..8d506fbfb5
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-vio/templates/configmap.yaml
@@ -0,0 +1,23 @@
+{{/*
+# 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" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/multicloud/charts/multicloud-vio/templates/deployment.yaml b/kubernetes/multicloud/charts/multicloud-vio/templates/deployment.yaml
new file mode 100644
index 0000000000..fa9646657b
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-vio/templates/deployment.yaml
@@ -0,0 +1,115 @@
+{{/*
+# 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: multicloud-vio
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ containers:
+ - env:
+ - name: MSB_ADDR
+ value: "{{ .Values.config.msbgateway }}"
+ - name: MSB_PORT
+ value: "{{ .Values.config.msbPort }}.{{ include "common.namespace" . }}"
+ - name: AAI_ADDR
+ value: aai.{{ include "common.namespace" . }}
+ - name: AAI_PORT
+ value: "{{ .Values.config.aai.port }}"
+ - name: AAI_SCHEMA_VERSION
+ value: "{{ .Values.config.aai.schemaVersion }}"
+ - name: AAI_USERNAME
+ value: "{{ .Values.config.aai.username }}"
+ - name: AAI_PASSWORD
+ value: "{{ .Values.config.aai.password }}"
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: vio-log
+ - mountPath: /opt/vio/vio/pub/config/log.yml
+ name: vio-logconfig
+ subPath: log.yml
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ httpGet:
+ path: /api/multicloud-vio/v0/swagger.json
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ successThreshold: {{ .Values.liveness.successThreshold }}
+ failureThreshold: {{ .Values.liveness.failureThreshold }}
+ {{ end -}}
+
+ # side car containers
+ - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ 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: {}
+ - name: vio-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: multicloud-filebeat-configmap
+ - name: vio-logconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Always
diff --git a/kubernetes/multicloud/charts/multicloud-vio/templates/service.yaml b/kubernetes/multicloud/charts/multicloud-vio/templates/service.yaml
new file mode 100644
index 0000000000..dcaf37d192
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-vio/templates/service.yaml
@@ -0,0 +1,52 @@
+{{/*
+# 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.service.name }}
+ 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": "multicloud-vio",
+ "version": "v0",
+ "url": "/api/multicloud-vio/v0",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange": "1"
+ }
+ ]'
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - name: {{ .Values.service.name }}
+ port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/multicloud/charts/multicloud-vio/values.yaml b/kubernetes/multicloud/charts/multicloud-vio/values.yaml
new file mode 100644
index 0000000000..a7507e0da2
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-vio/values.yaml
@@ -0,0 +1,82 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/multicloud/vio:1.1.2-STAGING
+pullPolicy: Always
+
+# application configuration
+config:
+ msbgateway: msb-iag
+ msbPort: 80
+ aai:
+ port: 8443
+ schemaVersion: v11
+ username: AAI
+ password: AAI
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 10
+ successThreshold: 1
+ failureThreshold: 5
+ enabled: true
+
+service:
+ type: NodePort
+ name: multicloud-vio
+ externalPort: 9004
+ internalPort: 9004
+ nodePort: 92
+
+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/multicloud/charts/multicloud-windriver/.helmignore b/kubernetes/multicloud/charts/multicloud-windriver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-windriver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/multicloud/charts/multicloud-windriver/Chart.yaml b/kubernetes/multicloud/charts/multicloud-windriver/Chart.yaml
new file mode 100644
index 0000000000..ef345f619d
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-windriver/Chart.yaml
@@ -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 multicloud OpenStack WindRiver Plugin
+name: multicloud-windriver
+version: 2.0.0
diff --git a/kubernetes/multicloud/resources/config/log/windriver/log.yml b/kubernetes/multicloud/charts/multicloud-windriver/resources/config/log/log.yml
index 8e2c5c25f9..6c1957db33 100644
--- a/kubernetes/multicloud/resources/config/log/windriver/log.yml
+++ b/kubernetes/multicloud/charts/multicloud-windriver/resources/config/log/log.yml
@@ -26,9 +26,9 @@ handlers:
formatters:
standard:
- format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
mdcFormat:
- format: "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:[%(mdc)s]: %(message)s"
- mdcfmt: "{requestID}"
+ 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
diff --git a/kubernetes/multicloud/charts/multicloud-windriver/templates/NOTES.txt b/kubernetes/multicloud/charts/multicloud-windriver/templates/NOTES.txt
new file mode 100644
index 0000000000..befedf4578
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-windriver/templates/NOTES.txt
@@ -0,0 +1,34 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/multicloud/charts/multicloud-windriver/templates/configmap.yaml b/kubernetes/multicloud/charts/multicloud-windriver/templates/configmap.yaml
new file mode 100644
index 0000000000..8d506fbfb5
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-windriver/templates/configmap.yaml
@@ -0,0 +1,23 @@
+{{/*
+# 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" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/multicloud/charts/multicloud-windriver/templates/deployment.yaml b/kubernetes/multicloud/charts/multicloud-windriver/templates/deployment.yaml
new file mode 100644
index 0000000000..62857f6664
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-windriver/templates/deployment.yaml
@@ -0,0 +1,117 @@
+{{/*
+# 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:
+ - env:
+ - name: MSB_ADDR
+ value: "{{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}"
+ - name: MSB_PORT
+ value: "{{ .Values.config.msbPort }}"
+ - name: AAI_ADDR
+ value: aai.{{ include "common.namespace" . }}
+ - name: AAI_PORT
+ value: "{{ .Values.config.aai.port }}"
+ - name: AAI_SCHEMA_VERSION
+ value: "{{ .Values.config.aai.schemaVersion }}"
+ - name: AAI_USERNAME
+ value: "{{ .Values.config.aai.username }}"
+ - name: AAI_PASSWORD
+ value: "{{ .Values.config.aai.password }}"
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: windriver-log
+ - mountPath: /opt/windriver/titanium_cloud/pub/config/log.yml
+ name: windriver-logconfig
+ subPath: log.yml
+ 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:
+ httpGet:
+ path: /api/multicloud-titanium_cloud/v0/swagger.json
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ 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 }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: windriver-log
+ - mountPath: /usr/share/filebeat/data
+ name: windriver-data-filebeat
+
+ volumes:
+ - name: windriver-log
+ emptyDir: {}
+ - name: windriver-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: multicloud-filebeat-configmap
+ - name: windriver-logconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Always
diff --git a/kubernetes/multicloud/charts/multicloud-windriver/templates/service.yaml b/kubernetes/multicloud/charts/multicloud-windriver/templates/service.yaml
new file mode 100644
index 0000000000..dd3bd4214f
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-windriver/templates/service.yaml
@@ -0,0 +1,53 @@
+{{/*
+# 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.service.name }}
+ 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": "multicloud-titanium_cloud",
+ "version": "v0",
+ "url": "/api/multicloud-titanium_cloud/v0",
+ "protocol": "REST",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange": "1"
+ }
+ ]'
+
+spec:
+ ports:
+ {{ if eq .Values.service.type "NodePort" }}
+ - name: {{ .Values.service.name }}
+ port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ {{ else }}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{ end }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/multicloud/charts/multicloud-windriver/values.yaml b/kubernetes/multicloud/charts/multicloud-windriver/values.yaml
new file mode 100644
index 0000000000..820a6d1199
--- /dev/null
+++ b/kubernetes/multicloud/charts/multicloud-windriver/values.yaml
@@ -0,0 +1,82 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/multicloud/openstack-windriver:1.1.2-SNAPSHOT
+pullPolicy: Always
+
+# application configuration
+config:
+ msbgateway: msb-iag
+ msbPort: 80
+ aai:
+ port: 8443
+ schemaVersion: v11
+ username: AAI
+ password: AAI
+
+service:
+ type: NodePort
+ name: multicloud-windriver
+ externalPort: 9005
+ internalPort: 9005
+ nodePort: 94
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 10
+ successThreshold: 1
+ failureThreshold: 5
+ enabled: true
+
+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/multicloud/requirements.yaml b/kubernetes/multicloud/requirements.yaml
new file mode 100644
index 0000000000..ce82a2f838
--- /dev/null
+++ b/kubernetes/multicloud/requirements.yaml
@@ -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/multicloud/resources/config/provider-plugin.json b/kubernetes/multicloud/resources/config/provider-plugin.json
new file mode 100644
index 0000000000..0ac4701aa9
--- /dev/null
+++ b/kubernetes/multicloud/resources/config/provider-plugin.json
@@ -0,0 +1,29 @@
+{
+ "openstack": {
+ "vim_type": "openstack",
+ "versions": {
+ "titanium_cloud": {
+ "version": "titanium_cloud",
+ "extra_info_hint": "",
+ "provider_plugin": "multicloud-titanium_cloud"
+ },
+ "ocata": {
+ "version": "ocata",
+ "extra_info_hint": "",
+ "provider_plugin": "multicloud-ocata"
+ }
+ },
+ "provider_plugin": "multicloud-ocata"
+ },
+ "vmware": {
+ "vim_type": "vmware",
+ "versions": {
+ "4.0": {
+ "version": "4.0",
+ "extra_info_hint": "",
+ "provider_plugin": "multicloud-vio"
+ }
+ },
+ "provider_plugin": "multicloud-vio"
+ }
+} \ No newline at end of file
diff --git a/kubernetes/multicloud/templates/NOTES.txt b/kubernetes/multicloud/templates/NOTES.txt
new file mode 100644
index 0000000000..befedf4578
--- /dev/null
+++ b/kubernetes/multicloud/templates/NOTES.txt
@@ -0,0 +1,34 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/multicloud/templates/all-services.yaml b/kubernetes/multicloud/templates/all-services.yaml
deleted file mode 100644
index c58cd7486e..0000000000
--- a/kubernetes/multicloud/templates/all-services.yaml
+++ /dev/null
@@ -1,132 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMulticloudFramework }}
-apiVersion: v1
-kind: Service
-metadata:
- name: framework
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: framework
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "multicloud",
- "version": "v0",
- "url": "/api/multicloud/v0",
- "protocol": "REST",
- "port": "9001",
- "visualRange": "1"
- }
- ]'
-spec:
- ports:
- - name: "framework-port"
- port: 9001
- nodePort: {{ .Values.nodePortPrefix }}91
- selector:
- app: framework
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableMulticloudMulticloudVio }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: multicloud-vio
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: multicloud-vio
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "multicloud-vio",
- "version": "v0",
- "url": "/api/multicloud-vio/v0",
- "protocol": "REST",
- "port": "9004",
- "visualRange": "1"
- }
- ]'
-
-spec:
- ports:
- - name: "multicloud-port"
- port: 9004
- nodePort: {{ .Values.nodePortPrefix }}92
- selector:
- app: multicloud-vio
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableMulticloudMulticloudOcata }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: multicloud-ocata
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: multicloud-ocata
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "multicloud-ocata",
- "version": "v0",
- "url": "/api/multicloud-ocata/v0",
- "protocol": "REST",
- "port": "9006",
- "visualRange": "1"
- }
- ]'
-
-spec:
- ports:
- - name: "multicloud-port"
- port: 9006
- nodePort: {{ .Values.nodePortPrefix }}93
- selector:
- app: multicloud-ocata
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableMulticloudMulticloudWindriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: multicloud-windriver
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: multicloud-windriver
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "multicloud-titanium_cloud",
- "version": "v0",
- "url": "/api/multicloud-titanium_cloud/v0",
- "protocol": "REST",
- "port": "9005",
- "visualRange": "1"
- }
- ]'
-
-spec:
- ports:
- - name: "multicloud-port"
- port: 9005
- nodePort: {{ .Values.nodePortPrefix }}94
- selector:
- app: multicloud-windriver
- type: NodePort
-#{{ end }} \ No newline at end of file
diff --git a/kubernetes/sdc/templates/sdc-log-configmap.yaml b/kubernetes/multicloud/templates/configmap.yaml
index 78312b7c04..dc356a3d9a 100644
--- a/kubernetes/sdc/templates/sdc-log-configmap.yaml
+++ b/kubernetes/multicloud/templates/configmap.yaml
@@ -1,3 +1,4 @@
+{{/*
# Copyright © 2017 Amdocs, Bell Canada
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -11,31 +12,28 @@
# WITHOUT 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 not .Values.disableSdcSdcBe }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdc-log-be-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: multicloud-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/be/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdc-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/log/framework/*").AsConfig . | indent 2 }}
---
-#{{ if not .Values.disableSdcSdcFe }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdc-log-fe-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-provider-plugin-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/fe/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/provider-plugin.json").AsConfig . | indent 2 }}
diff --git a/kubernetes/multicloud/templates/deployment.yaml b/kubernetes/multicloud/templates/deployment.yaml
new file mode 100644
index 0000000000..5ae5fd9da5
--- /dev/null
+++ b/kubernetes/multicloud/templates/deployment.yaml
@@ -0,0 +1,123 @@
+{{/*
+# 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:
+ - env:
+ - name: MSB_ADDR
+ value: {{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}
+ - name: MSB_PORT
+ value: "{{ .Values.config.msbPort }}"
+ - name: AAI_ADDR
+ value: "aai.{{ include "common.namespace" . }}"
+ - name: AAI_PORT
+ value: "{{ .Values.config.aai.port }}"
+ - name: AAI_SCHEMA_VERSION
+ value: "{{ .Values.config.aai.schemaVersion }}"
+ - name: AAI_USERNAME
+ value: "{{ .Values.config.aai.username }}"
+ - name: AAI_PASSWORD
+ value: "{{ .Values.config.aai.password }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}
+ volumeMounts:
+ - mountPath: /var/log/onap
+ name: framework-log
+ - mountPath: /opt/multivimbroker/multivimbroker/pub/config/log.yml
+ name: framework-logconfig
+ subPath: log.yml
+ - mountPath: /opt/multivimbroker/multivimbroker/pub/config/provider-plugin.json
+ name: provider-plugin
+ subPath: provider-plugin.json
+ 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:
+ httpGet:
+ path: /api/multicloud/v0/swagger.json
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ successThreshold: {{ .Values.liveness.successThreshold }}
+ failureThreshold: {{ .Values.liveness.failureThreshold }}
+ {{ end -}}
+
+ # side car containers
+ - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ 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: {}
+ - name: provider-plugin
+ configMap:
+ name: {{ include "common.fullname" . }}-provider-plugin-configmap
+ - name: framework-data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: multicloud-filebeat-configmap
+ - name: framework-logconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Always
diff --git a/kubernetes/multicloud/templates/framework-deployment.yaml b/kubernetes/multicloud/templates/framework-deployment.yaml
deleted file mode 100644
index b2f0440263..0000000000
--- a/kubernetes/multicloud/templates/framework-deployment.yaml
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMulticloudFramework }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: multicloud-framework
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.frameworkReplicas }}
- selector:
- matchLabels:
- app: framework
- template:
- metadata:
- labels:
- app: framework
- name: multicloud-framework
- spec:
- containers:
- - env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbgateway . }}
- - name: MSB_PORT
- value: "{{ .Values.msbPort }}"
- - name: AAI_ADDR
- value: aai-service.{{ .Values.nsPrefix }}
- - name: AAI_PORT
- value: "8443"
- - name: AAI_SCHEMA_VERSION
- value: "v11"
- - name: AAI_USERNAME
- value: "AAI"
- - name: AAI_PASSWORD
- value: "AAI"
- image: {{ .Values.image.framework }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: framework
- volumeMounts:
- - mountPath: /var/log/onap
- name: framework-log
- - mountPath: /opt/multivimbroker/multivimbroker/pub/config/log.yml
- name: framework-logconfig
- subPath: log.yml
- ports:
- - containerPort: 9001
- livenessProbe:
- httpGet:
- path: /api/multicloud/v0/swagger.json
- port: 9001
- scheme: HTTP
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 10
- successThreshold: 1
- failureThreshold: 5
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: framework-log
- - mountPath: /usr/share/filebeat/data
- name: framework-data-filebeat
- volumes:
- - name: framework-log
- emptyDir: {}
- - name: framework-data-filebeat
- emptyDir: {}
- - name: filebeat-conf
- configMap:
- name: multicloud-filebeat-configmap
- - name: framework-logconfig
- configMap:
- name: multicloud-framework-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Always
-#{{ end }}
diff --git a/kubernetes/multicloud/templates/multicloud-log-configmap.yaml b/kubernetes/multicloud/templates/multicloud-log-configmap.yaml
deleted file mode 100644
index 1050f1061e..0000000000
--- a/kubernetes/multicloud/templates/multicloud-log-configmap.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVidVidServer }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-framework-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/framework/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-vio-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/vio/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-ocata-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/ocata/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: multicloud-windriver-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/windriver/*").AsConfig . | indent 2 }}
-#{{ end }}
diff --git a/kubernetes/multicloud/templates/multicloud-ocata-deployment.yaml b/kubernetes/multicloud/templates/multicloud-ocata-deployment.yaml
deleted file mode 100644
index ecbd74b067..0000000000
--- a/kubernetes/multicloud/templates/multicloud-ocata-deployment.yaml
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMulticloudMulticloudOcata }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: multicloud-ocata
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.ocataReplicas }}
- selector:
- matchLabels:
- app: multicloud-ocata
- template:
- metadata:
- labels:
- app: multicloud-ocata
- name: multicloud-ocata
- spec:
- containers:
- - env:
- - name: MSB_ADDR
- value: "{{ tpl .Values.msbgateway . }}"
- - name: MSB_PORT
- value: "{{ .Values.msbPort }}"
- - name: AAI_ADDR
- value: aai-service.{{ .Values.nsPrefix }}
- - name: AAI_PORT
- value: "8443"
- - name: AAI_SCHEMA_VERSION
- value: "v11"
- - name: AAI_USERNAME
- value: "AAI"
- - name: AAI_PASSWORD
- value: "AAI"
- name: multicloud-ocata
- volumeMounts:
- - mountPath: /var/log/onap
- name: ocata-log
- - mountPath: /opt/ocata/ocata/pub/config/log.yml
- name: ocata-logconfig
- subPath: log.yml
- image: {{ .Values.image.ocata }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- ports:
- - containerPort: 9006
- livenessProbe:
- httpGet:
- path: /api/multicloud-ocata/v0/swagger.json
- port: 9006
- scheme: HTTP
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 10
- successThreshold: 1
- failureThreshold: 5
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: ocata-log
- - mountPath: /usr/share/filebeat/data
- name: ocata-data-filebeat
- volumes:
- - name: ocata-log
- emptyDir: {}
- - name: ocata-data-filebeat
- emptyDir: {}
- - name: filebeat-conf
- configMap:
- name: multicloud-filebeat-configmap
- - name: ocata-logconfig
- configMap:
- name: multicloud-ocata-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Always
-#{{ end }}
diff --git a/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml b/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml
deleted file mode 100644
index e15108116d..0000000000
--- a/kubernetes/multicloud/templates/multicloud-vio-deployment.yaml
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMulticloudMulticloudVio }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: multicloud-vio
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vioReplicas }}
- selector:
- matchLabels:
- app: multicloud-vio
- template:
- metadata:
- labels:
- app: multicloud-vio
- name: multicloud-vio
- spec:
- containers:
- - env:
- - name: MSB_ADDR
- value: "{{ tpl .Values.msbgateway . }}"
- - name: MSB_PORT
- value: "{{ .Values.msbPort }}"
- - name: AAI_ADDR
- value: aai-service.{{ .Values.nsPrefix }}
- - name: AAI_PORT
- value: "8443"
- - name: AAI_SCHEMA_VERSION
- value: "v11"
- - name: AAI_USERNAME
- value: "AAI"
- - name: AAI_PASSWORD
- value: "AAI"
- name: multicloud-vio
- volumeMounts:
- - mountPath: /var/log/onap
- name: vio-log
- - mountPath: /opt/vio/vio/pub/config/log.yml
- name: vio-logconfig
- subPath: log.yml
- image: {{ .Values.image.vio }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- ports:
- - containerPort: 9004
- livenessProbe:
- httpGet:
- path: /api/multicloud-vio/v0/swagger.json
- port: 9004
- scheme: HTTP
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 10
- successThreshold: 1
- failureThreshold: 5
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: vio-log
- - mountPath: /usr/share/filebeat/data
- name: vio-data-filebeat
- volumes:
- - name: vio-log
- emptyDir: {}
- - name: vio-data-filebeat
- emptyDir: {}
- - name: filebeat-conf
- configMap:
- name: multicloud-filebeat-configmap
- - name: vio-logconfig
- configMap:
- name: multicloud-vio-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Always
-#{{ end }}
diff --git a/kubernetes/multicloud/templates/multicloud-windriver-deployment.yaml b/kubernetes/multicloud/templates/multicloud-windriver-deployment.yaml
deleted file mode 100644
index c1b385865b..0000000000
--- a/kubernetes/multicloud/templates/multicloud-windriver-deployment.yaml
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMulticloudMulticloudWindriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: multicloud-windriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.windRiverReplicas }}
- selector:
- matchLabels:
- app: multicloud-windriver
- template:
- metadata:
- labels:
- app: multicloud-windriver
- name: multicloud-windriver
- spec:
- containers:
- - env:
- - name: MSB_ADDR
- value: "{{ tpl .Values.msbgateway . }}"
- - name: MSB_PORT
- value: "{{ .Values.msbPort }}"
- - name: AAI_ADDR
- value: aai-service.{{ .Values.nsPrefix }}
- - name: AAI_PORT
- value: "8443"
- - name: AAI_SCHEMA_VERSION
- value: "v11"
- - name: AAI_USERNAME
- value: "AAI"
- - name: AAI_PASSWORD
- value: "AAI"
- name: multicloud-windriver
- volumeMounts:
- - mountPath: /var/log/onap
- name: windriver-log
- - mountPath: /opt/windriver/titanium_cloud/pub/config/log.yml
- name: windriver-logconfig
- subPath: log.yml
- image: {{ .Values.image.windriver }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- ports:
- - containerPort: 9005
- livenessProbe:
- httpGet:
- path: /api/multicloud-titanium_cloud/v0/swagger.json
- port: 9005
- scheme: HTTP
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 10
- successThreshold: 1
- failureThreshold: 5
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: windriver-log
- - mountPath: /usr/share/filebeat/data
- name: windriver-data-filebeat
- volumes:
- - name: windriver-log
- emptyDir: {}
- - name: windriver-data-filebeat
- emptyDir: {}
- - name: filebeat-conf
- configMap:
- name: multicloud-filebeat-configmap
- - name: windriver-logconfig
- configMap:
- name: multicloud-windriver-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
- restartPolicy: Always
-#{{ end }}
diff --git a/kubernetes/multicloud/templates/service.yaml b/kubernetes/multicloud/templates/service.yaml
new file mode 100644
index 0000000000..2b600ae35e
--- /dev/null
+++ b/kubernetes/multicloud/templates/service.yaml
@@ -0,0 +1,52 @@
+{{/*
+# 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.service.name }}
+ 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": "multicloud",
+ "version": "v0",
+ "url": "/api/multicloud/v0",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange": "1"
+ }
+ ]'
+spec:
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - name: {{ .Values.service.name }}
+ port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ type: {{ .Values.service.type }}
diff --git a/kubernetes/multicloud/values.yaml b/kubernetes/multicloud/values.yaml
index d43ee61343..016f64ff46 100644
--- a/kubernetes/multicloud/values.yaml
+++ b/kubernetes/multicloud/values.yaml
@@ -12,25 +12,75 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/multicloud/framework:1.1.2-STAGING
pullPolicy: Always
-nodePortPrefix: 302
-dataRootDir: /dockerdata-nfs
-frameworkReplicas: 1
-ocataReplicas: 1
-vioReplicas: 1
-windRiverReplicas: 1
-image:
- readiness: oomk8s/readiness-check:1.1.0
- framework: nexus3.onap.org:10001/onap/multicloud/framework:latest
- vio: nexus3.onap.org:10001/onap/multicloud/vio:latest
- ocata: nexus3.onap.org:10001/onap/multicloud/openstack-ocata:latest
- windriver: nexus3.onap.org:10001/onap/multicloud/openstack-windriver:latest
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
-# domain name of msb gateway
-msbgateway: msb-iag.{{ .Values.nsPrefix }}
-msbPort: 80
+# application configuration
config:
+ msbgateway: msb-iag
+ msbPort: 80
logstashServiceName: log-ls
logstashPort: 5044
+ aai:
+ port: 8443
+ schemaVersion: v11
+ username: AAI
+ password: AAI
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 10
+ successThreshold: 1
+ failureThreshold: 5
+ enabled: true
+
+service:
+ type: NodePort
+ name: multicloud
+ externalPort: 9001
+ internalPort: 9001
+ nodePort: 91
+
+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/onap/Chart.yaml b/kubernetes/onap/Chart.yaml
index 1050e1a38b..928399dfb0 100644
--- a/kubernetes/onap/Chart.yaml
+++ b/kubernetes/onap/Chart.yaml
@@ -21,3 +21,4 @@ home: https://www.onap.org/
sources:
- https://gerrit.onap.org/r/#/admin/projects/
icon: https://wiki.onap.org/download/thumbnails/1015829/onap_704x271%20copy.png?version=1&modificationDate=1488326334000&api=v2
+tillerVersion: "~2.8.2"
diff --git a/kubernetes/onap/requirements.yaml b/kubernetes/onap/requirements.yaml
index c3690cc210..97bcea47b0 100644
--- a/kubernetes/onap/requirements.yaml
+++ b/kubernetes/onap/requirements.yaml
@@ -18,7 +18,7 @@
# > helm repo add local http://127.0.0.1:8879
dependencies:
- name: aaf
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: aaf.enabled
- name: aai
@@ -34,62 +34,66 @@ dependencies:
repository: '@local'
condition: clamp.enabled
- name: cli
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: cli.enabled
- name: common
version: ~2.0.0
repository: '@local'
- name: consul
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: consul.enabled
- name: dcaegen2
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: dcaegen2.enabled
+ - name: dmaap
+ version: ~2.0.0
+ repository: '@local'
+ condition: dmaap.enabled
- name: esr
- version: ~1.0.0
+ version: ~2.0.0
repository: '@local'
condition: esr.enabled
- name: log
version: ~2.0.0
repository: '@local'
condition: log.enabled
- - name: message-router
- version: ~0.1.0
- repository: '@local'
- condition: message-router.enabled
- - name: mock
- version: ~0.1.0
+ - name: sniro-emulator
+ version: ~2.0.0
repository: '@local'
- condition: mock.enabled
+ condition: sniro-emulator.enabled
- name: msb
version: ~2.0.0
repository: '@local'
condition: msb.enabled
- name: multicloud
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: multicloud.enabled
- name: policy
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: policy.enabled
- name: portal
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: portal.enabled
+ - name: oof
+ version: ~2.0.0
+ repository: '@local'
+ condition: oof.enabled
- name: robot
version: ~2.0.0
repository: '@local'
condition: robot.enabled
- name: sdc
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: sdc.enabled
- name: sdnc
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: sdnc.enabled
- name: so
@@ -97,18 +101,18 @@ dependencies:
repository: '@local'
condition: so.enabled
- name: uui
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: uui.enabled
- name: vfc
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: vfc.enabled
- name: vid
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: vid.enabled
- name: vnfsdk
- version: ~1.1.0
+ version: ~2.0.0
repository: '@local'
condition: vnfsdk.enabled
diff --git a/kubernetes/onap/resources/environments/dev.yaml b/kubernetes/onap/resources/environments/dev.yaml
index 8bbaa279e8..9b10012879 100644
--- a/kubernetes/onap/resources/environments/dev.yaml
+++ b/kubernetes/onap/resources/environments/dev.yaml
@@ -23,12 +23,16 @@ global:
# with other instances running within the same k8s cluster
nodePortPrefix: 302
- # image repositories
- repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
- # readiness check
+ # ONAP Repository
+ # Uncomment the following to enable the use of a single docker
+ # repository but ONLY if your repository mirrors all ONAP
+ # docker images. This includes all images from dockerhub and
+ # any other repository that hosts images for ONAP components.
+ #repository: nexus3.onap.org:10001
+
+ # readiness check - temporary repo until images migrated to nexus3
readinessRepository: oomk8s
- # logging agent
+ # logging agent - temporary repo until images migrated to nexus3
loggingRepository: docker.elastic.co
# image pull policy
@@ -56,17 +60,19 @@ clamp:
enabled: true
cli:
enabled: false
-consul: # Consul Health Check Monitoring
+consul:
enabled: false
dcaegen2:
enabled: false
+dmaap:
+ enabled: false
esr:
enabled: false
log:
enabled: false
-message-router:
+sniro-emulator:
enabled: false
-mock:
+oof:
enabled: false
msb:
enabled: false
@@ -76,13 +82,18 @@ policy:
enabled: false
portal:
enabled: false
-robot: # Robot Health Check
+robot:
enabled: true
sdc:
enabled: false
sdnc:
enabled: false
-so: # Service Orchestrator
+
+ replicaCount: 1
+
+ mysql:
+ replicaCount: 1
+so:
enabled: true
replicaCount: 1
@@ -114,4 +125,4 @@ vfc:
vid:
enabled: false
vnfsdk:
- enabled: false \ No newline at end of file
+ enabled: false
diff --git a/kubernetes/onap/resources/environments/disable-allcharts.yaml b/kubernetes/onap/resources/environments/disable-allcharts.yaml
new file mode 100644
index 0000000000..0f669beaab
--- /dev/null
+++ b/kubernetes/onap/resources/environments/disable-allcharts.yaml
@@ -0,0 +1,75 @@
+# 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.
+
+
+# This override file is useful to test one or more subcharts.
+# It overrides the default ONAP parent chart behaviour to deploy
+# all of ONAP.
+#
+# Example use to enable a single subchart (from this directory):
+#
+# helm install local/onap -n onap --namespace onap -f disable-allcharts.yaml --set so.enabled=true
+
+#################################################################
+# Enable/disable and configure helm charts (ie. applications)
+# to customize the ONAP deployment.
+#################################################################
+aaf:
+ enabled: false
+aai:
+ enabled: false
+appc:
+ enabled: false
+clamp:
+ enabled: false
+cli:
+ enabled: false
+consul:
+ enabled: false
+dcaegen2:
+ enabled: false
+dmaap:
+ enabled: false
+esr:
+ enabled: false
+log:
+ enabled: false
+sniro-emulator:
+ enabled: false
+msb:
+ enabled: false
+multicloud:
+ enabled: false
+oof:
+ enabled: false
+policy:
+ 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
diff --git a/kubernetes/onap/templates/secrets.yaml b/kubernetes/onap/templates/secrets.yaml
index 2345be1972..145b55f36d 100644
--- a/kubernetes/onap/templates/secrets.yaml
+++ b/kubernetes/onap/templates/secrets.yaml
@@ -23,5 +23,5 @@ metadata:
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
- .dockercfg: {{ .Values.global.repositorySecret | default .Values.repositorySecret }}
-type: kubernetes.io/dockercfg \ No newline at end of file
+ .dockercfg: {{ include "common.repository.secret" . }}
+type: kubernetes.io/dockercfg
diff --git a/kubernetes/onap/values.yaml b/kubernetes/onap/values.yaml
index ee7d00b441..c5a56aa715 100644
--- a/kubernetes/onap/values.yaml
+++ b/kubernetes/onap/values.yaml
@@ -23,12 +23,19 @@ global:
# with other instances running within the same k8s cluster
nodePortPrefix: 302
- # image repositories
- repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
- # readiness check
+ # ONAP Repository
+ # Uncomment the following to enable the use of a single docker
+ # repository but ONLY if your repository mirrors all ONAP
+ # docker images. This includes all images from dockerhub and
+ # any other repository that hosts images for ONAP components.
+ #repository: nexus3.onap.org:10001
+ repositoryCred:
+ user: docker
+ password: docker
+
+ # readiness check - temporary repo until images migrated to nexus3
readinessRepository: oomk8s
- # logging agent
+ # logging agent - temporary repo until images migrated to nexus3
loggingRepository: docker.elastic.co
# image pull policy
@@ -42,6 +49,9 @@ global:
# flag to enable debugging - application support required
debugEnabled: false
+# Repository for creation of nexus3.onap.org secret
+repository: nexus3.onap.org:10001
+
#################################################################
# Enable/disable and configure helm charts (ie. applications)
@@ -53,21 +63,31 @@ aai:
enabled: true
appc:
enabled: true
+ config:
+ openStackType: OpenStackProvider
+ openStackName: OpenStack
+ openStackKeyStoneUrl: http://localhost:8181/apidoc/explorer/index.html
+ openStackServiceTenantName: default
+ openStackDomain: default
+ openStackUserName: admin
+ openStackEncryptedPassword: admin
clamp:
enabled: true
cli:
enabled: true
-consul: # Consul Health Check Monitoring
+consul:
enabled: true
dcaegen2:
enabled: true
+dmaap:
+ enabled: true
esr:
enabled: true
-log: # ONAP Logging ElasticStack
+log:
enabled: true
-message-router:
+sniro-emulator:
enabled: true
-mock:
+oof:
enabled: true
msb:
enabled: true
@@ -77,13 +97,18 @@ policy:
enabled: true
portal:
enabled: true
-robot: # Robot Health Check
+robot:
enabled: true
sdc:
enabled: true
sdnc:
enabled: true
-so: # Service Orchestrator
+
+ replicaCount: 1
+
+ mysql:
+ replicaCount: 1
+so:
enabled: true
replicaCount: 1
diff --git a/kubernetes/oof/Chart.yaml b/kubernetes/oof/Chart.yaml
new file mode 100755
index 0000000000..36d31253c4
--- /dev/null
+++ b/kubernetes/oof/Chart.yaml
@@ -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 Optimization Framework
+name: oof
+version: 2.0.0
diff --git a/kubernetes/oof/Makefile b/kubernetes/oof/Makefile
new file mode 100644
index 0000000000..72f97ef44c
--- /dev/null
+++ b/kubernetes/oof/Makefile
@@ -0,0 +1,16 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+make-has:
+ cd charts && helm dep up oof-has
diff --git a/kubernetes/oof/charts/oof-has/Chart.yaml b/kubernetes/oof/charts/oof-has/Chart.yaml
new file mode 100755
index 0000000000..a1ec5ac516
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/Chart.yaml
@@ -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 Homing and Allocation Service
+name: oof-has
+version: 2.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-api/Chart.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-api/Chart.yaml
new file mode 100755
index 0000000000..01d4eec0e3
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-api/Chart.yaml
@@ -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 Homing and Allocation Servicei - API
+name: oof-has-api
+version: 2.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/NOTES.txt b/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/NOTES.txt
new file mode 100755
index 0000000000..b3622e396a
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/NOTES.txt
@@ -0,0 +1,33 @@
+# 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 }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.fullname" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml
new file mode 100755
index 0000000000..2709371cb4
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/deployment.yaml
@@ -0,0 +1,109 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ 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.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-api
+ - --port={{ .Values.service.internalPort }}
+ - --
+ - --config-file=/usr/local/bin/conductor.conf
+ 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
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ 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: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/service.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/service.yaml
new file mode 100755
index 0000000000..58d1ab68b4
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-api/templates/service.yaml
@@ -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.
+
+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:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ 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/oof/charts/oof-has/charts/oof-has-api/values.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-api/values.yaml
new file mode 100755
index 0000000000..6114de329e
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-api/values.yaml
@@ -0,0 +1,37 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+service:
+ type: NodePort
+ name: oof-has-api
+ externalPort: 8091
+ internalPort: 8091
+ nodePort: 75
+ portName: oof-has-api
+ingress:
+ enabled: false
+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
+resources: {}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/.helmignore b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/Chart.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/Chart.yaml
new file mode 100644
index 0000000000..501bd99dbb
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/Chart.yaml
@@ -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: OOF-HAS Cassandra
+name: oof-has-cassandra
+version: 2.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/zzz_conductor.cql b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/zzz_conductor.cql
new file mode 100644
index 0000000000..c2593eb1dc
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/zzz_conductor.cql
@@ -0,0 +1,90 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+CREATE KEYSPACE conductor WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'} AND durable_writes = true;
+
+CREATE TABLE conductor.plans (
+ id text PRIMARY KEY,
+ created bigint,
+ message text,
+ name text,
+ recommend_max int,
+ reservation_counter int,
+ reservation_owner text,
+ solution text,
+ solver_counter int,
+ solver_owner text,
+ status text,
+ template text,
+ timeout int,
+ translation text,
+ translation_counter int,
+ translation_owner text,
+ updated bigint,
+ vector_ts text
+);
+
+CREATE INDEX conductor_plans_index ON conductor.plans(status);
+
+CREATE KEYSPACE conductor_rpc WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'} AND durable_writes = true;
+
+CREATE TABLE conductor_rpc.controller (
+ id text PRIMARY KEY,
+ action text,
+ args text,
+ created bigint,
+ ctxt text,
+ failure text,
+ method text,
+ owner text,
+ response text,
+ status text,
+ updated bigint,
+ vector_ts text
+);
+
+CREATE TABLE conductor_rpc.data (
+ id text PRIMARY KEY,
+ action text,
+ args text,
+ created bigint,
+ ctxt text,
+ failure text,
+ method text,
+ owner text,
+ response text,
+ status text,
+ updated bigint,
+ vector_ts text
+);
+
+INSERT INTO admin.keyspace_master (
+uuid, application_name, is_aaf, is_api, keyspace_name, password,username)
+VALUES ( now(), 'conductor', False, True, 'conductor', 'c0nduct0r', 'conductor');
+
+INSERT INTO admin.keyspace_master (
+uuid, application_name, is_aaf, is_api, keyspace_name, password, username)
+VALUES( now(), 'conductor', False, True, 'conductor_rpc', 'c0nduct0r', 'conductor');
+
+CREATE ROLE IF NOT EXISTS conductor WITH PASSWORD = 'c0nduct0r' AND LOGIN = true;
+
+GRANT ALL PERMISSIONS on KEYSPACE conductor to 'conductor';
+
+GRANT ALL PERMISSIONS on KEYSPACE conductor_rpc to 'conductor';
+
+INSERT INTO conductor.plans (id, created, message, name, recommend_max, solution, status, template,timeout, translation,updated) VALUES('healthcheck',1479482603641,'','foo',1,'{"healthcheck": " healthcheck"}','solved','{"healthcheck": "healthcheck"}',3600,'{"healthcheck": "healthcheck"}',1484324150629);
+
+
+
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt
new file mode 100644
index 0000000000..8f907c046c
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/NOTES.txt
@@ -0,0 +1,33 @@
+# 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 }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml
new file mode 100644
index 0000000000..e0fec186bb
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/configmap.yaml
@@ -0,0 +1,22 @@
+# 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" . }}-docker-entry-initd
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/cassandra/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml
new file mode 100644
index 0000000000..63f85c6640
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/deployment.yaml
@@ -0,0 +1,104 @@
+# 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: {{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ - containerPort: {{ .Values.service.internalPort4 }}
+ - containerPort: {{ .Values.service.internalPort5 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: CASSUSER
+ value: "{{ .Values.config.cassandraUsername }}"
+ - name: CASSPASS
+ value: "{{ .Values.config.cassandraPassword }}"
+ - name: POD_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: cassandra-docker-entrypoint-initdb
+ mountPath: /docker-entrypoint-initdb.d/zzz_conductor.cql
+ subPath: zzz_conductor.cql
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/data
+ resources:
+{{ 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: cassandra-docker-entrypoint-initdb
+ configMap:
+ name: {{ include "common.fullname" . }}-docker-entry-initd
+ {{- if .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml
new file mode 100644
index 0000000000..184728f8ad
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pv.yaml
@@ -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/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/pvc.yaml
@@ -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/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml
new file mode 100644
index 0000000000..12174314d5
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/templates/service.yaml
@@ -0,0 +1,69 @@
+# 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 }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: {{ .Values.service.portName }}4
+ - port: {{ .Values.service.externalPort5 }}
+ targetPort: {{ .Values.service.internalPort5 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
+ name: {{ .Values.service.portName }}5
+
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ name: {{ .Values.service.portName }}4
+ - port: {{ .Values.service.externalPort5 }}
+ targetPort: {{ .Values.service.internalPort5 }}
+ name: {{ .Values.service.portName }}5
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/values.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/values.yaml
new file mode 100644
index 0000000000..adae0405b2
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-cassandra/values.yaml
@@ -0,0 +1,92 @@
+# 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: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/music/cassandra_music:3.0.0
+pullPolicy: Always
+
+# application configuration
+config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## 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: oof/cassandra/data
+service:
+ type: ClusterIP
+ name: oof-has-cassandra
+ portName: oof-has-cassandra
+ externalPort: 9160
+ internalPort: 9160
+ externalPort2: 7000
+ internalPort2: 7000
+ externalPort3: 7001
+ internalPort3: 7001
+ externalPort4: 7199
+ internalPort4: 7199
+ externalPort5: 9042
+ internalPort5: 9042
+
+ingress:
+ enabled: false
+
+resources: {}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-controller/Chart.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-controller/Chart.yaml
new file mode 100755
index 0000000000..d0e124e2ca
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-controller/Chart.yaml
@@ -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 Homing and Allocation Sservice - Controller
+name: oof-has-controller
+version: 2.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml
new file mode 100755
index 0000000000..5535f90631
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-controller/templates/deployment.yaml
@@ -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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ 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.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-controller
+ - --config-file=/usr/local/bin/conductor.conf
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ - mountPath: /usr/local/bin/healthy.sh
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthy.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: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ - key: healthy.sh
+ path: healthy.sh
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-controller/values.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-controller/values.yaml
new file mode 100755
index 0000000000..57c56d5e44
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-controller/values.yaml
@@ -0,0 +1,30 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+ingress:
+ enabled: false
+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
+resources: {}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-data/Chart.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-data/Chart.yaml
new file mode 100755
index 0000000000..37d9f0dd8c
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-data/Chart.yaml
@@ -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 Homing and Allocation Service - Data Component
+name: oof-has-data
+version: 2.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml
new file mode 100755
index 0000000000..4effba825e
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-data/templates/deployment.yaml
@@ -0,0 +1,129 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ 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.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-data
+ - --config-file=/usr/local/bin/conductor.conf
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ - mountPath: /usr/local/bin/healthy.sh
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthy.sh
+ - mountPath: /usr/local/bin/aai_cert.cer
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: aai_cert.cer
+ - mountPath: /usr/local/bin/aai_key.key
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: aai_key.key
+ - mountPath: /usr/local/bin/bundle.pem
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: bundle.pem
+ 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: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ - key: healthy.sh
+ path: healthy.sh
+ - key: aai_cert.cer
+ path: aai_cert.cer
+ - key: aai_key.key
+ path: aai_key.key
+ - key: bundle.pem
+ path: bundle.pem
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-data/values.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-data/values.yaml
new file mode 100755
index 0000000000..57c56d5e44
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-data/values.yaml
@@ -0,0 +1,30 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+ingress:
+ enabled: false
+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
+resources: {}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/Chart.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-music/Chart.yaml
new file mode 100644
index 0000000000..a6653e4781
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/Chart.yaml
@@ -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 OOF-MUSIC Container
+name: oof-has-music
+version: 2.5.3
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/requirements.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-music/requirements.yaml
new file mode 100644
index 0000000000..1e8f788318
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/requirements.yaml
@@ -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' \ No newline at end of file
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/music.properties b/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/music.properties
new file mode 100644
index 0000000000..fe338a7e87
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/music.properties
@@ -0,0 +1,27 @@
+# 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.
+
+my.public.ip=localhost
+all.public.ips=localhost
+my.id=0
+all.ids=0
+#######################################
+# Optional current values are defaults
+#######################################
+zookeeper.host=oof-has-zk
+cassandra.host=oof-has-cassandra
+cassandra.user=root
+cassandra.password=Aa123456
+# AAF Endpoint if using AAF
+aaf.endpoint.url=https://aaf.api.simpledemo.onap.org
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh b/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh
new file mode 100755
index 0000000000..1648f9a1b0
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/resources/config/startup.sh
@@ -0,0 +1,35 @@
+# 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.
+
+OUT=$(curl -o /dev/null -s -w "%{http_code}\n" \
+ http://localhost:8080/MUSIC/rest/v2/admin/onboardAppWithMusic \
+ -H 'Cache-Control: no-cache' \
+ -H 'Content-Type: application/json' \
+ -H 'Postman-Token: 705d4a9d-aaf2-40b4-914a-e0ce1a79534c' \
+ -d '{
+ "appname": "conductor",
+ "userId" : "conductor",
+ "isAAF" : false,
+ "password" : "c0nduct0r"
+}
+')
+
+if [ ${OUT} = "200" ]; then
+ echo "Success"
+ echo 1 > /tmp/onboarded
+ exit 0;
+else
+ echo "Failure"
+ exit 1;
+fi
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt
new file mode 100644
index 0000000000..70f97db28e
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/NOTES.txt
@@ -0,0 +1,33 @@
+# 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 }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdc/templates/sdc-fe-configmap.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/configmap.yaml
index 648bec40e6..4ccc7cc526 100644
--- a/kubernetes/sdc/templates/sdc-fe-configmap.yaml
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/configmap.yaml
@@ -12,12 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableSdcSdcFe }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdc-fe-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/sdc-fe/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/deployment.yaml
new file mode 100644
index 0000000000..17114d6480
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/deployment.yaml
@@ -0,0 +1,86 @@
+# 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:
+ initContainers:
+# War Container
+ - name: "{{ include "common.name" . }}-war"
+ image: "{{ include "common.repository" . }}/{{ .Values.warImage }}" #"
+ command: ["cp","/app/MUSIC.war","/webapps"]
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ volumeMounts:
+ - mountPath: /webapps
+ name: shared-data
+ containers:
+ # Tomcat Container
+ - 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 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:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/tomcat/webapps
+ name: shared-data
+ - name: properties-music
+ mountPath: /opt/app/music/etc/music.properties
+ subPath: music.properties
+ - name: properties-music
+ mountPath: /opt/app/music/startup.sh
+ subPath: startup.sh
+ volumes:
+ - name: shared-data
+ emptyDir: {}
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties-music
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/service.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/service.yaml
new file mode 100644
index 0000000000..58d1ab68b4
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/templates/service.yaml
@@ -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.
+
+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:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ 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/oof/charts/oof-has/charts/oof-has-music/values.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-music/values.yaml
new file mode 100644
index 0000000000..d52c3c0321
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-music/values.yaml
@@ -0,0 +1,72 @@
+# 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
+image: library/tomcat:8.5
+pullPolicy: Always
+warImage: onap/music/music:latest
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ usernameCassandra: cassandra1
+ passwordCassandra: cassandra1
+
+# 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: oof-has-music
+ externalPort: 8080
+ internalPort: 8080
+ nodePort: 76
+ portName: oof-has-music
+ingress:
+ enabled: false
+
+resources: {}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/Chart.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/Chart.yaml
new file mode 100755
index 0000000000..e74c556dce
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/Chart.yaml
@@ -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 Homing and Allocation Sevice - Reservation Component
+name: oof-has-reservation
+version: 2.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml
new file mode 100755
index 0000000000..8b610219b0
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/templates/deployment.yaml
@@ -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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ 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.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-reservation
+ - --config-file=/usr/local/bin/conductor.conf
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ readinessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ {{ end -}}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ - mountPath: /usr/local/bin/healthy.sh
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthy.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: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ - key: healthy.sh
+ path: healthy.sh
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/values.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/values.yaml
new file mode 100755
index 0000000000..57c56d5e44
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-reservation/values.yaml
@@ -0,0 +1,30 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+ingress:
+ enabled: false
+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
+resources: {}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-solver/Chart.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-solver/Chart.yaml
new file mode 100755
index 0000000000..ebad46b7a7
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-solver/Chart.yaml
@@ -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 Homing and Allocation Service - Solver Component
+name: oof-has-solver
+version: 2.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml
new file mode 100755
index 0000000000..9f9b4dbae5
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-solver/templates/deployment.yaml
@@ -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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - oof-has-music
+ 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.global.image.optf_has }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - python
+ args:
+ - /usr/local/bin/conductor-solver
+ - --config-file=/usr/local/bin/conductor.conf
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ exec:
+ command:
+ - cat
+ - /usr/local/bin/healthy.sh
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /usr/local/bin/conductor.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: conductor.conf
+ - mountPath: /usr/local/bin/log.conf
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: log.conf
+ - mountPath: /usr/local/bin/healthy.sh
+ name: {{ .Values.global.commonConfigPrefix }}-config
+ subPath: healthy.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: {{ .Values.global.commonConfigPrefix }}-config
+ configMap:
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ items:
+ - key: conductor.conf
+ path: conductor.conf
+ - key: log.conf
+ path: log.conf
+ - key: healthy.sh
+ path: healthy.sh
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-solver/values.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-solver/values.yaml
new file mode 100755
index 0000000000..57c56d5e44
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-solver/values.yaml
@@ -0,0 +1,30 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+ingress:
+ enabled: false
+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
+resources: {}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/Chart.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/Chart.yaml
new file mode 100644
index 0000000000..95033bb35d
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/Chart.yaml
@@ -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 OOF Zookeeper
+name: oof-has-zookeeper
+version: 2.0.0
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt
new file mode 100644
index 0000000000..8f907c046c
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/NOTES.txt
@@ -0,0 +1,33 @@
+# 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 }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml
new file mode 100644
index 0000000000..c161f73231
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/deployment.yaml
@@ -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: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: {{ include "common.repository" . }}/{{ .Values.image }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ resources:
+{{ 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
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml
new file mode 100644
index 0000000000..4e4c1c8358
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/templates/service.yaml
@@ -0,0 +1,38 @@
+# 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.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }} \ No newline at end of file
diff --git a/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/values.yaml b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/values.yaml
new file mode 100644
index 0000000000..b06a67b71b
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/charts/oof-has-zookeeper/values.yaml
@@ -0,0 +1,50 @@
+# 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: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: zookeeper:3.4
+pullPolicy: Always
+
+# 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: ClusterIP
+ name: oof-has-zk
+ externalPort: 2181
+ internalPort: 2181
+ portName: oof-has-zookeeper
+ingress:
+ enabled: false
+resources: {}
diff --git a/kubernetes/oof/charts/oof-has/requirements.yaml b/kubernetes/oof/charts/oof-has/requirements.yaml
new file mode 100755
index 0000000000..ce82a2f838
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/requirements.yaml
@@ -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/oof/charts/oof-has/resources/config/aai_cert.cer b/kubernetes/oof/charts/oof-has/resources/config/aai_cert.cer
new file mode 100755
index 0000000000..4c6eb916e6
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/resources/config/aai_cert.cer
@@ -0,0 +1,25 @@
+-----BEGIN CERTIFICATE-----
+MIIEKjCCAxKgAwIBAgIBHjANBgkqhkiG9w0BAQsFADBHMQswCQYDVQQGEwJVUzEN
+MAsGA1UECgwET05BUDEOMAwGA1UECwwFT1NBQUYxGTAXBgNVBAMMEGludGVybWVk
+aWF0ZUNBXzEwHhcNMTgwNDI1MTIxMzAxWhcNMTkwNDIwMTIxMzAxWjBtMQswCQYD
+VQQGEwJVUzENMAsGA1UECgwET05BUDEZMBcGA1UECwwQb29mQG9vZi5vbmFwLm9y
+ZzEOMAwGA1UECwwFT1NBQUYxJDAiBgNVBAMMG29vZi5hcGkuc2ltcGxlZGVtby5v
+bmFwLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANGpQUtgLXG3
+dVikd/QC2Q24wzeTOeZzbx3PnidNYZT5K0sJ/TdnZF6O/4+9gXQ6AQS2Q8wfQ009
+MQAA5vhUaq5yZ2K+XAtEFGln1TxTFpGu3WDOwQ800Vw18Dk8WidrkzDJv489Bn1f
+SSaPC0IaRB0K1d8BD63ZHgsuEY8lt31DX2wFWJcfN9mxNDzuLTZoLxtxKsedoZKH
+rsOOILwXOhwuunfx40i6RQN/pFX6C2i8dtOA5OwUm9Q1RrZ2Tv1Uf4IURriH6bfZ
+5n50yxTuL22TMYXsF/ohrdgwacuC0aV9ZSGhIZUJPyHVg7+QTBioHmoUJInVKuIx
+kkC4lENbLYUCAwEAAaOB+jCB9zAJBgNVHRMEAjAAMBEGCWCGSAGG+EIBAQQEAwIG
+wDAzBglghkgBhvhCAQ0EJhYkT3BlblNTTCBHZW5lcmF0ZWQgU2VydmVyIENlcnRp
+ZmljYXRlMB0GA1UdDgQWBBQwbU5oHU2iYHCoVz4hFCvBW59cdTBUBgNVHSMETTBL
+gBQd5lldG54KOKRipsGF8/PP1vGX6qEwpC4wLDEOMAwGA1UECwwFT1NBQUYxDTAL
+BgNVBAoMBE9OQVAxCzAJBgNVBAYTAlVTggEBMA4GA1UdDwEB/wQEAwIF4DAdBgNV
+HSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBADEa
+0VuxoFIygeQTqlizpHNwfApPmlAVSKDTWuEu4rhJs8GT61EuWZQPygXEUHCYmGvJ
+GMwEGGIDGiQqxMqlqng46gksNJbi1ktXr6Du18qW7gziUd84ve8KcecjZru1Sk1e
+UJ/6WEQVE17CHKcnzQZsMDakgP+61VgKbk5NlkeF/Qh4L6/3jY7g+xoXqaId5RT9
+BetmH/cMsj33lxQTs0fcXTbAQd6BX5ug854OJ1mU4ngJnNBdmn9Ow1bB71ohf5Xv
+OEYX8+khjgjlmM0u1hBRL4qViv3y2Gzhpm1M8cETMDj4g0zIJytzIYMxO8XvDPCF
+YmVZHXJDLsCogSOmmh0=
+-----END CERTIFICATE----- \ No newline at end of file
diff --git a/kubernetes/oof/charts/oof-has/resources/config/aai_key.key b/kubernetes/oof/charts/oof-has/resources/config/aai_key.key
new file mode 100755
index 0000000000..246ff6d8cb
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/resources/config/aai_key.key
@@ -0,0 +1,30 @@
+-----BEGIN ENCRYPTED PRIVATE KEY-----
+MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIvxjZPeQVkRACAggA
+MBQGCCqGSIb3DQMHBAhWqwQCjZFCrASCBMjWG5wsC1WFJISJ5odMHzYOWOKLpaDP
+7a/dxnBrV6gId/DTmzoqtiBCmQRqhnUuYok98DNUFGjR9JqztNNOf5eslzqCugsh
+zVwCvsJYKvxxJ4Q8tow3DKx28I6EmOvwudMsL9c30OxpEWdlWmyFimu5JDdDvWUH
+S0fWKebQETZ7lptiRX2IXhC3Ye6Wu/DowDYc5L4Z/Q8nwncMB3n2ntMX10pBrura
+15/R18AvG5cDwcasTXz5WKIB/K2onvJfW0so2M8jApu2DF4MpEIN9Z973uTNFXcL
+dgHKWtIl2WO38coedaXUILgsxLSSU27TG4F+7QMGjiKXUSWjN9+TD+8zWye/9OIW
+qfVtoh+n7lWtzC3Axo1OmPInCkFb+I7QaDsJgsUn+ZWap7FVJFrYiz20UTzYYgAK
+OukCgKiJTHOhTT1k0km34ROPmqOk6mH7IkioUSTmoP362RpIVTbKv2e5GKzhYfkk
+27W3RRG/qoZLUTU2AaAyoGZlzXDkBFw2g4vxnhcfHeXX6jyJyQWOOOeRJ5B6uc+Y
+4XmKKJvq5pFlxUDmVCZLRzjwpvYPTQwTQQ9t7kEZFI8B7TMkDqv62YlXyoWNDwPq
+yLvDwPDicx33AZor8N/eDgIOE+TXQ0vEyphf0c9OcgneeJmEtn7IskEahv32ruMQ
+uFAAuIUmQfXPNMXu3MYIUItvZDm3RUk3YJDj9c8YtvxDlzLytHu5QYJ3v7rvo+mG
+XKwmnZouaNRLw5Y7Mff07BuTPuttyNadacuJtUjvv8qVOIeuxQ7nku6yqKKLTeJr
+8E4/tYyZ15FIo3hWi16h3zyZ9LiHhhe7d2XYSVMuzuD4jkIdHbdgiKsCJn9mI5PF
+VpDF34w1Fjwv7Gu32MRMpJijAW10ENaP1O2izr9l8jwo+CLgi5qa6a2YTYAZooqt
+UjTLfEIQKbwFbq5L9Eb1uRw1lRR9SxcxdNQdY+mtx0x2BSmXVUEcyi6OG/8Lzf/1
+9VoE5UPfhSE7ogfbL8eraFlQmKL8f3h3Jx/XDvvKC8YXxgooEhV0BsofXmLdF0BK
+bhXR1/JptLz8CJjtlBWQkmqj+ONOHFA9/4YHMNn5T1PBLNzQCZSjQXrDKxowLDsI
+ozUyZ080c2LrJCf6zj6+fB3LDvHYfJ6LnYASCHJlNS0NVmRPiYB/dmoqF/iyAEjp
+cKUUrbhs6U95aPMo0pPSCuhLKiibCo3Vz/9dvGb7pr6aj/ehOjrtKtGlYukBqNkS
+RQK2kkL8IO+iPWs3aCnEhfeS+wNBMAtI/TEw6As2zseyb3/SylHjek4s1gs9MPdw
+c3o2ArwMzmP0sfFIjYz+AyQm+5i/LSnkNjG0OU9ekGXy7Z4HAcko2Dv8/SmOVapP
+cf8c55RUDlYJh9Ltn0W5fuNA6dykV7f9s8BIrZcnzTN+lifNhNlEYYcmyZwlCcX4
+NBLoH+ENW+Q7+nuhGcf52j/XgTaPZ0Eec8ZJdK7FzVDN4DWKM4KHD7DgpkOR7TZl
+IKGNtdvb3SaGG83YlJhRkkr0C2KvB0Mz2dkAhOKX3NkBr5fY62IvuMdqD7VDjGAw
+h/GBn0k5+gpVP0Uh6yWEla3CjM9GnUuMVcwIUAYSeW2rFu4iapK0gBwguR91cM1N
+MA8=
+-----END ENCRYPTED PRIVATE KEY-----
diff --git a/kubernetes/oof/charts/oof-has/resources/config/bundle.pem b/kubernetes/oof/charts/oof-has/resources/config/bundle.pem
new file mode 100755
index 0000000000..60121e751b
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/resources/config/bundle.pem
@@ -0,0 +1,26 @@
+-----BEGIN CERTIFICATE-----
+MIIEVDCCAjygAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMQ4wDAYDVQQLDAVPU0FB
+RjENMAsGA1UECgwET05BUDELMAkGA1UEBhMCVVMwHhcNMTgwNDA1MTQxNTQwWhcN
+MTgwNjA0MTQxNTQwWjBHMQswCQYDVQQGEwJVUzENMAsGA1UECgwET05BUDEOMAwG
+A1UECwwFT1NBQUYxGTAXBgNVBAMMEGludGVybWVkaWF0ZUNBXzEwggEiMA0GCSqG
+SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCY3YPA/YQdz4kaZQzdRzWNjmn33WYAWZ8+
+EIz3PhkEzk7M1q9N7Icx2LvozMj4VH0yGz/HYlliHhw26ZRsjYMSR8zATsXl4oW9
+w9BrjuyvM3w8Ptxe8WbUFF9LJDGyXPeVvcXVo0iyh3QYPWC/AWmomN19MvBFN5vH
+AvEG/7qtonViNfISW9Gr9LpXB0foCmUDBu/lV+SwRGajoCPqdZhZ6/L6/yqDvha2
+wsML/UZXlGhXAedt/xOKmT/dSXx/I0vWBVp6Tq4zu87yCvd+I6Tpa5HjttA2I5EV
+zdHX+JYBPBBcVCyO9YQOYjJuoVDE4D5etY6dEipKG/KZF/rqAoqZAgMBAAGjZjBk
+MB0GA1UdDgQWBBQd5lldG54KOKRipsGF8/PP1vGX6jAfBgNVHSMEGDAWgBRTVTPy
+S+vQUbHBeJrBKDF77+rtSTASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQE
+AwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAmgeiitBDi/YEqFh2Cqp0VIEqw8hiuV87
+rADQWMK4hv5WXl3KJTjFAnWsYFUKrm6s1jNH16FyGExUQgwggob0Vt+MHiUs36jU
+kyret/uE5qrjz+/J+i2XG6s1oKcDRVD/jU4qBygZWFBMuwl7sz8IEvaYXGM43s96
+Du3UF9E+V3aMppqkGWz6MnrTmANnWAlDAMeifcoexjrpxiKbp8f49HX1UzwFoeEg
+RnVwNqgDWT66yGV6mbNl6FpE/U81RpCRY1ZJDeVTxbqIaG/UPV4hpQ+BEVBDF+cb
+rGsvsNYYpWx5srIQ7WtGKIlaDFbfWPwnHDHegzr8ypAS3KNWULE+QXCbHWtB+b0Y
+WhP/2F6Jjb+ByvJqQoE+nHEYBeUOZUUZC4IuQFNJ5Wy5P0CNXdheiWhdrBmG02Gy
+KMi0FJx6BEoWM2xcdl6bn5j9mhF4TX7zgepNWlgTra4Z8Oz8iqbQk33/s2OKM4ic
+6ZezUYhNp+MuUt4Se+ufNcGV65jnUKeROtWzNLwP+xwglEFlG8aNiAORthd7QJuT
+Ey2cX7H7f38ENQ5YCriUk1nVLO9F66l/rNRzYZgQzRI3IvDW8vyM2TLW2mcZNsaf
+qjFMcCDweV2FRb8eTbmWzzB2/xTVpGzVJqzwgE+U7UtJx5CZS3wPkvXuEgvcg1tY
+m1r4NGYFvLM=
+-----END CERTIFICATE----- \ No newline at end of file
diff --git a/kubernetes/oof/charts/oof-has/resources/config/conductor.conf b/kubernetes/oof/charts/oof-has/resources/config/conductor.conf
new file mode 100755
index 0000000000..4d32deea33
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/resources/config/conductor.conf
@@ -0,0 +1,357 @@
+# 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]
+
+#
+# From conductor
+#
+
+# Configuration file for WSGI definition of API. (string value)
+#api_paste_config = api_paste.ini
+
+# Music keyspace for content (string value)
+keyspace = conductor
+
+#
+# From oslo.log
+#
+
+# If set to true, the logging level will be set to DEBUG instead of the default
+# INFO level. (boolean value)
+# Note: This option can be changed without restarting.
+debug = true
+
+# DEPRECATED: If set to false, the logging level will be set to WARNING instead
+# of the default INFO level. (boolean value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
+#verbose = true
+
+# The name of a logging configuration file. This file is appended to any
+# existing logging configuration files. For details about logging configuration
+# files, see the Python logging module documentation. Note that when logging
+# configuration files are used then all logging configuration is set in the
+# configuration file and other logging configuration options are ignored (for
+# example, logging_context_format_string). (string value)
+# Note: This option can be changed without restarting.
+# Deprecated group/name - [DEFAULT]/log_config
+# log_config_append = /usr/local/bin/log.conf
+
+# Defines the format string for %%(asctime)s in log records. Default:
+# %(default)s . This option is ignored if log_config_append is set. (string
+# value)
+#log_date_format = %Y-%m-%d %H:%M:%S
+
+# (Optional) Name of log file to send logging output to. If no default is set,
+# logging will go to stderr as defined by use_stderr. This option is ignored if
+# log_config_append is set. (string value)
+# Deprecated group/name - [DEFAULT]/logfile
+#log_file = <None>
+
+# (Optional) The base directory used for relative log_file paths. This option
+# is ignored if log_config_append is set. (string value)
+# Deprecated group/name - [DEFAULT]/logdir
+#log_dir = <None>
+
+# Uses logging handler designed to watch file system. When log file is moved or
+# removed this handler will open a new log file with specified path
+# instantaneously. It makes sense only if log_file option is specified and
+# Linux platform is used. This option is ignored if log_config_append is set.
+# (boolean value)
+#watch_log_file = false
+
+# Use syslog for logging. Existing syslog format is DEPRECATED and will be
+# changed later to honor RFC5424. This option is ignored if log_config_append
+# is set. (boolean value)
+#use_syslog = false
+
+# Syslog facility to receive log lines. This option is ignored if
+# log_config_append is set. (string value)
+#syslog_log_facility = LOG_USER
+
+# Log output to standard error. This option is ignored if log_config_append is
+# set. (boolean value)
+#use_stderr = false
+
+# Format string to use for log messages with context. (string value)
+#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
+
+# Format string to use for log messages when context is undefined. (string
+# value)
+#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
+
+# Additional data to append to log message when logging level for the message
+# is DEBUG. (string value)
+#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
+
+# Prefix each line of exception output with this format. (string value)
+#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
+
+# Defines the format string for %(user_identity)s that is used in
+# logging_context_format_string. (string value)
+#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
+
+# List of package logging levels in logger=LEVEL pairs. This option is ignored
+# if log_config_append is set. (list value)
+#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
+
+# Enables or disables publication of error events. (boolean value)
+#publish_errors = false
+
+# The format for an instance that is passed with the log message. (string
+# value)
+#instance_format = "[instance: %(uuid)s] "
+
+# The format for an instance UUID that is passed with the log message. (string
+# value)
+#instance_uuid_format = "[instance: %(uuid)s] "
+
+# Interval, number of seconds, of log rate limiting. (integer value)
+#rate_limit_interval = 0
+
+# Maximum number of logged messages per rate_limit_interval. (integer value)
+#rate_limit_burst = 0
+
+# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
+# or empty string. Logs with level greater or equal to rate_limit_except_level
+# are not filtered. An empty string means that all levels are filtered. (string
+# value)
+#rate_limit_except_level = CRITICAL
+
+# Enables or disables fatal status of deprecations. (boolean value)
+#fatal_deprecations = false
+
+
+[aai]
+
+#
+# From conductor
+#
+
+# Interval with which to refresh the local cache, in minutes. (integer value)
+cache_refresh_interval = 1
+complex_cache_refresh_interval = 60
+
+# Data Store table prefix. (string value)
+#table_prefix = aai
+
+# Base URL for A&AI, up to and not including the version, and without a
+# trailing slash. (string value)
+server_url = https://oof.api.simpledemo.onap.org:8443/aai
+
+# The version of A&AI in v# format. (string value)
+server_url_version = v11
+
+# SSL/TLS certificate file in pem format. This certificate must be registered
+# with the A&AI endpoint. (string value)
+certificate_file = /usr/local/bin/aai_cert.cer
+
+# Private Certificate Key file in pem format. (string value)
+certificate_key_file = /usr/local/bin/aai_key.key
+
+# Certificate Authority Bundle file in pem format. Must contain the appropriate
+# trust chain for the Certificate file. (string value)
+#certificate_authority_bundle_file = /opt/app/conductor/etc/certs/ca_bundle.pem
+certificate_authority_bundle_file =/usr/local/bin/bundle.pem
+
+[api]
+
+#
+# From conductor
+#
+
+# Toggle Pecan Debug Middleware. (boolean value)
+#pecan_debug = false
+
+# Default maximum number of items returned by API request. (integer value)
+# Minimum value: 1
+#default_api_return_limit = 100
+
+[conductor_api]
+
+# Basic Authentication Username (string value)
+username = admin1
+
+# Basic Authentication Password (string value)
+password = plan.15
+
+basic_auth_secure = False
+
+[controller]
+
+#
+# From conductor
+#
+
+# Timeout for planning requests. Default value is 10. (integer value)
+# Minimum value: 1
+timeout = 200
+
+# Maximum number of result sets to return. Default value is 1. (integer value)
+# Minimum value: 1
+#limit = 1
+
+# Number of workers for controller service. Default value is 1. (integer value)
+# Minimum value: 1
+#workers = 1
+
+# Time between checking for new plans. Default value is 1. (integer value)
+# Minimum value: 1
+#polling_interval = 1
+concurrent = true
+
+
+[inventory_provider]
+
+#
+# From conductor
+#
+
+# Extensions list to use (list value)
+#extensions = aai
+
+
+[messaging_server]
+
+#
+# From conductor
+#
+
+# Music keyspace for messages (string value)
+keyspace = conductor_rpc
+
+# Wait interval while checking for a message response. Default value is 1
+# second. (integer value)
+# Minimum value: 1
+#check_interval = 1
+
+# Overall message response timeout. Default value is 10 seconds. (integer
+# value)
+# Minimum value: 1
+timeout = 300
+
+# Number of workers for messaging service. Default value is 1. (integer value)
+# Minimum value: 1
+#workers = 1
+
+# Time between checking for new messages. Default value is 1. (integer value)
+# Minimum value: 1
+#polling_interval = 1
+
+# Log debug messages. Default value is False. (boolean value)
+#debug = false
+
+
+[music_api]
+
+#
+# From conductor
+#
+music_new_version = True
+# Base URL for Music REST API without a trailing slash. (string value)
+server_url = http://oof-has-music:8080/MUSIC/rest/v2
+version = v2
+music_version = "2.5.3"
+aafuser = conductor
+aafpass = c0nduct0r
+aafns = conductor
+
+# DEPRECATED: List of hostnames (round-robin access) (list value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
+# Reason: Use server_url instead
+#hostnames = <None>
+
+# DEPRECATED: Port (integer value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
+# Reason: Use server_url instead
+#port = <None>
+
+# DEPRECATED: Path (string value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
+# Reason: Use server_url instead
+#path = <None>
+
+# Lock timeout (integer value)
+#lock_timeout = 10
+replication_factor = 1
+# Log debug messages. Default value is False. (boolean value)
+#debug = false
+
+# Use mock API (boolean value)
+#mock = false
+
+# Socket connection timeout (floating point value)
+connect_timeout = 3.05
+
+# Socket read timeout (floating point value)
+read_timeout = 12.05
+
+
+
+[sdnc]
+
+#
+# From conductor
+#
+
+# Interval with which to refresh the local cache, in minutes. (integer value)
+#cache_refresh_interval = 1440
+
+# Data Store table prefix. (string value)
+#table_prefix = sdnc
+
+# Base URL for SDN-C, up to and including the version. (string value)
+server_url = https://sdncodl-conexus-e2e.ecomp.cci.att.com:8543/restconf/
+
+# Basic Authentication Username (string value)
+username = admin
+
+# Basic Authentication Password (string value)
+password = sdnc.15
+
+
+[service_controller]
+
+#
+# From conductor
+#
+
+# Extensions list to use (list value)
+#extensions = sdnc
+
+
+[solver]
+
+#
+# From conductor
+#
+
+# Number of workers for solver service. Default value is 1. (integer value)
+# Minimum value: 1
+#workers = 1
+
+# Set to True when solver will run in active-active mode. When set to False,
+# solver will restart any orphaned solving requests at startup. (boolean value)
+#concurrent = false
+concurrent = true
+
+
+
+[reservation]
+concurrent = true
+
diff --git a/kubernetes/message-router/values.yaml b/kubernetes/oof/charts/oof-has/resources/config/healthy.sh
index 68251471e6..9b53975d63 100644..100755
--- a/kubernetes/message-router/values.yaml
+++ b/kubernetes/oof/charts/oof-has/resources/config/healthy.sh
@@ -12,17 +12,18 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-dmaapReplicas: 1
-kafkaReplicas: 1
-zookeeperReplicas: 1
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- dmaap: attos/dmaap:latest
- kafka: wurstmeister/kafka:latest
- zookeeper: wurstmeister/zookeeper:latest
- config: oomk8s/config-init:2.0.0-SNAPSHOT
+#!/bin/bash
+# Controller is a process that reads from Music Q
+# It uses no ports (TCP or HTTP). The PROB will check
+# if the controller process exists or not. In case
+# it exists, it will send 0, else send 1 so k8s can i
+# restart the container
+
+pid="$(pgrep -f '/usr/local/bin/conductor')"
+if [ -z "$pid" ]
+then
+ echo 1
+else
+ echo 0
+fi
diff --git a/kubernetes/oof/charts/oof-has/resources/config/log.conf b/kubernetes/oof/charts/oof-has/resources/config/log.conf
new file mode 100755
index 0000000000..4dc2793c2c
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/resources/config/log.conf
@@ -0,0 +1,78 @@
+# 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.
+
+[loggers]
+keys=root
+
+[handlers]
+keys=trfhand,consoleHandler,audithand,metrichand,errhand,debughand
+
+[logger_root]
+level=NOTSET
+handlers=trfhand,consoleHandler,audithand,metrichand,errhand,debughand
+
+[handler_consoleHandler]
+class=StreamHandler
+level=NOTSET
+formatter=generic
+args=(sys.stdout,)
+
+[handler_trfhand]
+class=handlers.TimedRotatingFileHandler
+level=NOTSET
+formatter=generic
+args=('application.log','midnight', 1, 10)
+
+[handler_audithand]
+class=handlers.TimedRotatingFileHandler
+level=INFO
+formatter=audit
+args=('audit.log', 'midnight', 1, 10)
+
+[handler_metrichand]
+class=handlers.TimedRotatingFileHandler
+level=INFO
+formatter=metric
+args=('metric.log','midnight', 1, 10)
+
+[handler_errhand]
+class=handlers.TimedRotatingFileHandler
+level=ERROR
+formatter=error
+args=('error.log','midnight', 1, 10)
+
+[handler_debughand]
+class=handlers.TimedRotatingFileHandler
+level=DEBUG
+formatter=generic
+args=('debug.log','midnight', 1, 10)
+
+[formatters]
+keys=generic,audit,metric,error
+
+[formatter_audit]
+format=%(asctime)s|%(asctime)s|00000000-0000-0000-0000-000000000000||%(thread)d||Conductor|N/A|COMPLETE|200|sucessful||%(levelname)s|||0|%(module)s|||||||||%(name)s : [-] %(message)s
+datefmt=
+
+[formatter_metric]
+format=%(asctime)s|%(asctime)s|00000000-0000-0000-0000-000000000000||%(thread)d||Conductor|N/A|N/A|N/A|COMPLETE|200|sucessful||%(levelname)s|||0|%(module)s||||||||||%(name)s : [-] %(message)s
+datefmt=
+
+[formatter_error]
+format=%(asctime)s|00000000-0000-0000-0000-000000000000|%(thread)d|Conductor|N/A|N/A|N/A|ERROR|500|N/A|%(name)s : [-] %(message)s
+datefmt=
+
+[formatter_generic]
+format=%(asctime)s||%(thread)d|%(levelname)s|%(module)s|%(name)s: [-] %(message)s
+datefmt=
diff --git a/kubernetes/oof/charts/oof-has/resources/config/log/filebeat.yml b/kubernetes/oof/charts/oof-has/resources/config/log/filebeat.yml
new file mode 100755
index 0000000000..7c8ddec2c3
--- /dev/null
+++ b/kubernetes/oof/charts/oof-has/resources/config/log/filebeat.yml
@@ -0,0 +1,31 @@
+# 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.
+
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
diff --git a/kubernetes/sdnc/templates/sdnc-conf-configmap.yaml b/kubernetes/oof/charts/oof-has/templates/configmap.yaml
index 3d89f20cab..78e63d4435 100644..100755
--- a/kubernetes/sdnc/templates/sdnc-conf-configmap.yaml
+++ b/kubernetes/oof/charts/oof-has/templates/configmap.yaml
@@ -12,12 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableSdncSdnc }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdnc-conf-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ .Values.global.commonConfigPrefix }}-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/conf/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/mso/values.yaml b/kubernetes/oof/charts/oof-has/values.yaml
index 410246fcbc..25a076b6cc 100644..100755
--- a/kubernetes/mso/values.yaml
+++ b/kubernetes/oof/charts/oof-has/values.yaml
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,24 +12,21 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ repository: nexus3.onap.org:10001
+ commonConfigPrefix: onap-oof-has
+ image:
+ readiness: oomk8s/readiness-check:2.0.0
+ optf_has: onap/optf-has:latest
+ filebeat: docker.elastic.co/beats/filebeat:5.5.0
+
pullPolicy: Always
nodePortPrefix: 302
-openStackUserName: "vnf_user"
-openStackRegion: "RegionOne"
-openStackKeyStoneUrl: "http://1.2.3.4:5000"
-dmaapTopic: "AUTO"
-openStackServiceTenantName: "service"
-openStackEncryptedPasswordHere: "c124921a3a0efbe579782cde8227681e"
-msoReplicas: 1
-dbReplicas: 1
dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- mso: nexus3.onap.org:10001/openecomp/mso:v1.1.2
- mariadb: nexus3.onap.org:10001/mariadb:10.1.11
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
-
-config:
- logstashServiceName: log-ls
- logstashPort: 5044
diff --git a/kubernetes/oof/requirements.yaml b/kubernetes/oof/requirements.yaml
new file mode 100755
index 0000000000..ce82a2f838
--- /dev/null
+++ b/kubernetes/oof/requirements.yaml
@@ -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/oof/resources/config/osdf_config.yaml b/kubernetes/oof/resources/config/osdf_config.yaml
new file mode 100755
index 0000000000..7fe63a50c8
--- /dev/null
+++ b/kubernetes/oof/resources/config/osdf_config.yaml
@@ -0,0 +1,53 @@
+# 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.
+
+
+# Credentials for the OOF placement service – SO. Newly added.
+osdfPlacementSOUsername: {{ .Values.config.osdfPlacementSOUsername }}
+osdfPlacementSOPassword: {{ .Values.config.osdfPlacementSOPassword }}
+
+# Credentials for the OOF CM scheduling service – Generic. Newly added
+osdfCMSchedulerUsername: {{ .Values.config.osdfCMSchedulerUsername }}
+osdfCMSchedulerPassword: {{ .Values.config.osdfCMSchedulerPassword }}
+
+# msoUrl: "" # The SO url for call back. This will be part of the request, so no need
+soUsername: {{ .Values.config.soUsername }}
+soPassword: {{ .Values.config.soPassword }}
+
+conductorUrl: "{{.Release.Name}}-has-api.{{include "common.namespace" .}}:TODO-PORT-FOR-HAS-API"
+conductorUsername: {{ .Values.config.conductorUsername }}
+conductorPassword: {{ .Values.config.conductorPassword }}
+conductorPingWaitTime: {{ .Values.config.conductorPingWaitTime }}
+conductorMaxRetries: {{ .Values.config.conductorMaxRetries }}
+
+# Policy Platform -- requires ClientAuth, Authorization, and Environment
+policyPlatformUrl: {{ .Values.config.policyPlatformUrl }}
+policyPlatformEnv: {{ .Values.config.policyPlatformEnv }}
+policyPlatformUsername: {{ .Values.config.policyPlatformUsername }}
+policyPlatformPassword: {{ .Values.config.policyPlatformPassword }}
+policyClientUsername: {{ .Values.config.policyClientUsername }}
+policyClientPassword: {{ .Values.config.policyClientPassword }}
+
+messageReaderHosts: {{ .Values.config.messageReaderHosts }}
+messageReaderTopic: {{ .Values.config.messageReaderTopic }}
+messageReaderAafUserId: {{ .Values.config.messageReaderAafUserId }}
+messageReaderAafPassword: {{ .Values.config.messageReaderAafPassword }}
+
+sdcUrl: {{ .Values.config.sdcUrl }}
+sdcUsername: {{ .Values.config.sdcUsername }}
+sdcPassword: {{ .Values.config.sdcPassword }}
+sdcONAPInstanceID: {{ .Values.config.sdcONAPInstanceID }}
+
+osdfPlacementUsername: {{ .Values.config.osdfPlacementUsername }}
+osdfPlacementPassword: {{ .Values.config.osdfPlacementPassword }}
diff --git a/kubernetes/oof/templates/NOTES.txt b/kubernetes/oof/templates/NOTES.txt
new file mode 100644
index 0000000000..ee1b36508d
--- /dev/null
+++ b/kubernetes/oof/templates/NOTES.txt
@@ -0,0 +1,33 @@
+# 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 }}
+ 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 }}
diff --git a/kubernetes/oof/templates/configmap.yaml b/kubernetes/oof/templates/configmap.yaml
new file mode 100644
index 0000000000..4ccc7cc526
--- /dev/null
+++ b/kubernetes/oof/templates/configmap.yaml
@@ -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" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/oof/templates/deployment.yaml b/kubernetes/oof/templates/deployment.yaml
new file mode 100644
index 0000000000..30a313c7d3
--- /dev/null
+++ b/kubernetes/oof/templates/deployment.yaml
@@ -0,0 +1,100 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - pdp
+ - --container-name
+ - oof-has-api
+ 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.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
+ - mountPath: /opt/app/config/osdf_config.yaml
+ name: {{ include "common.fullname" . }}-config
+ subPath: osdf_config.yaml
+ 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: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: osdf_config.yaml
+ path: osdf_config.yaml
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/oof/templates/service.yaml b/kubernetes/oof/templates/service.yaml
new file mode 100644
index 0000000000..66a26868e2
--- /dev/null
+++ b/kubernetes/oof/templates/service.yaml
@@ -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 }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ targetPort: {{ .Values.service.internalPort }}
+ 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/oof/values.yaml b/kubernetes/oof/values.yaml
new file mode 100644
index 0000000000..9f74271418
--- /dev/null
+++ b/kubernetes/oof/values.yaml
@@ -0,0 +1,96 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada, VMware
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# 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/optf-osdf:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ msbgateway: msb-iag.{{ include "common.namespace" . }}
+ msbPort: 80
+ # Credentials for the OOF placement service – SO.
+ osdfPlacementSOUsername: so_test
+ osdfPlacementSOPassword: so_testpwd
+ # Credentials for the OOF CM scheduling service – Generic.
+ osdfCMSchedulerUsername: test1
+ osdfCMSchedulerPassword: testpwd1
+ # Credentials of the callback url for SO.
+ soUsername: "" # SO username for call back.
+ soPassword: "" # SO password for call back.
+ # Url and credentials for Conductor.
+ conductorUrl: https://oof-has-api.{{ include "common.namespace" . }}:8091/v1/plans/
+ conductorUsername: admin1
+ conductorPassword: plan.15
+ conductorPingWaitTime: 60
+ conductorMaxRetries: 30
+ # Url and credentials for the Policy Platform
+ policyPlatformUrl: http://pdp:8081/pdp/api/getConfig # Policy Dev platform URL
+ policyPlatformEnv: TEST # Environment for policy platform
+ policyPlatformUsername: testpdp # Policy platform username.
+ policyPlatformPassword: alpha123 # Policy platform password.
+ policyClientUsername: python # For use with ClientAuth
+ policyClientPassword: test # For use with ClientAuth
+ # Credentials for the message reader - A placeholder.
+ messageReaderHosts: NA
+ messageReaderTopic: NA
+ messageReaderAafUserId: NA
+ messageReaderAafPassword: NA
+ # Credentials for the SDC interface - A placeholder.
+ sdcUrl: NA
+ sdcUsername: NA
+ sdcPassword: NA
+ sdcONAPInstanceID: NA
+ # Credentials for the placement service – Generic.
+ osdfPlacementUsername: "test"
+ osdfPlacementPassword: "testpwd"
+# 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: oof-osdf
+ externalPort: 8698
+ internalPort: 8699
+ nodePort: 48
+ingress:
+ enabled: false
+resources: {}
diff --git a/kubernetes/policy/.helmignore b/kubernetes/policy/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/policy/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/policy/Chart.yaml b/kubernetes/policy/Chart.yaml
index b178495b47..5922cf8d10 100644
--- a/kubernetes/policy/Chart.yaml
+++ b/kubernetes/policy/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Policy Administration Point
name: policy
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/policy/charts/brmsgw/Chart.yaml b/kubernetes/policy/charts/brmsgw/Chart.yaml
new file mode 100644
index 0000000000..2a16757f81
--- /dev/null
+++ b/kubernetes/policy/charts/brmsgw/Chart.yaml
@@ -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 Policy BRMS GW
+name: brmsgw
+version: 2.0.0
diff --git a/kubernetes/policy/charts/brmsgw/requirements.yaml b/kubernetes/policy/charts/brmsgw/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/policy/charts/brmsgw/requirements.yaml
@@ -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.
+
+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/policy/resources/config/opt/policy/config/pe/brmsgw-tweaks.sh b/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw-tweaks.sh
index daa3596e6e..5c3a2a1fe3 100755..100644
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/brmsgw-tweaks.sh
+++ b/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw-tweaks.sh
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
#! /bin/bash
PROPS_BUILD="${POLICY_HOME}/etc/build.info"
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/brmsgw.conf b/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf
index d874237575..e7c6298759 100755..100644
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/brmsgw.conf
+++ b/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf
@@ -1,11 +1,25 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
# BRMSpep component installation configuration parameters
BRMSGW_JMX_PORT=9989
COMPONENT_X_MX_MB=1024
COMPONENT_X_MS_MB=1024
-REST_PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
-REST_PDP_ID=http://pdp.{{.Values.nsPrefix}}:8081/pdp/
+REST_PAP_URL=http://{{ .Values.global.pap.nameOverride }}:{{.Values.config.papPort}}/pap/
+REST_PDP_ID=http://{{ .Values.global.pdp.nameOverride }}:{{.Values.config.pdpPort}}/pdp/
PDP_HTTP_USER_ID=testpdp
PDP_HTTP_PASSWORD=alpha123
@@ -15,13 +29,13 @@ PDP_PAP_PDP_HTTP_PASSWORD=alpha123
M2_HOME=/usr/share/maven
snapshotRepositoryID=policy-nexus-snapshots
snapshotRepositoryName=Snapshots
-snapshotRepositoryURL=http://nexus.{{.Values.nsPrefix}}:8081/nexus/content/repositories/snapshots
+snapshotRepositoryURL=http://{{ .Values.global.nexus.nameOverride }}:{{.Values.config.nexusPort}}/nexus/content/repositories/snapshots
releaseRepositoryID=policy-nexus-releases
releaseRepositoryName=Releases
-releaseRepositoryURL=http://nexus.{{.Values.nsPrefix}}:8081/nexus/content/repositories/releases
+releaseRepositoryURL=http://{{ .Values.global.nexus.nameOverride }}:{{.Values.config.nexusPort}}/nexus/content/repositories/releases
repositoryUsername=admin
repositoryPassword=admin123
-UEB_URL=dmaap.{{.Values.nsPrefix}}
+UEB_URL=message-router
UEB_TOPIC=PDPD-CONFIGURATION
UEB_API_KEY=
UEB_API_SECRET=
@@ -40,7 +54,7 @@ ENVIRONMENT=TEST
#Notification Properties... type can be either websocket, ueb, or dmaap
BRMS_NOTIFICATION_TYPE=websocket
-BRMS_UEB_URL=dmaap.{{.Values.nsPrefix}}
+BRMS_UEB_URL=message-router
BRMS_UEB_TOPIC=PDPD-CONFIGURATION
BRMS_UEB_DELAY=
BRMS_CLIENT_ID=python
diff --git a/kubernetes/policy/charts/brmsgw/templates/NOTES.txt b/kubernetes/policy/charts/brmsgw/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/policy/charts/brmsgw/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/aaf/templates/aaf-configmap.yaml b/kubernetes/policy/charts/brmsgw/templates/configmap.yaml
index f89ccec946..054338bb5b 100644
--- a/kubernetes/aaf/templates/aaf-configmap.yaml
+++ b/kubernetes/policy/charts/brmsgw/templates/configmap.yaml
@@ -12,12 +12,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableAafAaf }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: aaf-data-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-pe-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ (.Files.Glob "resources/config/aaf-data/*").AsConfig | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/pe/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/policy/charts/brmsgw/templates/deployment.yaml b/kubernetes/policy/charts/brmsgw/templates/deployment.yaml
new file mode 100644
index 0000000000..fabef681f4
--- /dev/null
+++ b/kubernetes/policy/charts/brmsgw/templates/deployment.yaml
@@ -0,0 +1,113 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.pap.nameOverride }}
+ 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:
+ - command:
+ - /bin/bash
+ - ./do-start.sh
+ - brmsgw
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{- end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /tmp/policy-install/config/brmsgw-tweaks.sh
+ name: pe-brmsgw
+ subPath: brmsgw-tweaks.sh
+ - mountPath: /tmp/policy-install/config/brmsgw.conf
+ name: pe-brmsgw
+ subPath: brmsgw.conf
+ - mountPath: /tmp/policy-install/config/base.conf
+ name: pe
+ subPath: base.conf
+ - mountPath: /tmp/policy-install/do-start.sh
+ name: pe-scripts
+ subPath: do-start.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: pe
+ configMap:
+ name: {{ .Release.Name }}-pe-configmap
+ defaultMode: 0755
+ - name: pe-scripts
+ configMap:
+ name: {{ .Release.Name }}-pe-scripts-configmap
+ defaultMode: 0777
+ - name: pe-brmsgw
+ configMap:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/policy/charts/brmsgw/templates/service.yaml b/kubernetes/policy/charts/brmsgw/templates/service.yaml
new file mode 100644
index 0000000000..594950e647
--- /dev/null
+++ b/kubernetes/policy/charts/brmsgw/templates/service.yaml
@@ -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: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.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/policy/charts/brmsgw/values.yaml b/kubernetes/policy/charts/brmsgw/values.yaml
new file mode 100644
index 0000000000..49e37789df
--- /dev/null
+++ b/kubernetes/policy/charts/brmsgw/values.yaml
@@ -0,0 +1,87 @@
+# 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/policy-pe:1.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ papPort: 9091
+ pdpPort: 8081
+ nexusPort: 8081
+
+# 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: 30
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: brmsgw
+ portName: brmsgw
+ externalPort: 9989
+ nodePort: 16
+
+
+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/policy/charts/drools/Chart.yaml b/kubernetes/policy/charts/drools/Chart.yaml
new file mode 100644
index 0000000000..15ad44b6a3
--- /dev/null
+++ b/kubernetes/policy/charts/drools/Chart.yaml
@@ -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 Drools Policy Engine
+name: drools
+version: 2.0.0
diff --git a/kubernetes/policy/charts/drools/charts/nexus/Chart.yaml b/kubernetes/policy/charts/drools/charts/nexus/Chart.yaml
new file mode 100644
index 0000000000..c16f6450a4
--- /dev/null
+++ b/kubernetes/policy/charts/drools/charts/nexus/Chart.yaml
@@ -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 Policy Nexus
+name: nexus
+version: 2.0.0
diff --git a/kubernetes/policy/charts/drools/charts/nexus/requirements.yaml b/kubernetes/policy/charts/drools/charts/nexus/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/policy/charts/drools/charts/nexus/requirements.yaml
@@ -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.
+
+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/policy/charts/drools/charts/nexus/templates/NOTES.txt b/kubernetes/policy/charts/drools/charts/nexus/templates/NOTES.txt
new file mode 100644
index 0000000000..57947a65da
--- /dev/null
+++ b/kubernetes/policy/charts/drools/charts/nexus/templates/NOTES.txt
@@ -0,0 +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.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 "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/policy/charts/drools/charts/nexus/templates/deployment.yaml b/kubernetes/policy/charts/drools/charts/nexus/templates/deployment.yaml
new file mode 100644
index 0000000000..1734952b63
--- /dev/null
+++ b/kubernetes/policy/charts/drools/charts/nexus/templates/deployment.yaml
@@ -0,0 +1,88 @@
+# 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:
+ initContainers:
+ - command: ["sh", "-c", "chown -R 200:200 /share"]
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.global.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-init
+ volumeMounts:
+ - mountPath: /share
+ name: nexus-data
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ httpGet:
+ path: {{ .Values.readiness.path }}
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /sonatype-work
+ name: nexus-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: nexus-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/policy/charts/drools/charts/nexus/templates/pv.yaml b/kubernetes/policy/charts/drools/charts/nexus/templates/pv.yaml
new file mode 100644
index 0000000000..da117f4919
--- /dev/null
+++ b/kubernetes/policy/charts/drools/charts/nexus/templates/pv.yaml
@@ -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/policy/charts/drools/charts/nexus/templates/pvc.yaml b/kubernetes/policy/charts/drools/charts/nexus/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/policy/charts/drools/charts/nexus/templates/pvc.yaml
@@ -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/policy/charts/drools/charts/nexus/templates/service.yaml b/kubernetes/policy/charts/drools/charts/nexus/templates/service.yaml
new file mode 100644
index 0000000000..594950e647
--- /dev/null
+++ b/kubernetes/policy/charts/drools/charts/nexus/templates/service.yaml
@@ -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: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.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/policy/charts/drools/charts/nexus/values.yaml b/kubernetes/policy/charts/drools/charts/nexus/values.yaml
new file mode 100644
index 0000000000..03a03cc198
--- /dev/null
+++ b/kubernetes/policy/charts/drools/charts/nexus/values.yaml
@@ -0,0 +1,96 @@
+# 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
+ ubuntuInitRepository: oomk8s
+ ubuntuInitImage: ubuntu-init:1.0.0
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: sonatype/nexus:2.14.8-01
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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
+ path: /nexus/service/local/status
+
+service:
+ type: NodePort
+ name: nexus
+ portName: nexus
+ externalPort: 8081
+ nodePort: 36
+
+ingress:
+ enabled: false
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: nexus/data
+
+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/policy/charts/drools/requirements.yaml b/kubernetes/policy/charts/drools/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/policy/charts/drools/requirements.yaml
@@ -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.
+
+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/policy/resources/config/drools/settings.xml b/kubernetes/policy/charts/drools/resources/config/drools/settings.xml
index 2a9e2a0b24..8de7e11d8b 100755
--- a/kubernetes/policy/resources/config/drools/settings.xml
+++ b/kubernetes/policy/charts/drools/resources/config/drools/settings.xml
@@ -1,23 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- ============LICENSE_START=======================================================
- Base Package
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+-->
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
@@ -51,7 +47,7 @@
<repositories>
<repository>
<id>policy-nexus-snapshots</id>
- <url>http://nexus:8081/nexus/content/repositories/snapshots/</url>
+ <url>http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/snapshots/</url>
<releases>
<enabled>false</enabled>
<updatePolicy>always</updatePolicy>
@@ -64,7 +60,7 @@
<repository>
<id>policy-nexus-releases</id>
- <url>http://nexus:8081/nexus/content/repositories/releases/</url>
+ <url>http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/releases/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
diff --git a/kubernetes/policy/resources/config/log/drools/logback.xml b/kubernetes/policy/charts/drools/resources/config/log/drools/logback.xml
index daecf97850..4b058f1e4b 100644
--- a/kubernetes/policy/resources/config/log/drools/logback.xml
+++ b/kubernetes/policy/charts/drools/resources/config/log/drools/logback.xml
@@ -1,107 +1,103 @@
-<!--
- ============LICENSE_START=======================================================
- policy-management
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-
-<configuration scan="true" scanPeriod="30 seconds" debug="false">
-
- <property name="logDir" value="/var/log/onap" />
-
- <property name="errorLog" value="error" />
- <property name="debugLog" value="debug" />
- <property name="networkLog" value="network" />
-
- <property name="debugPattern" value="[%date|%level|%logger{0}|%thread] %msg%n" />
- <property name="errorPattern" value="${debugPattern}" />
- <property name="networkPattern" value="[%d|%t]%m%n" />
-
- <appender name="ErrorOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDir}/${errorLog}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDir}/${errorLog}.%i.log.zip</fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>5</maxIndex>
- </rollingPolicy>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>WARN</level>
- </filter>
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>15MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${errorPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="AsyncErrorOut" class="ch.qos.logback.classic.AsyncAppender">
- <appender-ref ref="ErrorOut" />
- </appender>
-
- <appender name="DebugOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDir}/${debugLog}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDir}/${debugLog}.%i.log.zip</fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>9</maxIndex>
- </rollingPolicy>
- <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>20MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${debugPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="AsyncDebugOut" class="ch.qos.logback.classic.AsyncAppender">
- <appender-ref ref="DebugOut" />
- </appender>
-
- <appender name="NetworkOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDir}/${networkLog}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDir}/${networkLog}.%i.log.zip</fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>9</maxIndex>
- </rollingPolicy>
- <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>15MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${networkPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="AsyncNetworkOut" class="ch.qos.logback.classic.AsyncAppender">
- <appender-ref ref="NetworkOut" />
- </appender>
-
- <logger name="network" level="INFO" additivity="false">
- <appender-ref ref="AsyncNetworkOut" />
- </logger>
-
- <logger name="org.eclipse.jetty.server.RequestLog" level="info" additivity="false">
- <appender-ref ref="AsyncNetworkOut" />
- </logger>
-
- <root level="INFO">
- <appender-ref ref="AsyncDebugOut" />
- <appender-ref ref="AsyncErrorOut" />
- </root>
-
-</configuration> \ No newline at end of file
+<!--
+# Copyright © 2017 Amdocs, Bell Canada,AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+-->
+
+<configuration scan="true" scanPeriod="30 seconds" debug="false">
+
+ <property name="logDir" value="/var/log/onap" />
+
+ <property name="errorLog" value="error" />
+ <property name="debugLog" value="debug" />
+ <property name="networkLog" value="network" />
+
+ <property name="debugPattern" value="[%date|%level|%logger{0}|%thread] %msg%n" />
+ <property name="errorPattern" value="${debugPattern}" />
+ <property name="networkPattern" value="[%d|%t]%m%n" />
+
+ <appender name="ErrorOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDir}/${errorLog}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDir}/${errorLog}.%i.log.zip</fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>5</maxIndex>
+ </rollingPolicy>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>15MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${errorPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="AsyncErrorOut" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ErrorOut" />
+ </appender>
+
+ <appender name="DebugOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDir}/${debugLog}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDir}/${debugLog}.%i.log.zip</fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${debugPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="AsyncDebugOut" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="DebugOut" />
+ </appender>
+
+ <appender name="NetworkOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDir}/${networkLog}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDir}/${networkLog}.%i.log.zip</fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>15MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${networkPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="AsyncNetworkOut" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="NetworkOut" />
+ </appender>
+
+ <logger name="network" level="INFO" additivity="false">
+ <appender-ref ref="AsyncNetworkOut" />
+ </logger>
+
+ <logger name="org.eclipse.jetty.server.RequestLog" level="info" additivity="false">
+ <appender-ref ref="AsyncNetworkOut" />
+ </logger>
+
+ <root level="INFO">
+ <appender-ref ref="AsyncDebugOut" />
+ <appender-ref ref="AsyncErrorOut" />
+ </root>
+
+</configuration>
diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/apps-install.sh b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/apps-install.sh
new file mode 100644
index 0000000000..72f7a74695
--- /dev/null
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/apps-install.sh
@@ -0,0 +1,124 @@
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+# ONAP
+# ================================================================================
+# Copyright (C) 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=========================================================
+#
+
+# #################################
+# Usage
+# #################################
+
+function usage {
+ echo
+ echo "Usage: $(basename $0) <application-name> <zipped-application-version> <download-directory>"
+ echo "Example: $(basename $0) controlloop 1.2.0 /opt/policy/config/drools"
+ echo
+}
+
+# #################################
+# snapshot url computation
+# #################################
+
+function url_snapshot {
+ if [[ $DEBUG == y ]]; then
+ echo "-- ${FUNCNAME[0]} --"
+ set -x
+ fi
+
+ APP_URL="${APP_URL}/snapshots/org/onap/policy/drools-applications/${APP_NAME}/packages/apps-${APP_NAME}/${APP_VERSION}"
+
+ local APP_METADATA_URL="${APP_URL}/maven-metadata.xml"
+ local APP_SNAPSHOT_VERSION=$(curl --silent "${APP_METADATA_URL}" | grep -Po "(?<=<value>).*(?=</value>)" | sort -V | tail -1)
+
+ if [[ -z ${APP_SNAPSHOT_VERSION} ]]; then
+ echo "ERROR: cannot compute SNAPSHOT version"
+ usage
+ exit 1
+ fi
+
+ APP_URL="${APP_URL}/apps-${APP_NAME}-${APP_SNAPSHOT_VERSION}.zip"
+}
+
+# #################################
+# release url computation
+# #################################
+
+function url_release {
+ if [[ $DEBUG == y ]]; then
+ echo "-- ${FUNCNAME[0]} --"
+ set -x
+ fi
+
+ APP_URL="${APP_URL}/releases/org/onap/policy/drools-applications/${APP_NAME}/packages/apps-${APP_NAME}/${APP_VERSION}/apps-${APP_NAME}-${APP_VERSION}.zip"
+}
+
+# #################################
+# Main
+# #################################
+
+if [[ $DEBUG == y ]]; then
+ set -x
+fi
+
+APP_NAME=$1
+if [[ -z ${APP_NAME} ]]; then
+ echo "ERROR: no APPLICATION NAME provided (ie. controlloop)"
+ usage
+ exit 1
+fi
+
+APP_VERSION=$2
+if [[ -z ${APP_VERSION} ]]; then
+ echo "ERROR: no APPLICATION VERSION provided"
+ usage
+ exit 1
+fi
+
+DOWNLOAD_DIR=$3
+if [[ -z ${DOWNLOAD_DIR} ]]; then
+ echo "ERROR: no DOWNLOAD DIRECTORY provided"
+ usage
+ exit 1
+fi
+
+if [[ ! -d ${DOWNLOAD_DIR} ]]; then
+ echo "ERROR: ${DOWNLOAD_DIR} is not a directory"
+ usage
+ exit 1
+fi
+
+APP_GROUP_ID="org.onap.policy.drools-applications.${APP_NAME}.packages"
+APP_ARTIFACT_ID="apps-${APP_NAME}"
+APP_BASE_URL="https://nexus.onap.org/content/repositories"
+
+APP_URL="${APP_BASE_URL}"
+
+if [[ ${APP_VERSION} =~ \-SNAPSHOT$ ]]; then
+ url_snapshot
+else
+ url_release
+fi
+
+wget "${APP_URL}" -O "${DOWNLOAD_DIR}"/apps-"${APP_NAME}".zip
+if [[ $? != 0 ]]; then
+ echo "ERROR: cannot download ${DOWNLOAD_DIR}/apps-${APP_NAME}.zip"
+ exit 1
+fi
+
+echo "APP ${APP_NAME} stored at ${DOWNLOAD_DIR}/apps-${APP_NAME}.zip"
+ls -l "${DOWNLOAD_DIR}"/apps-"${APP_NAME}".zip
diff --git a/kubernetes/policy/resources/config/opt/policy/config/drools/base.conf b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf
index e5bbd6637d..9202b0ada7 100755..100644
--- a/kubernetes/policy/resources/config/opt/policy/config/drools/base.conf
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/base.conf
@@ -1,29 +1,23 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP POLICY
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
+# Copyright © 2017-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
+# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT 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=========================================================
-###
-
# SYSTEM software configuration
POLICY_HOME=/opt/app/policy
+POLICY_LOGS=/var/log/onap/policy/pdpd
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
-KEYSTORE_PASSWD=PolicyR0ck$
+KEYSTORE_PASSWD=Pol1cy_0nap
# Telemetry credentials
@@ -35,22 +29,22 @@ ENGINE_MANAGEMENT_PASSWORD=31nst31n
# nexus repository
snapshotRepositoryID=policy-nexus-snapshots
-snapshotRepositoryUrl=http://nexus:8081/nexus/content/repositories/snapshots/
+snapshotRepositoryUrl=http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/snapshots/
releaseRepositoryID=policy-nexus-releases
-releaseRepositoryUrl=http://nexus:8081/nexus/content/repositories/releases/
+releaseRepositoryUrl=http://{{.Values.global.nexus.nameOverride}}:{{.Values.config.nexusPort}}/nexus/content/repositories/releases/
repositoryUsername=admin
repositoryPassword=admin123
# Relational (SQL) DB access
-SQL_HOST=mariadb.{{.Values.nsPrefix}}
+SQL_HOST={{.Values.global.mariadb.nameOverride}}
SQL_USER=policy_user
SQL_PASSWORD=policy_user
# PDP-D DMaaP configuration channel
PDPD_CONFIGURATION_TOPIC=PDPD-CONFIGURATION
-PDPD_CONFIGURATION_SERVERS=dmaap.{{.Values.nsPrefix}}
+PDPD_CONFIGURATION_SERVERS=message-router
PDPD_CONFIGURATION_API_KEY=
PDPD_CONFIGURATION_API_SECRET=
PDPD_CONFIGURATION_CONSUMER_GROUP=
@@ -59,13 +53,13 @@ PDPD_CONFIGURATION_PARTITION_KEY=
# PAP
-PAP_HOST=pap.{{.Values.nsPrefix}}
+PAP_HOST={{.Values.global.pap.nameOverride}}
PAP_USERNAME=testpap
PAP_PASSWORD=alpha123
# PDP-X
-PDP_HOST=pdp.{{.Values.nsPrefix}}
+PDP_HOST={{.Values.global.pdp.nameOverride}}
PDP_USERNAME=testpdp
PDP_PASSWORD=alpha123
PDP_CLIENT_USERNAME=python
@@ -75,11 +69,12 @@ PDP_ENVIRONMENT=TEST
# DCAE DMaaP
DCAE_TOPIC=unauthenticated.DCAE_CL_OUTPUT
-DCAE_SERVERS=dmaap.{{.Values.nsPrefix}}
+DCAE_SERVERS=message-router
+DCAE_CONSUMER_GROUP=dcae.policy.shared
# Open DMaaP
-DMAAP_SERVERS=dmaap.{{.Values.nsPrefix}}
+DMAAP_SERVERS=message-router
# AAI
@@ -89,7 +84,7 @@ AAI_PASSWORD=POLICY
# MSO
-SO_URL=http://mso.{{.Values.nsPrefix}}:8080/ecomp/mso/infra
+SO_URL=http://mso:8080/ecomp/mso/infra
SO_USERNAME=InfraPortalClient
SO_PASSWORD=password1$
diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-preinstall.sh b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-preinstall.sh
new file mode 100644
index 0000000000..8b290128b3
--- /dev/null
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-preinstall.sh
@@ -0,0 +1,52 @@
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+# ONAP
+# ================================================================================
+# Copyright (C) 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=========================================================
+#
+
+# #################################
+# Usage
+# #################################
+
+function usage {
+ echo
+ echo "Usage: $(basename $0)"
+ echo
+}
+
+if [[ ${DEBUG} == y ]]; then
+ set -x
+fi
+
+if [[ -z ${BUILD_VERSION} ]]; then
+ echo "no BUILD_VERSION available as environment variable""
+ usage
+ exit 1
+fi
+
+if [[ -z ${POLICY_INSTALL} ]]; then
+ echo "no POLICY_INSTALL available as environment variable""
+ usage
+ exit 2
+fi
+
+CONFIG_DIR=$(dirname "$0")
+echo "invoking ${CONFIG_DIR}/apps-install.sh for controlloop ${BUILD_VERSION} at ${POLICY_INSTALL}"
+export DEBUG=y
+bash ${CONFIG_DIR}/apps-install.sh controlloop ${BUILD_VERSION} ${POLICY_INSTALL}
+unzip -o ${POLICY_INSTALL}/app*.zip -d ${POLICY_INSTALL}
diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-tweaks.sh b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-tweaks.sh
new file mode 100644
index 0000000000..54700078c5
--- /dev/null
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/drools-tweaks.sh
@@ -0,0 +1,22 @@
+#! /bin/bash
+
+# Copyright © 2017-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.
+
+
+${POLICY_HOME}/bin/features enable healthcheck
+${POLICY_HOME}/bin/features enable pooling-dmaap
+${POLICY_HOME}/bin/features enable distributed-locking
+
+${POLICY_HOME}/bin/db-migrator -s pooling -o upgrade
diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/feature-pooling-dmaap.conf b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/feature-pooling-dmaap.conf
new file mode 100644
index 0000000000..82384075b5
--- /dev/null
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/feature-pooling-dmaap.conf
@@ -0,0 +1,15 @@
+# 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.
+
+POOLING_TOPIC=POOLING
diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf
new file mode 100644
index 0000000000..cbb45a5828
--- /dev/null
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf
@@ -0,0 +1,16 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+HEALTHCHECK_USER=healthcheck
+HEALTHCHECK_PASSWORD=zb!XztG34
diff --git a/kubernetes/policy/resources/config/opt/policy/config/drools/keys/policy-keystore b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/policy-keystore
index ab25c3a341..ab25c3a341 100644
--- a/kubernetes/policy/resources/config/opt/policy/config/drools/keys/policy-keystore
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/keys/policy-keystore
Binary files differ
diff --git a/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/policy-management.conf b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/policy-management.conf
new file mode 100644
index 0000000000..c2ccefe4e3
--- /dev/null
+++ b/kubernetes/policy/charts/drools/resources/config/opt/policy/config/drools/policy-management.conf
@@ -0,0 +1,19 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+CONTROLLER_ARTIFACT_ID=policy-management
+CONTROLLER_NAME=policy-management-controller
+CONTROLLER_PORT=9696
+RULES_ARTIFACT=not-used:not-used:1.0.0-SNAPSHOT
+UEB_TOPIC=policyengine-develop
diff --git a/kubernetes/policy/scripts/update-vfw-op-policy.sh b/kubernetes/policy/charts/drools/resources/scripts/update-vfw-op-policy.sh
index 39483a0fb7..a6c054dbc1 100755..100644
--- a/kubernetes/policy/scripts/update-vfw-op-policy.sh
+++ b/kubernetes/policy/charts/drools/resources/scripts/update-vfw-op-policy.sh
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
#!/bin/bash
if [ "$#" -ne 4 ]; then
diff --git a/kubernetes/policy/charts/drools/templates/NOTES.txt b/kubernetes/policy/charts/drools/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/policy/charts/drools/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/policy/templates/policy-deployment-configmap.yaml b/kubernetes/policy/charts/drools/templates/configmap.yaml
index 9998b2c320..29b1c56b89 100644
--- a/kubernetes/policy/templates/policy-deployment-configmap.yaml
+++ b/kubernetes/policy/charts/drools/templates/configmap.yaml
@@ -12,30 +12,27 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disablePolicyDrools }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: policy-dep-drools-settings-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-settings-configmap
+ namespace: {{ include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/drools/settings.xml").AsConfig . | indent 2 }}
-#{{ end }}
---
-#{{ if not .Values.disablePolicyPdp }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: policy-dep-pe-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/opt/policy/config/pe/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/opt/policy/config/drools/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: policy-dep-drools-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/opt/policy/config/drools/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/log/drools/logback.xml").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/policy/templates/policy-deployment-secret.yaml b/kubernetes/policy/charts/drools/templates/secrets.yaml
index 59bfa11df2..18f5f16c4d 100644
--- a/kubernetes/policy/templates/policy-deployment-secret.yaml
+++ b/kubernetes/policy/charts/drools/templates/secrets.yaml
@@ -12,13 +12,16 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disablePolicyDrools }}
apiVersion: v1
kind: Secret
metadata:
- name: policy-dep-drools-secret
- namespace: {{ .Values.nsPrefix }}
-type: Opaque
+ 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 }}
data:
{{ (.Files.Glob "resources/config/opt/policy/config/drools/keys/*").AsSecrets | indent 2 }}
-#{{ end }}
+type: Opaque
diff --git a/kubernetes/policy/charts/drools/templates/service.yaml b/kubernetes/policy/charts/drools/templates/service.yaml
new file mode 100644
index 0000000000..116de09d41
--- /dev/null
+++ b/kubernetes/policy/charts/drools/templates/service.yaml
@@ -0,0 +1,42 @@
+# 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 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort2 }}
+ {{- else -}}
+ - port: {{ .Values.service.type.externalPort }}
+ targetPort: {{ .Values.service.type.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/policy/charts/drools/templates/statefulset.yaml b/kubernetes/policy/charts/drools/templates/statefulset.yaml
new file mode 100644
index 0000000000..68b415e989
--- /dev/null
+++ b/kubernetes/policy/charts/drools/templates/statefulset.yaml
@@ -0,0 +1,189 @@
+# 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: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.mariadb.nameOverride }}
+ - --container-name
+ - {{ .Values.global.nexus.nameOverride }}
+ 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
+ hostAliases:
+ - ip: "{{ .Values.config.aaiServiceClusterIp }}"
+ hostnames:
+ - "aai.api.simpledemo.openecomp.org"
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ command:
+ - /bin/bash
+ - -c
+ - ./do-start.sh
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{- end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: REPLICAS
+ value: "{{ .Values.replicaCount }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /tmp/policy-install/config/feature-healthcheck.conf
+ name: drools-secret
+ subPath: feature-healthcheck.conf
+ - mountPath: /tmp/policy-install/config/feature-pooling-dmaap.conf
+ name: drools-config
+ subPath: feature-pooling-dmaap.conf
+ - mountPath: /tmp/policy-install/config/base.conf
+ name: drools-config
+ subPath: base.conf
+ - mountPath: /tmp/policy-install/config/policy-management.conf
+ name: drools-config
+ subPath: policy-management.conf
+ - mountPath: /tmp/policy-install/config/drools-tweaks.sh
+ name: drools-config
+ subPath: drools-tweaks.sh
+ - mountPath: /tmp/policy-install/config/apps-install.sh
+ name: drools-config
+ subPath: apps-install.sh
+ - mountPath: /tmp/policy-install/config/drools-preinstall.sh
+ name: drools-config
+ subPath: drools-preinstall.sh
+ - mountPath: /usr/share/maven/conf/settings.xml
+ name: drools-settingsxml
+ subPath: settings.xml
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /tmp/logback.xml
+ name: policy-logback
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/config/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ - image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.loggingImage }}"
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /usr/share/filebeat/data
+ name: policy-data-filebeat
+ 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: filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-filebeat-configmap
+ - name: policy-logs
+ emptyDir: {}
+ - name: policy-data-filebeat
+ emptyDir: {}
+ - name: policy-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ - name: drools-settingsxml
+ configMap:
+ name: {{ include "common.fullname" . }}-settings-configmap
+ - name: drools-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ items:
+ - key: base.conf
+ path: base.conf
+ mode: 0755
+ - key: feature-pooling-dmaap.conf
+ path: feature-pooling-dmaap.conf
+ mode: 0755
+ - key: policy-management.conf
+ path: policy-management.conf
+ mode: 0755
+ - key: drools-tweaks.sh
+ path: drools-tweaks.sh
+ mode: 0755
+ - key: apps-install.sh
+ path: apps-install.sh
+ mode: 0755
+ - key: drools-preinstall.sh
+ path: drools-preinstall.sh
+ mode: 0755
+ - name: drools-secret
+ secret:
+ secretName: {{ include "common.fullname" . }}-secret
+ items:
+ - key: feature-healthcheck.conf
+ path: feature-healthcheck.conf
+ mode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/policy/charts/drools/values.yaml b/kubernetes/policy/charts/drools/values.yaml
new file mode 100644
index 0000000000..ff0d06e160
--- /dev/null
+++ b/kubernetes/policy/charts/drools/values.yaml
@@ -0,0 +1,89 @@
+# 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
+ ubuntuImage: ubuntu:16.04
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/policy-drools:1.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ nexusPort: 8081
+ aaiServiceClusterIp: 10.43.255.254
+
+# default number of instances
+replicaCount: 4
+
+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: drools
+ portName: drools
+ externalPort: 6969
+ nodePort: 17
+ externalPort2: 9696
+ nodePort2: 21
+
+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/policy/charts/mariadb/Chart.yaml b/kubernetes/policy/charts/mariadb/Chart.yaml
new file mode 100644
index 0000000000..c7c9a7d0a1
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/Chart.yaml
@@ -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 Policy MariaDB Service
+name: mariadb
+version: 2.0.0
diff --git a/kubernetes/policy/charts/mariadb/requirements.yaml b/kubernetes/policy/charts/mariadb/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/requirements.yaml
@@ -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.
+
+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/policy/charts/mariadb/resources/config/db.sh b/kubernetes/policy/charts/mariadb/resources/config/db.sh
new file mode 100644
index 0000000000..067b3c312f
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/resources/config/db.sh
@@ -0,0 +1,23 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#!/bin/bash -xv
+
+for db in support onap_sdk log migration operationshistory10 pooling
+do
+ mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "CREATE DATABASE IF NOT EXISTS ${db};"
+ mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "GRANT ALL PRIVILEGES ON \`${db}\`.* TO '${MYSQL_USER}'@'%' ;"
+done
+
+mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "FLUSH PRIVILEGES;"
diff --git a/kubernetes/policy/charts/mariadb/templates/NOTES.txt b/kubernetes/policy/charts/mariadb/templates/NOTES.txt
new file mode 100644
index 0000000000..57947a65da
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/templates/NOTES.txt
@@ -0,0 +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.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 "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdnc/templates/ueb-deployment-configmap.yaml b/kubernetes/policy/charts/mariadb/templates/configmap.yaml
index 0e5b3ac62e..a819196a1d 100644
--- a/kubernetes/sdnc/templates/ueb-deployment-configmap.yaml
+++ b/kubernetes/policy/charts/mariadb/templates/configmap.yaml
@@ -12,12 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableSdncUeb }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdnc-ueb-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/ueb/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/db.sh").AsConfig . | indent 2 }}
diff --git a/kubernetes/policy/charts/mariadb/templates/deployment.yaml b/kubernetes/policy/charts/mariadb/templates/deployment.yaml
new file mode 100644
index 0000000000..adfebca206
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/templates/deployment.yaml
@@ -0,0 +1,103 @@
+# 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 eq .Values.liveness.enabled true }}
+ args:
+ - --lower-case-table-names=1
+ - --wait_timeout=28800
+ 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: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-secret
+ key: db-root-password
+ - name: MYSQL_USER
+ value: policy_user
+ - name: MYSQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-secret
+ key: db-user-password
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /docker-entrypoint-initdb.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: mariadb-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ defaultMode: 0755
+ - 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/policy/charts/mariadb/templates/pv.yaml b/kubernetes/policy/charts/mariadb/templates/pv.yaml
new file mode 100644
index 0000000000..da117f4919
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/templates/pv.yaml
@@ -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/policy/charts/mariadb/templates/pvc.yaml b/kubernetes/policy/charts/mariadb/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/templates/pvc.yaml
@@ -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/policy/charts/mariadb/templates/secrets.yaml b/kubernetes/policy/charts/mariadb/templates/secrets.yaml
new file mode 100644
index 0000000000..9f0c1788e4
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/templates/secrets.yaml
@@ -0,0 +1,29 @@
+# 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.config.mysqlRootPassword | b64enc | quote }}
+ db-user-password: {{ .Values.config.mysqlPassword | b64enc | quote }}
+
diff --git a/kubernetes/vid/templates/all-services.yaml b/kubernetes/policy/charts/mariadb/templates/service.yaml
index a946a2ab54..ded46572a1 100644
--- a/kubernetes/vid/templates/all-services.yaml
+++ b/kubernetes/policy/charts/mariadb/templates/service.yaml
@@ -12,35 +12,21 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableVidVidMariadb }}
-apiVersion: v1
-kind: Service
-metadata:
- name: vid-mariadb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: vid-mariadb
- port: 3306
- selector:
- app: vid-mariadb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableVidVidServer }}
----
apiVersion: v1
kind: Service
metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
labels:
- app: vid-server
- name: vid-server
- namespace: "{{ .Values.nsPrefix }}"
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
spec:
ports:
- - name: vid-server
- nodePort: {{ .Values.nodePortPrefix }}00
- port: 8080
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
selector:
- app: vid-server
- type: NodePort
-#{{ end }} \ No newline at end of file
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
diff --git a/kubernetes/policy/charts/mariadb/values.yaml b/kubernetes/policy/charts/mariadb/values.yaml
new file mode 100644
index 0000000000..7703234a66
--- /dev/null
+++ b/kubernetes/policy/charts/mariadb/values.yaml
@@ -0,0 +1,76 @@
+# 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
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: mariadb:10.2.14
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+ mysqlRootPassword: secret
+ mysqlUserName: policy_user
+ mysqlPassword: policy_user
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: mariadb/data
+
+service:
+ type: ClusterIP
+ name: policydb
+ portName: policydb
+ internalPort: 3306
+
+ingress:
+ enabled: false
+
+resources: {}
diff --git a/kubernetes/policy/charts/pdp/Chart.yaml b/kubernetes/policy/charts/pdp/Chart.yaml
new file mode 100644
index 0000000000..b849e18b3a
--- /dev/null
+++ b/kubernetes/policy/charts/pdp/Chart.yaml
@@ -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 Policy PDP
+name: pdp
+version: 2.0.0
diff --git a/kubernetes/policy/charts/pdp/requirements.yaml b/kubernetes/policy/charts/pdp/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/policy/charts/pdp/requirements.yaml
@@ -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.
+
+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/policy/resources/config/log/xacml-pdp-rest/logback.xml b/kubernetes/policy/charts/pdp/resources/config/log/xacml-pdp-rest/logback.xml
index c9c05d922d..daa4112e51 100644
--- a/kubernetes/policy/resources/config/log/xacml-pdp-rest/logback.xml
+++ b/kubernetes/policy/charts/pdp/resources/config/log/xacml-pdp-rest/logback.xml
@@ -1,153 +1,150 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- ECOMP-PDP-REST
- ================================================================================
- Copyright (C) 2017 AT&amp;T Intellectual Property. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ============LICENSE_END=========================================================
- -->
-<configuration scan="true" scanPeriod="3 seconds" debug="true">
- <!--<jmxConfigurator /> -->
- <!-- specify the base path of the log directory -->
- <property name="logDir" value="/var/log/onap" />
- <!-- specify the component name -->
- <property name="componentName" value="policy" />
- <!-- specify the sub component name -->
- <property name="subComponentName" value="xacml-pdp-rest" />
- <!-- 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 name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
- <!-- The EELFAppender is used to record events to the general application
- log -->
- <!-- 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}.%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 name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</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}.%i.log</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${maxFileSize}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>${maxHistory}</maxHistory>
- <totalSizeCap>${totalSizeCap}</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</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">
- <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>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- </appender>
- <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFError" />
- </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}.%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 name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <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="asyncEELFDebug" />
- </root>
-</configuration> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+-->
+
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="policy" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="xacml-pdp-rest" />
+ <!-- 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 name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+ <!-- The EELFAppender is used to record events to the general application
+ log -->
+ <!-- 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}.%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 name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</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}.%i.log</fileNamePattern>
+ <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+ <maxFileSize>${maxFileSize}</maxFileSize>
+ </timeBasedFileNamingAndTriggeringPolicy>
+ <maxHistory>${maxHistory}</maxHistory>
+ <totalSizeCap>${totalSizeCap}</totalSizeCap>
+ </rollingPolicy>
+ <encoder>
+ <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+ %msg%n"</pattern> -->
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</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">
+ <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>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ </appender>
+ <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFError" />
+ </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}.%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 name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <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="asyncEELFDebug" />
+ </root>
+</configuration>
diff --git a/kubernetes/policy/charts/pdp/resources/config/pe/pdp-tweaks.sh b/kubernetes/policy/charts/pdp/resources/config/pe/pdp-tweaks.sh
new file mode 100644
index 0000000000..6060fe9b6f
--- /dev/null
+++ b/kubernetes/policy/charts/pdp/resources/config/pe/pdp-tweaks.sh
@@ -0,0 +1,16 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#! /bin/bash
+
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/pdp.conf b/kubernetes/policy/charts/pdp/resources/config/pe/pdp.conf
index c3af2238f0..8e0b88213d 100755..100644
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/pdp.conf
+++ b/kubernetes/policy/charts/pdp/resources/config/pe/pdp.conf
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
# pdp component installation configuration parameters
# tomcat specific parameters
@@ -13,10 +27,10 @@ TOMCAT_X_MX_MB=1024
# pdp properties
-UEB_CLUSTER=dmaap.{{.Values.nsPrefix}}
+UEB_CLUSTER=message-router
-REST_PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
-REST_PDP_ID=http://pdp.{{.Values.nsPrefix}}:8081/pdp/
+REST_PAP_URL=http://{{ .Values.global.pap.nameOverride }}:{{.Values.config.papPort}}/pap/
+REST_PDP_ID=http://${{"{{"}}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
@@ -32,7 +46,7 @@ PDP_PAP_PDP_HTTP_PASSWORD=alpha123
node_type=pdp_xacml
resource_name=pdp_1
-dependency_groups=pdplp_1;brmsgw_1
+dependency_groups=brmsgw_1
test_via_jmx=true
#
diff --git a/kubernetes/policy/charts/pdp/resources/config/pe/pdplp.conf b/kubernetes/policy/charts/pdp/resources/config/pe/pdplp.conf
new file mode 100644
index 0000000000..f5f4060aad
--- /dev/null
+++ b/kubernetes/policy/charts/pdp/resources/config/pe/pdplp.conf
@@ -0,0 +1,26 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# JVM specific parameters
+LOGPARSER_JMX_PORT=9997
+LOGPARSER_X_MS_MB=1024
+LOGPARSER_X_MX_MB=1024
+
+SERVER=http://{{ include "common.servicename" . }}:{{.Values.service.externalPort}}/pdp/
+LOGPATH=/opt/app/policy/servers/pdp/logs/pdp-rest.log
+PARSERLOGPATH=IntegrityMonitor.log
+
+node_type=logparser
+# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
+resource_name=pdplp_1
diff --git a/kubernetes/policy/charts/pdp/templates/NOTES.txt b/kubernetes/policy/charts/pdp/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/policy/charts/pdp/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdnc/templates/sdnc-log-configmap.yaml b/kubernetes/policy/charts/pdp/templates/configmap.yaml
index a0bf0e211a..76a4c0fdd4 100644
--- a/kubernetes/sdnc/templates/sdnc-log-configmap.yaml
+++ b/kubernetes/policy/charts/pdp/templates/configmap.yaml
@@ -12,20 +12,18 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableSdncSdnc }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdnc-log-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/log4j/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/log/xacml-pdp-rest/logback.xml").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdnc-logging-cfg-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-pe-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/pe/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/policy/charts/pdp/templates/service.yaml b/kubernetes/policy/charts/pdp/templates/service.yaml
new file mode 100644
index 0000000000..d44fbb9f28
--- /dev/null
+++ b/kubernetes/policy/charts/pdp/templates/service.yaml
@@ -0,0 +1,52 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "{{ include "common.servicename" . }}",
+ "version": "v1",
+ "url": "/pdp",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"1"
+ },
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ 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 }}
+ sessionAffinity: None
+ clusterIP: None
diff --git a/kubernetes/policy/charts/pdp/templates/statefulset.yaml b/kubernetes/policy/charts/pdp/templates/statefulset.yaml
new file mode 100644
index 0000000000..7cfc4f0bbd
--- /dev/null
+++ b/kubernetes/policy/charts/pdp/templates/statefulset.yaml
@@ -0,0 +1,150 @@
+# 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: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}
+ replicas: {{ .Values.replicaCount }}
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.pap.nameOverride }}
+ 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:
+ - command:
+ - /bin/bash
+ - ./do-start.sh
+ - pdp
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{- end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /tmp/policy-install/config/base.conf
+ name: pe
+ subPath: base.conf
+ - mountPath: /tmp/policy-install/config/pdp-tweaks.sh
+ name: pe-pdp
+ subPath: pdp-tweaks.sh
+ - mountPath: /tmp/policy-install/config/pdplp.conf
+ name: pe-pdp
+ subPath: pdplp.conf
+ - mountPath: /tmp/policy-install/config/pdp.conf
+ name: pe-pdp
+ subPath: pdp.conf
+ - mountPath: /tmp/policy-install/do-start.sh
+ name: pe-scripts
+ subPath: do-start.sh
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /tmp/logback.xml
+ name: policy-logback
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/servers/pdp/webapps/pdp/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"]
+ - image: {{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /usr/share/filebeat/data
+ name: policy-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: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-filebeat-configmap
+ - name: policy-logs
+ emptyDir: {}
+ - name: policy-data-filebeat
+ emptyDir: {}
+ - name: policy-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ - name: pe
+ configMap:
+ name: {{ .Release.Name }}-pe-configmap
+ defaultMode: 0755
+ - name: pe-scripts
+ configMap:
+ name: {{ .Release.Name }}-pe-scripts-configmap
+ defaultMode: 0777
+ - name: pe-pdp
+ configMap:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/policy/charts/pdp/values.yaml b/kubernetes/policy/charts/pdp/values.yaml
new file mode 100644
index 0000000000..9d3fdbd78c
--- /dev/null
+++ b/kubernetes/policy/charts/pdp/values.yaml
@@ -0,0 +1,86 @@
+# 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/policy-pe:1.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ papPort: 9091
+
+# default number of instances
+replicaCount: 2
+
+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: ClusterIP
+ name: pdp
+ portName: pdp
+ internalPort: 8081
+ externalPort: 8081
+
+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/policy/charts/policy-common/Chart.yaml b/kubernetes/policy/charts/policy-common/Chart.yaml
new file mode 100644
index 0000000000..be8724932c
--- /dev/null
+++ b/kubernetes/policy/charts/policy-common/Chart.yaml
@@ -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 Policy Common
+name: policy-common
+version: 2.0.0
diff --git a/kubernetes/policy/charts/policy-common/requirements.yaml b/kubernetes/policy/charts/policy-common/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/policy/charts/policy-common/requirements.yaml
@@ -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.
+
+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/mso/resources/config/log/filebeat/filebeat.yml b/kubernetes/policy/charts/policy-common/resources/config/log/filebeat/filebeat.yml
index b0d4690754..b0d4690754 100644
--- a/kubernetes/mso/resources/config/log/filebeat/filebeat.yml
+++ b/kubernetes/policy/charts/policy-common/resources/config/log/filebeat/filebeat.yml
diff --git a/kubernetes/policy/charts/policy-common/resources/config/pe/base.conf b/kubernetes/policy/charts/policy-common/resources/config/pe/base.conf
new file mode 100644
index 0000000000..c5dd8ca2a7
--- /dev/null
+++ b/kubernetes/policy/charts/policy-common/resources/config/pe/base.conf
@@ -0,0 +1,39 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
+POLICY_HOME=/opt/app/policy
+POLICY_LOGS=/var/log/onap
+KEYSTORE_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
+JDBC_LOG_URL=jdbc:mariadb://{{ .Values.global.mariadb.nameOverride }}:{{.Values.config.mariadbPort}}/log?connectTimeout=30000&socketTimeout=60000&log=true&sessionVariables=max_statement_time=30
+JDBC_USER=policy_user
+JDBC_PASSWORD=policy_user
+
+site_name=site_1
+fp_monitor_interval=30
+failed_counter_threshold=3
+test_trans_interval=20
+write_fpc_interval=5
+max_fpc_update_interval=60
+test_via_jmx=false
+jmx_fqdn=
+
+ENVIRONMENT=TEST
+
+#Micro Service Model Properties
+policy_msOnapName=
+policy_msPolicyName=
diff --git a/kubernetes/policy/charts/policy-common/resources/config/scripts/do-start.sh b/kubernetes/policy/charts/policy-common/resources/config/scripts/do-start.sh
new file mode 100644
index 0000000000..defae52b4b
--- /dev/null
+++ b/kubernetes/policy/charts/policy-common/resources/config/scripts/do-start.sh
@@ -0,0 +1,92 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#!/bin/bash
+
+# Script to configure and start the Policy components that are to run in the designated container,
+# It is intended to be used as the entrypoint in the Dockerfile, so the last statement of the
+# script just goes into a long sleep so that the script does not exit (which would cause the
+# container to be torn down).
+
+container=$1
+
+case $container in
+pap)
+ comps="base pap paplp console mysql elk"
+ ;;
+pdp)
+ comps="base pdp pdplp"
+ ;;
+brmsgw)
+ comps="base brmsgw"
+ ;;
+*)
+ echo "Usage: do-start.sh pap|pdp|brmsgw" >&2
+ exit 1
+esac
+
+
+# skip installation if build.info file is present (restarting an existing container)
+if [[ -f /opt/app/policy/etc/build.info ]]; then
+ echo "Found existing installation, will not reinstall"
+ . /opt/app/policy/etc/profile.d/env.sh
+
+else
+ if [[ -d config ]]; then
+ cp config/*.conf .
+ fi
+
+ for comp in $comps; do
+ echo "Installing component: $comp"
+ ./docker-install.sh --install $comp
+ done
+ for comp in $comps; do
+ echo "Configuring component: $comp"
+ ./docker-install.sh --configure $comp
+ done
+
+ . /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
+
+ if [[ -f config/$container-tweaks.sh ]] ; then
+ # file may not be executable; running it as an
+ # argument to bash avoids needing execute perms.
+ bash config/$container-tweaks.sh
+ fi
+
+ if [[ $container == pap ]]; then
+ # wait for DB up
+ # now that DB is up, invoke database upgrade
+ # (which does nothing if the db is already up-to-date)
+ dbuser=$(echo $(grep '^JDBC_USER=' base.conf | cut -f2 -d=))
+ dbpw=$(echo $(grep '^JDBC_PASSWORD=' base.conf | cut -f2 -d=))
+ db_upgrade_remote.sh $dbuser $dbpw {{.Values.global.mariadb.nameOverride}}
+ fi
+
+fi
+
+policy.sh start
+
+# on pap, wait for pap, pdp, brmsgw, nexus and drools up,
+# then push the initial default policies
+if [[ $container == pap ]]; then
+ # wait addional 1 minute for all processes to get fully initialized and synched up
+ sleep 60
+ bash -xv config/push-policies.sh
+fi
+
+sleep 1000d
diff --git a/kubernetes/policy/charts/policy-common/templates/NOTES.txt b/kubernetes/policy/charts/policy-common/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/policy/charts/policy-common/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/portal/templates/portal-logs-configmap.yaml b/kubernetes/policy/charts/policy-common/templates/configmap.yaml
index 068adadbdb..23311c66f5 100644
--- a/kubernetes/portal/templates/portal-logs-configmap.yaml
+++ b/kubernetes/policy/charts/policy-common/templates/configmap.yaml
@@ -12,29 +12,26 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disablePortalPortalapps }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: portal-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ .Release.Name }}-pe-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/pe/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: portal-onapportal-log-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ .Release.Name }}-pe-scripts-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/portal/onapportal/logback.xml").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/scripts/do-start.sh").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: portal-onapportalsdk-log-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ .Release.Name }}-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/portal/onapportalsdk/logback.xml").AsConfig . | indent 2 }}
-#{{ end }}
-
+{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
diff --git a/kubernetes/policy/charts/policy-common/values.yaml b/kubernetes/policy/charts/policy-common/values.yaml
new file mode 100644
index 0000000000..ea85ea5912
--- /dev/null
+++ b/kubernetes/policy/charts/policy-common/values.yaml
@@ -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
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+ mariadbPort: 3306
+
+# 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: <onap-app>
+ externalPort: <8080>
+ #Example internal target port if required
+ #internalPort: <80>
+ nodePort: <replace with unused node port suffix eg. 23>
+
+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/policy/requirements.yaml b/kubernetes/policy/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/policy/requirements.yaml
@@ -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.
+
+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/policy/resources/config/log/ep_sdk_app/logback.xml b/kubernetes/policy/resources/config/log/ep_sdk_app/logback.xml
index d0871bdb4a..bcc6b167fc 100644
--- a/kubernetes/policy/resources/config/log/ep_sdk_app/logback.xml
+++ b/kubernetes/policy/resources/config/log/ep_sdk_app/logback.xml
@@ -1,190 +1,186 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ================================================================================
- eCOMP Portal SDK
- ================================================================================
- Copyright (C) 2017 AT&amp;T Intellectual Property
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT 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 debug="true" scan="true" scanPeriod="3 seconds">
- <!--
- Logback files for the ECOMP SDK Application "ecomp_app"
- are created in directory ${catalina.base}/logs/ecomp_app;
- e.g., apache-tomcat-8.0.35/logs/ecomp_app/application.log
- -->
- <!--<jmxConfigurator /> -->
- <!-- specify the base path of the log directory -->
- <property name="logDir" value="/var/log/onap" />
- <!-- specify the component name -->
- <property name="componentName" value="policy" />
- <!-- specify the sub component name -->
- <property name="subComponentName" value="ep_sdk_app" />
- <!-- 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="generalLogName" value="application" />
- <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" />
- <!--
- 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" />
- -->
- <!-- Example evaluator filter applied against console appender -->
- <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
- <encoder>
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
- <!-- The EELFAppender is used to record events to the general application
- log -->
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">
- <file>${logDirectory}/${generalLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily rollover -->
- <fileNamePattern>${logDirectory}/${generalLogName}.%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>
- <filter class="org.openecomp.portalapp.util.CustomLoggingFilter" />
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELF">
- <queueSize>${queueSize}</queueSize>
- <!-- Class name is part of caller data -->
- <includeCallerData>true</includeCallerData>
- <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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
- <file>${logDirectory}/${auditLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily rollover -->
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFAudit" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
- <file>${logDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily rollover -->
- <fileNamePattern>${logDirectory}/${metricsLogName}.%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="asyncEELFMetrics">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">
- <file>${logDirectory}/${errorLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily rollover -->
- <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>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFError" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
- <file>${logDirectory}/${debugLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!-- daily rollover -->
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="info" name="com.att.eelf.audit">
- <appender-ref ref="asyncEELFAudit" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.metrics">
- <appender-ref ref="asyncEELFMetrics" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.error">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <logger additivity="false" level="debug" name="com.att.eelf.debug">
- <appender-ref ref="asyncEELFDebug" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-</configuration> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+-->
+<configuration debug="true" scan="true" scanPeriod="3 seconds">
+ <!--
+ Logback files for the ECOMP SDK Application "ecomp_app"
+ are created in directory ${catalina.base}/logs/ecomp_app;
+ e.g., apache-tomcat-8.0.35/logs/ecomp_app/application.log
+ -->
+ <!--<jmxConfigurator /> -->
+ <!-- specify the base path of the log directory -->
+ <property name="logDir" value="/var/log/onap" />
+ <!-- specify the component name -->
+ <property name="componentName" value="policy" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="ep_sdk_app" />
+ <!-- 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="generalLogName" value="application" />
+ <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" />
+ <!--
+ 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" />
+ -->
+ <!-- Example evaluator filter applied against console appender -->
+ <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+ <encoder>
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+ <!-- The EELFAppender is used to record events to the general application
+ log -->
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">
+ <file>${logDirectory}/${generalLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${generalLogName}.%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>
+ <filter class="org.openecomp.portalapp.util.CustomLoggingFilter" />
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELF">
+ <queueSize>${queueSize}</queueSize>
+ <!-- Class name is part of caller data -->
+ <includeCallerData>true</includeCallerData>
+ <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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
+ <file>${logDirectory}/${auditLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <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>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFAudit" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
+ <file>${logDirectory}/${metricsLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <fileNamePattern>${logDirectory}/${metricsLogName}.%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="asyncEELFMetrics">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFMetrics" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <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>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFError" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
+ <file>${logDirectory}/${debugLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <!-- daily rollover -->
+ <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>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <logger additivity="false" level="info" name="com.att.eelf.audit">
+ <appender-ref ref="asyncEELFAudit" />
+ </logger>
+ <logger additivity="false" level="info" name="com.att.eelf.metrics">
+ <appender-ref ref="asyncEELFMetrics" />
+ </logger>
+ <logger additivity="false" level="info" name="com.att.eelf.error">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+ <logger additivity="false" level="debug" name="com.att.eelf.debug">
+ <appender-ref ref="asyncEELFDebug" />
+ </logger>
+ <root level="INFO">
+ <appender-ref ref="asyncEELFDebug" />
+ </root>
+</configuration>
diff --git a/kubernetes/policy/resources/config/log/pypdpserver/logback.xml b/kubernetes/policy/resources/config/log/pypdpserver/logback.xml
deleted file mode 100644
index c4b596b6d5..0000000000
--- a/kubernetes/policy/resources/config/log/pypdpserver/logback.xml
+++ /dev/null
@@ -1,154 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- ECOMP Policy Engine
- ================================================================================
- Copyright (C) 2017 AT&amp;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 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="policy" />
- <!-- specify the sub component name -->
- <property name="subComponentName" value="pypdpserver" />
- <!-- 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>
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
- <!-- The EELFAppender is used to record events to the general application
- log -->
- <!-- 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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
- <file>${logDirectory}/${auditLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFAudit" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
- <file>${logDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}.%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>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">
- <file>${logDirectory}/${errorLogName}.log</file>
- <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>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFError" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
- <file>${logDirectory}/${debugLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="info" name="com.att.eelf.audit">
- <appender-ref ref="asyncEELFAudit" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.metrics">
- <appender-ref ref="asyncEELFMetrics" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.error">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <logger additivity="false" level="debug" name="com.att.eelf.debug">
- <appender-ref ref="asyncEELFDebug" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- <appender-ref ref="asyncEELFError" />
- </root>
-</configuration> \ No newline at end of file
diff --git a/kubernetes/policy/resources/config/log/xacml-pap-rest/logback.xml b/kubernetes/policy/resources/config/log/xacml-pap-rest/logback.xml
index 77068bb9aa..9401e54861 100644
--- a/kubernetes/policy/resources/config/log/xacml-pap-rest/logback.xml
+++ b/kubernetes/policy/resources/config/log/xacml-pap-rest/logback.xml
@@ -1,153 +1,150 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- ECOMP-PAP-REST
- ================================================================================
- Copyright (C) 2017 AT&amp;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 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="policy" />
- <!-- specify the sub component name -->
- <property name="subComponentName" value="xacml-pap-rest" />
- <!-- 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>
- <!-- ============================================================================ -->
- <!-- EELF Appenders -->
- <!-- ============================================================================ -->
- <!-- The EELFAppender is used to record events to the general application
- log -->
- <!-- 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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
- <file>${logDirectory}/${auditLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFAudit" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
- <file>${logDirectory}/${metricsLogName}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${logDirectory}/${metricsLogName}.%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>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
- %msg%n"</pattern> -->
- <pattern>${pattern}</pattern>
- </encoder>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFMetrics" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">
- <file>${logDirectory}/${errorLogName}.log</file>
- <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>
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
- </appender>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFError" />
- </appender>
- <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
- <file>${logDirectory}/${debugLogName}.log</file>
- <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>
- <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
- <queueSize>${queueSize}</queueSize>
- <appender-ref ref="EELFDebug" />
- <includeCallerData>true</includeCallerData>
- </appender>
- <!-- ============================================================================ -->
- <!-- EELF loggers -->
- <!-- ============================================================================ -->
- <logger additivity="false" level="info" name="com.att.eelf.audit">
- <appender-ref ref="asyncEELFAudit" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.metrics">
- <appender-ref ref="asyncEELFMetrics" />
- </logger>
- <logger additivity="false" level="info" name="com.att.eelf.error">
- <appender-ref ref="asyncEELFError" />
- </logger>
- <logger additivity="false" level="debug" name="com.att.eelf.debug">
- <appender-ref ref="asyncEELFDebug" />
- </logger>
- <root level="INFO">
- <appender-ref ref="asyncEELFDebug" />
- </root>
-</configuration> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+-->
+
+<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="policy" />
+ <!-- specify the sub component name -->
+ <property name="subComponentName" value="xacml-pap-rest" />
+ <!-- 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>
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+ <!-- The EELFAppender is used to record events to the general application
+ log -->
+ <!-- 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 class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
+ <file>${logDirectory}/${auditLogName}.log</file>
+ <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>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFAudit" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
+ <file>${logDirectory}/${metricsLogName}.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+ <fileNamePattern>${logDirectory}/${metricsLogName}.%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>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+ %msg%n"</pattern> -->
+ <pattern>${pattern}</pattern>
+ </encoder>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFMetrics" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <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>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+ </appender>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFError" />
+ </appender>
+ <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
+ <file>${logDirectory}/${debugLogName}.log</file>
+ <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>
+ <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
+ <queueSize>${queueSize}</queueSize>
+ <appender-ref ref="EELFDebug" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <logger additivity="false" level="info" name="com.att.eelf.audit">
+ <appender-ref ref="asyncEELFAudit" />
+ </logger>
+ <logger additivity="false" level="info" name="com.att.eelf.metrics">
+ <appender-ref ref="asyncEELFMetrics" />
+ </logger>
+ <logger additivity="false" level="info" name="com.att.eelf.error">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+ <logger additivity="false" level="debug" name="com.att.eelf.debug">
+ <appender-ref ref="asyncEELFDebug" />
+ </logger>
+ <root level="INFO">
+ <appender-ref ref="asyncEELFDebug" />
+ </root>
+</configuration>
diff --git a/kubernetes/policy/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf b/kubernetes/policy/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf
deleted file mode 100644
index 31baed21e3..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/drools/keys/feature-healthcheck.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-HEALTHCHECK_USER=healthcheck
-HEALTHCHECK_PASSWORD=zb!XztG34
diff --git a/kubernetes/policy/resources/config/opt/policy/config/drools/policy-management.conf b/kubernetes/policy/resources/config/opt/policy/config/drools/policy-management.conf
deleted file mode 100755
index 843b832ea7..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/drools/policy-management.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-CONTROLLER_ARTIFACT_ID=policy-management
-CONTROLLER_NAME=policy-management-controller
-CONTROLLER_PORT=9696
-RULES_ARTIFACT=not-used:not-used:1.0.0-SNAPSHOT
-UEB_TOPIC=policyengine-develop
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/base.conf b/kubernetes/policy/resources/config/opt/policy/config/pe/base.conf
deleted file mode 100755
index 291743157b..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/base.conf
+++ /dev/null
@@ -1,24 +0,0 @@
-JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
-POLICY_HOME=/opt/app/policy
-KEYSTORE_PASSWD=PolicyR0ck$
-
-JDBC_DRIVER=org.mariadb.jdbc.Driver
-JDBC_URL=jdbc:mariadb://mariadb.{{.Values.nsPrefix}}:3306/onap_sdk?failOverReadOnly=false&autoReconnect=true
-JDBC_LOG_URL=jdbc:mariadb://mariadb.{{.Values.nsPrefix}}:3306/log?failOverReadOnly=false&autoReconnect=true
-JDBC_USER=policy_user
-JDBC_PASSWORD=policy_user
-
-site_name=site_1
-fp_monitor_interval=30
-failed_counter_threshold=3
-test_trans_interval=20
-write_fpc_interval=5
-max_fpc_update_interval=60
-test_via_jmx=false
-jmx_fqdn=
-
-ENVIRONMENT=TEST
-
-#Micro Service Model Properties
-policy_msOnapName=
-policy_msPolicyName=
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/elk.conf b/kubernetes/policy/resources/config/opt/policy/config/pe/elk.conf
deleted file mode 100644
index 938954ce63..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/elk.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-# elasticsearch
-
-ELK_JMX_PORT=9995 \ No newline at end of file
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/mysql.conf b/kubernetes/policy/resources/config/opt/policy/config/pe/mysql.conf
deleted file mode 100755
index 28b9e3ca33..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/mysql.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-# mysql scripts component installation configuration parameters
-
-# Path to mysql bin
-MYSQL_BIN=/usr/local/mysql/bin
-
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/pap-tweaks.sh b/kubernetes/policy/resources/config/opt/policy/config/pe/pap-tweaks.sh
deleted file mode 100755
index 36ac3689b1..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/pap-tweaks.sh
+++ /dev/null
@@ -1 +0,0 @@
-#! /bin/bash
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/pap.conf b/kubernetes/policy/resources/config/opt/policy/config/pe/pap.conf
deleted file mode 100755
index 3f892c9f5a..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/pap.conf
+++ /dev/null
@@ -1,55 +0,0 @@
-# pap component installation configuration parameters
-
-# tomcat specific parameters
-
-TOMCAT_JMX_PORT=9990
-TOMCAT_SHUTDOWN_PORT=9405
-SSL_HTTP_CONNECTOR_PORT=9091
-SSL_AJP_CONNECTOR_PORT=8380
-SSL_AJP_CONNECTOR_REDIRECT_PORT=8443
-
-TOMCAT_X_MS_MB=1024
-TOMCAT_X_MX_MB=1024
-
-# pap properties
-
-PAP_PDPS=/opt/app/policy/servers/pap/bin/pdps
-PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
-
-PAP_INITIATE_PDP=true
-PAP_HEARTBEAT_INTERVAL=10000
-PAP_HEARTBEAT_TIMEOUT=10000
-
-REST_ADMIN_DOMAIN=com
-REST_ADMIN_REPOSITORY=repository
-REST_ADMIN_WORKSPACE=workspace
-
-# PDP related properties
-
-PAP_PDP_URL=http://pdp.{{.Values.nsPrefix}}:8081/pdp/
-PAP_PDP_HTTP_USER_ID=testpdp
-PAP_PDP_HTTP_PASSWORD=alpha123
-
-PAP_HTTP_USER_ID=testpap
-PAP_HTTP_PASSWORD=alpha123
-
-#new values added 10-21-2015
-PROP_PAP_TRANS_WAIT=500000
-PROP_PAP_TRANS_TIMEOUT=5000
-PROP_PAP_AUDIT_TIMEOUT=300000
-PROP_PAP_RUN_AUDIT_FLAG=true
-PROP_PAP_AUDIT_FLAG=true
-
-PROP_PAP_INCOMINGNOTIFICATION_TRIES=4
-
-
-node_type=pap
-resource_name=pap_1
-dependency_groups=paplp_1
-test_via_jmx=true
-
-# The (optional) period of time in seconds between executions of the integrity audit.
-# Value < 0 : Audit does not run (default value if property is not present = -1)
-# Value = 0 : Audit runs continuously
-# Value > 0 : The period of time in seconds between execution of the audit on a particular node
-integrity_audit_period_seconds=-1
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/paplp.conf b/kubernetes/policy/resources/config/opt/policy/config/pe/paplp.conf
deleted file mode 100755
index 22ca8492b2..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/paplp.conf
+++ /dev/null
@@ -1,12 +0,0 @@
-# JVM specific parameters
-LOGPARSER_JMX_PORT=9996
-LOGPARSER_X_MS_MB=1024
-LOGPARSER_X_MX_MB=1024
-
-SERVER=http://pap.{{.Values.nsPrefix}}:9091/pap/
-LOGPATH=/opt/app/policy/servers/pap/logs/pap-rest.log
-PARSERLOGPATH=IntegrityMonitor.log
-
-node_type=logparser
-# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
-resource_name=paplp_1
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/pdp-tweaks.sh b/kubernetes/policy/resources/config/opt/policy/config/pe/pdp-tweaks.sh
deleted file mode 100755
index f68253635a..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/pdp-tweaks.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-#! /bin/bash
-
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/pdplp.conf b/kubernetes/policy/resources/config/opt/policy/config/pe/pdplp.conf
deleted file mode 100755
index 0e58cebbc6..0000000000
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/pdplp.conf
+++ /dev/null
@@ -1,12 +0,0 @@
-# JVM specific parameters
-LOGPARSER_JMX_PORT=9997
-LOGPARSER_X_MS_MB=1024
-LOGPARSER_X_MX_MB=1024
-
-SERVER=http://pdp.{{.Values.nsPrefix}}:8081/pdp/
-LOGPATH=/opt/app/policy/servers/pdp/logs/pdp-rest.log
-PARSERLOGPATH=IntegrityMonitor.log
-
-node_type=logparser
-# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
-resource_name=pdplp_1
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/console.conf b/kubernetes/policy/resources/config/pe/console.conf
index 3ff708655c..d972d7ca7a 100755..100644
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/console.conf
+++ b/kubernetes/policy/resources/config/pe/console.conf
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
# configs component installation configuration parameters
# tomcat specific parameters
@@ -77,7 +91,7 @@ REFRESH_RATE=40000
#
-REST_PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
+REST_PAP_URL=http://{{.Values.global.pap.nameOverride}}:{{.Values.service.externalPort2}}/pap/
#
# Config/Action Properties location.
@@ -85,7 +99,7 @@ REST_PAP_URL=http://pap.{{.Values.nsPrefix}}:9091/pap/
REST_CONFIG_HOME=/opt/app/policy/servers/pap/webapps/Config/
REST_ACTION_HOME=/opt/app/policy/servers/pap/webapps/Action/
-REST_CONFIG_URL=http://pap.{{.Values.nsPrefix}}:9091/
+REST_CONFIG_URL=http://{{.Values.global.pap.nameOverride}}:{{.Values.service.externalPort2}}/
REST_CONFIG_WEBAPPS=/opt/app/policy/servers/pap/webapps/
# PAP account information
@@ -121,12 +135,12 @@ onap_application_name=
#-----------------------ONAP-PORTAL-Properties----------------------
-ONAP_REDIRECT_URL=http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/login.htm
-ONAP_REST_URL=http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/auxapi
+ONAP_REDIRECT_URL=http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/login.htm
+ONAP_REST_URL=http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/auxapi
ONAP_UEB_URL_LIST=
ONAP_PORTAL_INBOX_NAME=
ONAP_UEB_APP_KEY=
ONAP_UEB_APP_SECRET=
ONAP_UEB_APP_MAILBOX_NAME=
APP_DISPLAY_NAME=ONAP Policy
-ONAP_SHARED_CONTEXT_REST_URL=http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/context
+ONAP_SHARED_CONTEXT_REST_URL=http://portal-app.{{.Release.Namespace}}:8989/ONAPPORTAL/context
diff --git a/kubernetes/policy/resources/config/pe/elk.conf b/kubernetes/policy/resources/config/pe/elk.conf
new file mode 100644
index 0000000000..2750bff702
--- /dev/null
+++ b/kubernetes/policy/resources/config/pe/elk.conf
@@ -0,0 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# elasticsearch
+
+ELK_JMX_PORT=9995
diff --git a/kubernetes/policy/resources/config/pe/mysql.conf b/kubernetes/policy/resources/config/pe/mysql.conf
new file mode 100644
index 0000000000..d4f83d414e
--- /dev/null
+++ b/kubernetes/policy/resources/config/pe/mysql.conf
@@ -0,0 +1,19 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# mysql scripts component installation configuration parameters
+
+# Path to mysql bin
+MYSQL_BIN=/usr/local/mysql/bin
+
diff --git a/kubernetes/policy/resources/config/pe/pap-tweaks.sh b/kubernetes/policy/resources/config/pe/pap-tweaks.sh
new file mode 100644
index 0000000000..1930b98f77
--- /dev/null
+++ b/kubernetes/policy/resources/config/pe/pap-tweaks.sh
@@ -0,0 +1,15 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#! /bin/bash
diff --git a/kubernetes/policy/resources/config/pe/pap.conf b/kubernetes/policy/resources/config/pe/pap.conf
new file mode 100644
index 0000000000..3fe9bd0cf9
--- /dev/null
+++ b/kubernetes/policy/resources/config/pe/pap.conf
@@ -0,0 +1,68 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# pap component installation configuration parameters
+
+# tomcat specific parameters
+
+TOMCAT_JMX_PORT=9990
+TOMCAT_SHUTDOWN_PORT=9405
+SSL_HTTP_CONNECTOR_PORT=9091
+SSL_AJP_CONNECTOR_PORT=8380
+SSL_AJP_CONNECTOR_REDIRECT_PORT=8443
+
+TOMCAT_X_MS_MB=1024
+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_INITIATE_PDP=true
+PAP_HEARTBEAT_INTERVAL=10000
+PAP_HEARTBEAT_TIMEOUT=10000
+
+REST_ADMIN_DOMAIN=com
+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 }}-3.{{ .Values.global.pdp.nameOverride }}.{{ include "common.namespace" . }}.svc.cluster.local:{{ .Values.config.pdpPort }}/pdp/,testpdp,alpha123;http://{{ .Release.Name }}-{{ .Values.global.pdp.nameOverride }}-4.{{ .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
+
+PAP_HTTP_USER_ID=testpap
+PAP_HTTP_PASSWORD=alpha123
+
+#new values added 10-21-2015
+PROP_PAP_TRANS_WAIT=500000
+PROP_PAP_TRANS_TIMEOUT=5000
+PROP_PAP_AUDIT_TIMEOUT=300000
+PROP_PAP_RUN_AUDIT_FLAG=true
+PROP_PAP_AUDIT_FLAG=true
+
+PROP_PAP_INCOMINGNOTIFICATION_TRIES=4
+
+
+node_type=pap
+resource_name=pap_1
+dependency_groups=paplp_1
+test_via_jmx=true
+
+# The (optional) period of time in seconds between executions of the integrity audit.
+# Value < 0 : Audit does not run (default value if property is not present = -1)
+# Value = 0 : Audit runs continuously
+# Value > 0 : The period of time in seconds between execution of the audit on a particular node
+integrity_audit_period_seconds=-1
diff --git a/kubernetes/policy/resources/config/pe/paplp.conf b/kubernetes/policy/resources/config/pe/paplp.conf
new file mode 100644
index 0000000000..205497c35d
--- /dev/null
+++ b/kubernetes/policy/resources/config/pe/paplp.conf
@@ -0,0 +1,26 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# JVM specific parameters
+LOGPARSER_JMX_PORT=9996
+LOGPARSER_X_MS_MB=1024
+LOGPARSER_X_MX_MB=1024
+
+SERVER=http://{{ include "common.servicename" . }}:{{.Values.service.externalPort2}}/pap/
+LOGPATH=/opt/app/policy/servers/pap/logs/pap-rest.log
+PARSERLOGPATH=IntegrityMonitor.log
+
+node_type=logparser
+# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
+resource_name=paplp_1
diff --git a/kubernetes/policy/resources/config/opt/policy/config/pe/push-policies.sh b/kubernetes/policy/resources/config/pe/push-policies.sh
index b9242cee78..5172086d8a 100755..100644
--- a/kubernetes/policy/resources/config/opt/policy/config/pe/push-policies.sh
+++ b/kubernetes/policy/resources/config/pe/push-policies.sh
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
#! /bin/bash
# forked from https://gerrit.onap.org/r/gitweb?p=policy/docker.git;a=blob;f=config/pe/push-policies.sh;h=555ab357e6b4f54237bf07ef5e6777d782564bc0;hb=refs/heads/amsterdam and adapted for OOM
@@ -12,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://pdp.{{.Values.nsPrefix}}:8081/pdp/api/policyEngineImport'
+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'
echo "PRELOAD_POLICIES is $PRELOAD_POLICIES"
@@ -42,7 +56,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-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://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
sleep 2
@@ -62,7 +76,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-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://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
sleep 2
@@ -82,7 +96,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-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://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
sleep 2
@@ -102,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://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
#########################################Create Micro Service Config policies##########################################
@@ -116,7 +130,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"policyConfigType": "MicroService",
"policyName": "com.MicroServicevFirewall",
"onapName": "DCAE"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
sleep 2
@@ -127,7 +141,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"policyConfigType": "MicroService",
"policyName": "com.MicroServicevDNS",
"onapName": "DCAE"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
sleep 2
@@ -138,7 +152,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"policyConfigType": "MicroService",
"policyName": "com.MicroServicevCPE",
"onapName": "DCAE"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
#########################################Creating Decision Guard policy#########################################
@@ -165,7 +179,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"guardActiveEnd": "00:00:00-05:00"
}
}
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/createPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/createPolicy'
#########################################Push Decision policy#########################################
@@ -176,7 +190,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"pdpGroup": "default",
"policyName": "com.AllPermitGuard",
"policyType": "DECISION"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
#########################################Pushing BRMS Param policies##########################################
@@ -189,7 +203,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"pdpGroup": "default",
"policyName": "com.BRMSParamvFirewall",
"policyType": "BRMS_Param"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
sleep 2
@@ -198,7 +212,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"pdpGroup": "default",
"policyName": "com.BRMSParamvDNS",
"policyType": "BRMS_Param"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
sleep 2
@@ -207,7 +221,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"pdpGroup": "default",
"policyName": "com.BRMSParamVOLTE",
"policyType": "BRMS_Param"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
sleep 2
@@ -216,7 +230,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"pdpGroup": "default",
"policyName": "com.BRMSParamvCPE",
"policyType": "BRMS_Param"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
#########################################Pushing MicroService Config policies##########################################
@@ -229,7 +243,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"pdpGroup": "default",
"policyName": "com.MicroServicevFirewall",
"policyType": "MicroService"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
sleep 10
@@ -238,7 +252,7 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"pdpGroup": "default",
"policyName": "com.MicroServicevDNS",
"policyType": "MicroService"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
sleep 10
@@ -247,4 +261,4 @@ curl -v --silent -X PUT --header 'Content-Type: application/json' --header 'Acce
"pdpGroup": "default",
"policyName": "com.MicroServicevCPE",
"policyType": "MicroService"
-}' 'http://pdp.{{.Values.nsPrefix}}:8081/pdp/api/pushPolicy'
+}' 'http://{{.Values.global.pdp.nameOverride}}:{{.Values.config.pdpPort}}/pdp/api/pushPolicy'
diff --git a/kubernetes/policy/templates/NOTES.txt b/kubernetes/policy/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/policy/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/policy/templates/all-services.yaml b/kubernetes/policy/templates/all-services.yaml
deleted file mode 100644
index f8e435b1bc..0000000000
--- a/kubernetes/policy/templates/all-services.yaml
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePolicyMariadb }}
-apiVersion: v1
-kind: Service
-metadata:
- name: mariadb
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: mariadb
-spec:
- ports:
- - name: 3306-port
- port: 3306
- selector:
- app: mariadb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disablePolicyNexus }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: nexus
- name: nexus
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: nexus-port
- port: 8081
- selector:
- app: nexus
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disablePolicyDrools }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: drools
- name: drools
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: "drools-port"
- port: 6969
- nodePort: {{ .Values.nodePortPrefix }}17
- - name: "drools-port2"
- port: 9696
- nodePort: {{ .Values.nodePortPrefix }}21
- selector:
- app: drools
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePolicyPap }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: pap
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: pap
-spec:
- ports:
- - name: 8443-port
- port: 8443
- nodePort: {{ .Values.nodePortPrefix }}19
- - name: 9091-port
- port: 9091
- nodePort: {{ .Values.nodePortPrefix }}18
- selector:
- app: pap
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePolicyPdp }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: pdp
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: pdp
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "policy-pdp",
- "version": "v1",
- "url": "/pdp",
- "protocol": "REST",
- "port": "8081",
- "visualRange":"1"
- },
- {
- "serviceName": "policy-pdp-deprecated",
- "version": "v1",
- "url": "/pdp",
- "protocol": "REST",
- "port": "8081",
- "visualRange":"1",
- "path":"/pdp"
- }
- ]'
-spec:
- ports:
- - name: 8081-port
- port: 8081
- nodePort: {{ .Values.nodePortPrefix }}20
- selector:
- app: pdp
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePolicyBrmsgw }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: brmsgw
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: brmsgw
-spec:
- ports:
- - name: 9989-port
- port: 9989
- nodePort: {{ .Values.nodePortPrefix }}16
- selector:
- app: brmsgw
- type: NodePort
-#{{ end }}
diff --git a/kubernetes/mso/templates/mso-deployment-configmap.yaml b/kubernetes/policy/templates/configmap.yaml
index 4704c6cc16..3a9564a04b 100644
--- a/kubernetes/mso/templates/mso-deployment-configmap.yaml
+++ b/kubernetes/policy/templates/configmap.yaml
@@ -12,28 +12,27 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableMsoMso }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: mso-config-mso-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/mso/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/log/xacml-pap-rest/logback.xml").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: mso-docker-file-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-sdk-log-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/log/ep_sdk_app/logback.xml").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: mso-jboss-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-pe-configmap
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/mso/jboss/standalone-full-ha-mso.xml").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/pe/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/policy/templates/dep-brmsgw.yaml b/kubernetes/policy/templates/dep-brmsgw.yaml
deleted file mode 100644
index 54b5565617..0000000000
--- a/kubernetes/policy/templates/dep-brmsgw.yaml
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePolicyBrmsgw }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-brmsgw
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.brmsgwReplicas }}
- selector:
- matchLabels:
- app: brmsgw
- template:
- metadata:
- labels:
- app: brmsgw
- name: policy-brmsgw
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - pap
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: brmsgw-readiness
- containers:
- - command:
- - /bin/bash
- - ./do-start.sh
- - brmsgw
- image: "{{ .Values.image.policyPe }}:{{ .Values.image.policyPeVersion}}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: brmsgw
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /tmp/policy-install/config
- name: pe
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: pe
- configMap:
- name: policy-dep-pe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/policy/templates/dep-drools.yaml b/kubernetes/policy/templates/dep-drools.yaml
deleted file mode 100644
index ec0413aac5..0000000000
--- a/kubernetes/policy/templates/dep-drools.yaml
+++ /dev/null
@@ -1,152 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePolicyDrools }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-drools
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.droolsReplicas }}
- selector:
- matchLabels:
- app: drools
- template:
- metadata:
- labels:
- app: drools
- name: policy-drools
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - mariadb
- - --container-name
- - nexus
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: drools-readiness
- hostAliases:
- - ip: "{{ .Values.aaiServiceClusterIp }}"
- hostnames:
- - "aai.api.simpledemo.openecomp.org"
- containers:
- - command:
- - /bin/bash
- - -c
- - ./do-start.sh
- image: "{{ .Values.image.policyDrools }}:{{ .Values.image.policyDroolsVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: drools
- ports:
- - containerPort: 6969
- readinessProbe:
- tcpSocket:
- port: 6969
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /tmp/policy-install/config/policy-keystore
- name: drools-secret
- subPath: policy-keystore
- - mountPath: /tmp/policy-install/config/feature-healthcheck.conf
- name: drools-secret
- subPath: feature-healthcheck.conf
- - mountPath: /tmp/policy-install/config/base.conf
- name: drools-config
- subPath: base.conf
- - mountPath: /tmp/policy-install/config/policy-management.conf
- name: drools-config
- subPath: policy-management.conf
- - mountPath: /tmp/policy-install/config/drools-tweaks.sh
- name: drools-config
- subPath: drools-tweaks.sh
- - mountPath: /usr/share/maven/conf/settings.xml
- name: drools-settingsxml
- subPath: settings.xml
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /tmp/logback.xml
- name: policy-logback
- subPath: logback.xml
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/config/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /usr/share/filebeat/data
- name: policy-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: policy-filebeat-configmap
- - name: policy-logs
- emptyDir: {}
- - name: policy-data-filebeat
- emptyDir: {}
- - name: policy-logback
- configMap:
- name: policy-drools-log-configmap
- - name: drools-settingsxml
- configMap:
- name: policy-dep-drools-settings-configmap
- - name: drools-config
- configMap:
- name: policy-dep-drools-configmap
- items:
- - key: base.conf
- path: base.conf
- mode: 0755
- - key: policy-management.conf
- path: policy-management.conf
- mode: 0755
- - key: drools-tweaks.sh
- path: drools-tweaks.sh
- mode: 0755
- - name: drools-secret
- secret:
- secretName: policy-dep-drools-secret
- items:
- - key: policy-keystore
- path: policy-keystore
- mode: 0644
- - key: feature-healthcheck.conf
- path: feature-healthcheck.conf
- mode: 0644
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/policy/templates/dep-maria.yaml b/kubernetes/policy/templates/dep-maria.yaml
deleted file mode 100644
index 302a052401..0000000000
--- a/kubernetes/policy/templates/dep-maria.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePolicyMariadb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-mariadb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.mariadbReplicas }}
- selector:
- matchLabels:
- app: mariadb
- template:
- metadata:
- labels:
- app: mariadb
- name: policy-mariadb
- spec:
- hostname: mariadb
- containers:
- - image: "{{ .Values.image.policyDb }}:{{ .Values.image.policyDbVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: mariadb
- ports:
- - containerPort: 3306
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/policy/templates/dep-nexus.yaml b/kubernetes/policy/templates/dep-nexus.yaml
deleted file mode 100644
index de0aeb0f30..0000000000
--- a/kubernetes/policy/templates/dep-nexus.yaml
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePolicyNexus }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-nexus
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.nexusReplicas }}
- selector:
- matchLabels:
- app: nexus
- template:
- metadata:
- labels:
- app: nexus
- name: policy-nexus
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - mariadb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: nexus-readiness
- containers:
- - image: "{{ .Values.image.policyNexus }}:{{ .Values.image.policyNexusVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: nexus
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/policy/templates/dep-pap.yaml b/kubernetes/policy/templates/dep-pap.yaml
deleted file mode 100644
index 5a0d0467eb..0000000000
--- a/kubernetes/policy/templates/dep-pap.yaml
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePolicyPap }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-pap
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.papReplicas }}
- selector:
- matchLabels:
- app: pap
- template:
- metadata:
- labels:
- app: pap
- name: policy-pap
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - mariadb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: pap-readiness
- - command: ["/bin/bash", "-c", "echo $POD_IP > /config/ip_addr.txt"]
- env:
- - name: POD_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.podIP
- volumeMounts:
- - mountPath: /config/
- name: pe
- image: {{ .Values.image.ubuntu }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: generate-ip-addr-txt
- containers:
- - command:
- - /bin/bash
- - ./do-start.sh
- - pap
- image: "{{ .Values.image.policyPe }}:{{ .Values.image.policyPeVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: pap
- env:
- - name: PRELOAD_POLICIES
- value: "true"
- ports:
- - containerPort: 8443
- - containerPort: 9091
- readinessProbe:
- tcpSocket:
- port: 9091
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /tmp/policy-install/config/
- name: pe
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /tmp/policy-install/logback.xml
- name: policy-sdk-logback
- subPath: logback.xml
- - mountPath: /tmp/logback.xml
- name: policy-logback
- subPath: logback.xml
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/servers/pap/webapps/pap/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; export SRC=/tmp/policy-install/logback.xml; export DST=/opt/app/policy/servers/console/webapps/onap/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"]
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /usr/share/filebeat/data
- name: policy-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: policy-filebeat-configmap
- - name: policy-logs
- emptyDir: {}
- - name: policy-data-filebeat
- emptyDir: {}
- - name: policy-logback
- configMap:
- name: policy-pap-log-configmap
- - name: policy-sdk-logback
- configMap:
- name: policy-sdk-log-configmap
- - name: pe
- configMap:
- name: policy-dep-pe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/policy/templates/dep-pdp.yaml b/kubernetes/policy/templates/dep-pdp.yaml
deleted file mode 100644
index 6b28ed0fdb..0000000000
--- a/kubernetes/policy/templates/dep-pdp.yaml
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePolicyPdp }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: policy-pdp
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.pdpReplicas }}
- selector:
- matchLabels:
- app: pdp
- template:
- metadata:
- labels:
- app: pdp
- name: policy-pdp
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - pap
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: pdp-readiness
- containers:
- - command:
- - /bin/bash
- - ./do-start.sh
- - pdp
- image: "{{ .Values.image.policyPe }}:{{ .Values.image.policyPeVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: pdp
- ports:
- - containerPort: 8081
- readinessProbe:
- tcpSocket:
- port: 8081
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /tmp/policy-install/config
- name: pe
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /tmp/logback.xml
- name: policy-logback
- subPath: logback.xml
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/servers/pdp/webapps/pdp/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"]
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: policy-logs
- - mountPath: /usr/share/filebeat/data
- name: policy-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: policy-filebeat-configmap
- - name: policy-logs
- emptyDir: {}
- - name: policy-data-filebeat
- emptyDir: {}
- - name: policy-logback
- configMap:
- name: policy-pdp-log-configmap
- - name: pe
- configMap:
- name: policy-dep-pe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/policy/templates/deployment.yaml b/kubernetes/policy/templates/deployment.yaml
new file mode 100644
index 0000000000..42a6544c2b
--- /dev/null
+++ b/kubernetes/policy/templates/deployment.yaml
@@ -0,0 +1,168 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.mariadb.nameOverride }}
+ 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:
+ - command:
+ - /bin/bash
+ - ./do-start.sh
+ - pap
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: PRELOAD_POLICIES
+ value: "{{ .Values.config.preloadPolicies }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /tmp/policy-install/config/push-policies.sh
+ name: pe-pap
+ subPath: push-policies.sh
+ - mountPath: /tmp/policy-install/config/pap-tweaks.sh
+ name: pe-pap
+ subPath: pap-tweaks.sh
+ - mountPath: /tmp/policy-install/config/paplp.conf
+ name: pe-pap
+ subPath: paplp.conf
+ - mountPath: /tmp/policy-install/config/pap.conf
+ name: pe-pap
+ subPath: pap.conf
+ - mountPath: /tmp/policy-install/config/mysql.conf
+ name: pe-pap
+ subPath: mysql.conf
+ - mountPath: /tmp/policy-install/config/elk.conf
+ name: pe-pap
+ subPath: elk.conf
+ - mountPath: /tmp/policy-install/config/console.conf
+ name: pe-pap
+ subPath: console.conf
+ - mountPath: /tmp/policy-install/config/base.conf
+ name: pe
+ subPath: base.conf
+ - mountPath: /tmp/policy-install/do-start.sh
+ name: pe-scripts
+ subPath: do-start.sh
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /tmp/policy-install/logback.xml
+ name: policy-sdk-logback
+ subPath: logback.xml
+ - mountPath: /tmp/logback.xml
+ name: policy-logback
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/opt/app/policy/servers/pap/webapps/pap/WEB-INF/classes/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; export SRC=/tmp/policy-install/logback.xml; export DST=/opt/app/policy/servers/console/webapps/onap/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"]
+ - image: "{{ .Values.global.loggingRepository | default .Values.loggingRepository }}/{{ .Values.global.loggingImage | default .Values.loggingImage }}"
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ name: filebeat-onap
+ volumeMounts:
+ - mountPath: /usr/share/filebeat/filebeat.yml
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: policy-logs
+ - mountPath: /usr/share/filebeat/data
+ name: policy-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: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-filebeat-configmap
+ - name: policy-logs
+ emptyDir: {}
+ - name: policy-data-filebeat
+ emptyDir: {}
+ - name: policy-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ - name: policy-sdk-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-sdk-log-configmap
+ - name: pe
+ configMap:
+ name: {{ .Release.Name }}-pe-configmap
+ defaultMode: 0755
+ - name: pe-scripts
+ configMap:
+ name: {{ .Release.Name }}-pe-scripts-configmap
+ defaultMode: 0777
+ - name: pe-pap
+ configMap:
+ name: {{ include "common.fullname" . }}-pe-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/policy/templates/policy-log-configmap.yaml b/kubernetes/policy/templates/policy-log-configmap.yaml
deleted file mode 100644
index 3a62030bd5..0000000000
--- a/kubernetes/policy/templates/policy-log-configmap.yaml
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePolicyPap }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-pap-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/xacml-pap-rest/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-sdk-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/ep_sdk_app/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
-#{{ if not .Values.disablePolicyPdp }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-pdp-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/xacml-pdp-rest/*").AsConfig . | indent 2 }}
-#{{ end }}
-#{{ if not .Values.disablePolicyDrools }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: policy-drools-log-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/drools/*").AsConfig . | indent 2 }}
-#{{ end }}
diff --git a/kubernetes/policy/templates/service.yaml b/kubernetes/policy/templates/service.yaml
new file mode 100644
index 0000000000..1d06b96a36
--- /dev/null
+++ b/kubernetes/policy/templates/service.yaml
@@ -0,0 +1,42 @@
+# 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 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}-{{ .Values.service.externalPort2 }}
+ {{- 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/policy/values.yaml b/kubernetes/policy/values.yaml
index 49ad89225d..d7dfbcfac7 100644
--- a/kubernetes/policy/values.yaml
+++ b/kubernetes/policy/values.yaml
@@ -12,33 +12,107 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ ubuntuImage: ubuntu:16.04
+ mariadb:
+ nameOverride: policydb
+ pdp:
+ nameOverride: pdp
+ pap:
+ nameOverride: pap
+ drools:
+ nameOverride: drools
+ brmwgw:
+ nameOverride: brmsgw
+ nexus:
+ nameOverride: nexus
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/policy-pe:1.2.0
pullPolicy: Always
-nodePortPrefix: 302
-
-# POLICY hotfix - Note this must be temporary
-# See https://jira.onap.org/browse/POLICY-510
-aaiServiceClusterIp: 10.43.255.254
-brmsgwReplicas: 1
-droolsReplicas: 1
-mariadbReplicas: 1
-nexusReplicas: 1
-papReplicas: 1
-pdpReplicas: 1
-image:
- readiness: oomk8s/readiness-check
- readinessVersion: 1.1.0
- policyPe: nexus3.onap.org:10001/onap/policy/policy-pe
- policyPeVersion: v1.1.1
- policyDrools: nexus3.onap.org:10001/onap/policy/policy-drools
- policyDroolsVersion: v1.1.1
- policyDb: nexus3.onap.org:10001/onap/policy/policy-db
- policyDbVersion: v1.1.1
- policyNexus: nexus3.onap.org:10001/onap/policy/policy-nexus
- policyNexusVersion: v1.1.1
- ubuntu: ubuntu:16.04
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
+subChartsOnly:
+ enabled: true
+
+nameOverride: pap
+
+pdp:
+ nameOverride: pdp
+mariadb:
+ nameOverride: policydb
+drools:
+ nameOverride: drools
+brmwgw:
+ nameOverride: brmsgw
+nexus:
+ nameOverride: nexus
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
config:
- logstashServiceName: log-ls
- logstashPort: 5044
+ preloadPolicies: false
+ pdpPort: 8081
+
+# 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: pap
+ portName: pap
+ externalPort: 8443
+ nodePort: 19
+ externalPort2: 9091
+ nodePort2: 18
+
+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/portal/.helmignore b/kubernetes/portal/.helmignore
index dd5be16eb7..82c652d9af 100644
--- a/kubernetes/portal/.helmignore
+++ b/kubernetes/portal/.helmignore
@@ -1,6 +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/
diff --git a/kubernetes/portal/Chart.yaml b/kubernetes/portal/Chart.yaml
index b7c9e7b100..b59346a614 100644
--- a/kubernetes/portal/Chart.yaml
+++ b/kubernetes/portal/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Web Portal
name: portal
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/portal/charts/portal-app/.helmignore b/kubernetes/portal/charts/portal-app/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/portal/charts/portal-app/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/portal/charts/portal-app/Chart.yaml b/kubernetes/portal/charts/portal-app/Chart.yaml
new file mode 100644
index 0000000000..0ccf705063
--- /dev/null
+++ b/kubernetes/portal/charts/portal-app/Chart.yaml
@@ -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 Portal application
+name: portal-app
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/fusion.properties b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/fusion.properties
index 876c5c7b9a..9c6fc5104f 100755
--- a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/fusion.properties
+++ b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/fusion.properties
@@ -4,7 +4,7 @@
# validator settings
#default_error_message = Default error message
-login_url_no_ret_val = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm
+login_url_no_ret_val = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/login.htm
user_attribute_name = user
diff --git a/kubernetes/portal/resources/config/log/portal/onapportal/logback.xml b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/logback.xml
index be55dc9cff..f242c41e05 100644
--- a/kubernetes/portal/resources/config/log/portal/onapportal/logback.xml
+++ b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/logback.xml
@@ -39,7 +39,7 @@
<!DOCTYPE xml>
<configuration scan="true" scanPeriod="3 seconds" debug="true">
- <!-- Log-back files for the ECOMP Portal are created in directory
+ <!-- Log-back files for the ECOMP Portal are created in directory
${catalina.base}/logs/${componentName}; e.g., apache-tomcat-8.0.35/logs/onapportal/application.log -->
<!--<jmxConfigurator /> -->
diff --git a/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/music.properties b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/music.properties
new file mode 100644
index 0000000000..10bfa47961
--- /dev/null
+++ b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/music.properties
@@ -0,0 +1,19 @@
+music.version = v2
+music.keyspace = keyspaces
+music.session.keyspace = portal
+music.tables = tables
+music.session.attr.tables = spring_session_attributes
+music.session.meta.tables = spring_session
+music.consistency.info = type
+music.consistency.info.value = eventual
+music.cache = false
+music.session.max.inactive.interval.seconds = 1800
+music.serialize.compress = true
+
+#By default it's eventual
+music.atomic.get = false
+music.atomic.put = true
+cassandra.host={{.Values.cassandra.service.name}}
+zookeeper.host={{.Values.zookeeper.service.name}}
+cassandra.user={{.Values.cassandra.config.cassandraUsername}}
+cassandra.password={{.Values.cassandra.config.cassandraPassword}}
diff --git a/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/openid-connect.properties b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/openid-connect.properties
new file mode 100755
index 0000000000..f99b2234ea
--- /dev/null
+++ b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/openid-connect.properties
@@ -0,0 +1,3 @@
+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
diff --git a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/portal.properties b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/portal.properties
index 6c89f6007c..7561e3acf6 100755
--- a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/portal.properties
+++ b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/portal.properties
@@ -5,10 +5,10 @@ max.idle.time = 5
user.attribute.name = user_attribute
# for single sign on
-ecomp_redirect_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm
+ecomp_redirect_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/login.htm
# URL of the ECOMP Portal REST API
-ecomp_rest_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/auxapi
+ecomp_rest_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/auxapi
ueb_listeners_enable = true
@@ -16,9 +16,14 @@ ueb_app_key = 7GkVcrO6sIDb3ngW
ueb_app_secret = uCYgKjWKK5IxPGNNZzYSSWo9
ueb_app_mailbox_name = ECOMP-PORTAL-INBOX
-ueb_url_list = dmaap.{{.Values.nsPrefix}}
+ueb_url_list = message-router
ecomp_portal_inbox_name = ECOMP-PORTAL-INBOX
# Consumer group name for UEB topic.
# Use the special tag to generate a unique one for each sdk-app server.
ueb_app_consumer_group_name = {UUID}
+
+role_access_centralized = remote
+
+ext_req_connection_timeout = 15000
+ext_req_read_timeout = 20000
diff --git a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/system.properties b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/system.properties
index 345d222621..109d8d24d2 100755
--- a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/system.properties
+++ b/kubernetes/portal/charts/portal-app/resources/config/deliveries/properties/ONAPPORTAL/system.properties
@@ -1,6 +1,6 @@
#mysql
db.driver = org.mariadb.jdbc.Driver
-db.connectionURL = jdbc:mariadb:failover://portaldb.{{.Values.nsPrefix}}:3306/portal
+db.connectionURL = jdbc:mariadb:failover://portal-db:3306/portal
db.userName =root
db.password =Aa123456
db.hib.dialect = org.hibernate.dialect.MySQLDialect
@@ -13,7 +13,7 @@ hb.idle_connection_test_period = 3600
app_display_name = Portal
files_path = /tmp
-context_root = ECOMPPORTAL
+context_root = ONAPPORTAL
# menu settings
menu_query_name = menuData
menu_properties_file_location = /WEB-INF/fusion/menu/
@@ -44,10 +44,8 @@ log_cron = 0 * * * * ? *
sessiontimeout_feed_cron = 0 0/5 * * * ? *
#Front end URL
-frontend_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/applicationsHome
+frontend_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/applicationsHome
-#cookie domain
-cookie_domain = onap.org
# An Unqiue 128-bit value defined to indentify a specific version of
# ECOMP Portal deployed on a specific virtual machine.
@@ -72,7 +70,7 @@ online_user_update_rate = 30
online_user_update_duration = 300
#authenticate user server
-authenticate_user_server=http://portal.api.simpledemo.onap.org:8383/openid-connect-server-webapp/allUsers
+authenticate_user_server=http://{{.Values.global.portalHostName}}:8383/openid-connect-server-webapp/allUsers
#window width threshold to collapse left/right menu when page onload
window_width_threshold_left_menu = 1400
@@ -84,9 +82,9 @@ notification_update_duration = 900
#Microservices Related Properties for Portal
microservices.widget.protocol = http
-microservices.widget.hostname = portalwidgets.{{.Values.nsPrefix}}
+microservices.widget.hostname = portal-widget
microservices.widget.username = widget_user
-microservices.widget.password = KpuqIB08YHg+btG+pjX+sA==
+microservices.widget.password = M+KcrCMVrR1rAxtiFE49n1uXC3FCkNBqFgeYsubEC/U=
#This property won't be needed after consul is functional on VMs -
microservices.widget.local.port = 8082
microservices.m-learn.local.port = 8083
@@ -98,3 +96,15 @@ auditlog_del_day_from = 365
#External system notification URL
external_system_notification_url= https://jira.onap.org/browse/
+
+# External Access System Basic Auth Credentials & Rest endpoint(These credentials doesn't work as these are place holders for now)
+ext_central_access_user_name = m00468@portal.onap.org
+ext_central_access_password = ByC0BEX2v5+4HBv2GA4S+Mi2iML+GrGNJ5Gxo/V/iWM=
+ext_central_access_url = https://aaftest.test.onap.org:8095/proxy/authz/
+ext_central_access_user_domain = @csp.onap.org
+
+# External Central Auth system access
+remote_centralized_system_access = false
+
+#cookie domain
+cookie_domain = onap.org
diff --git a/kubernetes/portal/charts/portal-app/templates/NOTES.txt b/kubernetes/portal/charts/portal-app/templates/NOTES.txt
new file mode 100644
index 0000000000..2465e03634
--- /dev/null
+++ b/kubernetes/portal/charts/portal-app/templates/NOTES.txt
@@ -0,0 +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 }}
diff --git a/kubernetes/sdc/templates/sdc-environments-configmap.yaml b/kubernetes/portal/charts/portal-app/templates/configmap.yaml
index 741c2818ea..cf3b6a579a 100644
--- a/kubernetes/sdc/templates/sdc-environments-configmap.yaml
+++ b/kubernetes/portal/charts/portal-app/templates/configmap.yaml
@@ -12,12 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableSdcSdcBe }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: sdc-environments-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-onapportal
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/environments/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPPORTAL/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/portal/charts/portal-app/templates/deployment.yaml b/kubernetes/portal/charts/portal-app/templates/deployment.yaml
new file mode 100644
index 0000000000..905d52c8cc
--- /dev/null
+++ b/kubernetes/portal/charts/portal-app/templates/deployment.yaml
@@ -0,0 +1,139 @@
+# 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:
+ initContainers:
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-portal-db-config
+ 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 }}
+ command:
+ - /start-apache-tomcat.sh
+ - -i
+ - ""
+ - -n
+ - ""
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ {{- 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:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/fusion/conf/fusion.properties"
+ subPath: fusion.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/classes/openid-connect.properties"
+ subPath: openid-connect.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/conf/system.properties"
+ subPath: system.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/classes/portal.properties"
+ subPath: portal.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/classes/music.properties"
+ subPath: music.properties
+ - name: properties-onapportal
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTAL/WEB-INF/classes/logback.xml"
+ subPath: logback.xml
+ - name: portal-tomcat-logs
+ mountPath: "{{ .Values.global.env.tomcatDir }}/logs"
+ - name: var-log-onap
+ mountPath: /var/log/onap
+ 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 }}
+ - 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
+ - name: portal-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: var-log-onap
+ mountPath: /var/log/onap
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties-onapportal
+ configMap:
+ name: {{ include "common.fullname" . }}-onapportal
+ defaultMode: 0755
+ - name: filebeat-conf
+ configMap:
+ name: portal-filebeat
+ - name: var-log-onap
+ emptyDir: {}
+ - name: portal-data-filebeat
+ emptyDir: {}
+ - name: portal-tomcat-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/portal/charts/portal-app/templates/service.yaml b/kubernetes/portal/charts/portal-app/templates/service.yaml
new file mode 100644
index 0000000000..4ccf2b02b8
--- /dev/null
+++ b/kubernetes/portal/charts/portal-app/templates/service.yaml
@@ -0,0 +1,65 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "portal",
+ "version": "v2",
+ "url": "/",
+ "protocol": "REST"
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{- if or (eq .Values.service.type "NodePort") (eq .Values.service.type "LoadBalancer") }}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
+ {{- 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
+ {{- end }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/portal/charts/portal-app/values.yaml b/kubernetes/portal/charts/portal-app/values.yaml
new file mode 100644
index 0000000000..f9081f6711
--- /dev/null
+++ b/kubernetes/portal/charts/portal-app/values.yaml
@@ -0,0 +1,105 @@
+# 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/portal-app:v2.2.0
+pullPolicy: Always
+
+# 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: LoadBalancer
+ name: portal-app
+ portName: portal-app
+ externalPort: 8989
+ internalPort: 8080
+ nodePort: 15
+ externalPort2: 8006
+ internalPort2: 8005
+ nodePort2: 13
+ externalPort3: 8010
+ internalPort3: 8009
+ nodePort3: 14
+
+mariadb:
+ service:
+ name: portal-db
+widget:
+ service:
+ name: portal-widget
+cassandra:
+ service:
+ name: portal-cassandra
+ config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+zookeeper:
+ service:
+ name: portal-zookeeper
+messageRouter:
+ service:
+ name: message-router
+
+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/portal/charts/portal-cassandra/.helmignore b/kubernetes/portal/charts/portal-cassandra/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/portal/charts/portal-cassandra/Chart.yaml b/kubernetes/portal/charts/portal-cassandra/Chart.yaml
new file mode 100644
index 0000000000..3e53ed6cf0
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/Chart.yaml
@@ -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: Portal cassandra
+name: portal-cassandra
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portal.cql b/kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portal.cql
new file mode 100644
index 0000000000..2451d6cbd9
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portal.cql
@@ -0,0 +1,54 @@
+CREATE KEYSPACE IF NOT EXISTS portal
+ WITH REPLICATION = {
+ 'class' : 'SimpleStrategy',
+ 'replication_factor': 1
+ }
+ AND DURABLE_WRITES = true;
+
+
+CREATE TABLE portal.spring_session (
+ primary_id text PRIMARY KEY,
+ creation_time text,
+ expiry_time text,
+ last_access_time text,
+ max_inactive_interval text,
+ principal_name text,
+ session_id text,
+ vector_ts text
+) WITH bloom_filter_fp_chance = 0.01
+ AND caching = {'keys': 'ALL', 'rows_per_partition': '10'}
+ AND comment = ''
+ AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
+ AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
+ AND crc_check_chance = 1.0
+ AND dclocal_read_repair_chance = 0.1
+ AND default_time_to_live = 0
+ AND gc_grace_seconds = 864000
+ AND max_index_interval = 2048
+ AND memtable_flush_period_in_ms = 0
+ AND min_index_interval = 128
+ AND read_repair_chance = 0.0
+ AND speculative_retry = '99PERCENTILE';
+
+
+CREATE TABLE portal.spring_session_attributes (
+ primary_id text,
+ attribute_name text,
+ attribute_bytes blob,
+ vector_ts text,
+ PRIMARY KEY (primary_id, attribute_name)
+) WITH CLUSTERING ORDER BY (attribute_name ASC)
+ AND bloom_filter_fp_chance = 0.01
+ AND caching = {'keys': 'ALL', 'rows_per_partition': '1'}
+ AND comment = ''
+ AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
+ AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
+ AND crc_check_chance = 1.0
+ AND dclocal_read_repair_chance = 0.1
+ AND default_time_to_live = 0
+ AND gc_grace_seconds = 864000
+ AND max_index_interval = 2048
+ AND memtable_flush_period_in_ms = 0
+ AND min_index_interval = 128
+ AND read_repair_chance = 0.0
+ AND speculative_retry = '99PERCENTILE';
diff --git a/kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portalsdk.cql b/kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portalsdk.cql
new file mode 100644
index 0000000000..47ae6cc81c
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/resources/config/cassandra/docker-entrypoint-initdb.d/portalsdk.cql
@@ -0,0 +1,54 @@
+CREATE KEYSPACE IF NOT EXISTS portalsdk
+ WITH REPLICATION = {
+ 'class' : 'SimpleStrategy',
+ 'replication_factor': 1
+ }
+ AND DURABLE_WRITES = true;
+
+
+CREATE TABLE portalsdk.spring_session (
+ primary_id text PRIMARY KEY,
+ creation_time text,
+ expiry_time text,
+ last_access_time text,
+ max_inactive_interval text,
+ principal_name text,
+ session_id text,
+ vector_ts text
+) WITH bloom_filter_fp_chance = 0.01
+ AND caching = {'keys': 'ALL', 'rows_per_partition': '10'}
+ AND comment = ''
+ AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
+ AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
+ AND crc_check_chance = 1.0
+ AND dclocal_read_repair_chance = 0.1
+ AND default_time_to_live = 0
+ AND gc_grace_seconds = 864000
+ AND max_index_interval = 2048
+ AND memtable_flush_period_in_ms = 0
+ AND min_index_interval = 128
+ AND read_repair_chance = 0.0
+ AND speculative_retry = '99PERCENTILE';
+
+
+CREATE TABLE portalsdk.spring_session_attributes (
+ primary_id text,
+ attribute_name text,
+ attribute_bytes blob,
+ vector_ts text,
+ PRIMARY KEY (primary_id, attribute_name)
+) WITH CLUSTERING ORDER BY (attribute_name ASC)
+ AND bloom_filter_fp_chance = 0.01
+ AND caching = {'keys': 'ALL', 'rows_per_partition': '1'}
+ AND comment = ''
+ AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
+ AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
+ AND crc_check_chance = 1.0
+ AND dclocal_read_repair_chance = 0.1
+ AND default_time_to_live = 0
+ AND gc_grace_seconds = 864000
+ AND max_index_interval = 2048
+ AND memtable_flush_period_in_ms = 0
+ AND min_index_interval = 128
+ AND read_repair_chance = 0.0
+ AND speculative_retry = '99PERCENTILE';
diff --git a/kubernetes/portal/charts/portal-cassandra/templates/NOTES.txt b/kubernetes/portal/charts/portal-cassandra/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/portal/charts/portal-cassandra/templates/configmap.yaml b/kubernetes/portal/charts/portal-cassandra/templates/configmap.yaml
new file mode 100644
index 0000000000..e0fec186bb
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/templates/configmap.yaml
@@ -0,0 +1,22 @@
+# 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" . }}-docker-entry-initd
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/cassandra/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/portal/charts/portal-cassandra/templates/deployment.yaml b/kubernetes/portal/charts/portal-cassandra/templates/deployment.yaml
new file mode 100644
index 0000000000..6f3f23fe31
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/templates/deployment.yaml
@@ -0,0 +1,109 @@
+# 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 }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ - containerPort: {{ .Values.service.internalPort4 }}
+ - containerPort: {{ .Values.service.internalPort5 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - /bin/bash
+ - -c
+ - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: CASSUSER
+ value: "{{ .Values.config.cassandraUsername }}"
+ - name: CASSPASS
+ value: "{{ .Values.config.cassandraPassword }}"
+ - name: JVM_OPTS
+ value: "{{ .Values.config.cassandraJvmOpts }}"
+ - name: POD_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: cassandra-docker-entrypoint-initdb
+ mountPath: /docker-entrypoint-initdb.d/zzz_portal.cql
+ subPath: portal.cql
+ - name: cassandra-docker-entrypoint-initdb
+ mountPath: /docker-entrypoint-initdb.d/zzz_portalsdk.cql
+ subPath: portalsdk.cql
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/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: cassandra-docker-entrypoint-initdb
+ configMap:
+ name: {{ include "common.fullname" . }}-docker-entry-initd
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ {{- if .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/portal/charts/portal-cassandra/templates/pv.yaml b/kubernetes/portal/charts/portal-cassandra/templates/pv.yaml
new file mode 100644
index 0000000000..184728f8ad
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/templates/pv.yaml
@@ -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/portal/charts/portal-cassandra/templates/pvc.yaml b/kubernetes/portal/charts/portal-cassandra/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/templates/pvc.yaml
@@ -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/portal/charts/portal-cassandra/templates/service.yaml b/kubernetes/portal/charts/portal-cassandra/templates/service.yaml
new file mode 100644
index 0000000000..12174314d5
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/templates/service.yaml
@@ -0,0 +1,69 @@
+# 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 }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: {{ .Values.service.portName }}4
+ - port: {{ .Values.service.externalPort5 }}
+ targetPort: {{ .Values.service.internalPort5 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort5 }}
+ name: {{ .Values.service.portName }}5
+
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName }}2
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.portName }}3
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ name: {{ .Values.service.portName }}4
+ - port: {{ .Values.service.externalPort5 }}
+ targetPort: {{ .Values.service.internalPort5 }}
+ name: {{ .Values.service.portName }}5
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/portal/charts/portal-cassandra/values.yaml b/kubernetes/portal/charts/portal-cassandra/values.yaml
new file mode 100644
index 0000000000..9c1fc430b1
--- /dev/null
+++ b/kubernetes/portal/charts/portal-cassandra/values.yaml
@@ -0,0 +1,111 @@
+# 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: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/music/cassandra_music:3.0.0
+pullPolicy: Always
+
+# application configuration
+config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+ cassandraJvmOpts: -Xmx2536m -Xms2536m
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## 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: portal/cassandra/data
+
+service:
+ type: ClusterIP
+ name: portal-cassandra
+ portName: portal-cassandra
+ externalPort: 9160
+ internalPort: 9160
+ externalPort2: 7000
+ internalPort2: 7000
+ externalPort3: 7001
+ internalPort3: 7001
+ externalPort4: 7199
+ internalPort4: 7199
+ externalPort5: 9042
+ internalPort5: 9042
+
+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/portal/charts/portal-mariadb/.helmignore b/kubernetes/portal/charts/portal-mariadb/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/portal/charts/portal-mariadb/Chart.yaml b/kubernetes/portal/charts/portal-mariadb/Chart.yaml
new file mode 100644
index 0000000000..dd9ee927f6
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/Chart.yaml
@@ -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: MariaDB Service
+name: portal-mariadb
+version: 2.0.0
diff --git a/kubernetes/portal/charts/portal-mariadb/resources/config/mariadb/oom_updates.sql b/kubernetes/portal/charts/portal-mariadb/resources/config/mariadb/oom_updates.sql
new file mode 100644
index 0000000000..f6bd05f614
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/resources/config/mariadb/oom_updates.sql
@@ -0,0 +1,24 @@
+USE portal;
+/*
+Any updates required by OOM to the portaldb are made here.
+1. split up SDC-FE and SDC-BE. Originally both FE and BE point to the same IP
+while the OOM K8s version has these service split up.
+*/
+-- app_url is the FE, app_rest_endpoint is the BE
+--portal-sdk => TODO: doesn't open a node port yet
+update fn_app set app_url = 'http://{{.Values.config.portalSdkHostName}}:{{.Values.config.portalSdkPort}}/ONAPPORTALSDK/welcome.htm', app_rest_endpoint = 'http://portal-sdk:8990/ONAPPORTALSDK/api/v2' where app_name = 'xDemo App';
+--dmaap-bc => the dmaap-bc doesn't open a node port..
+update fn_app set app_url = 'http://{{.Values.config.dmaapBcHostName}}:{{.Values.config.dmaapBcPort}}/ECOMPDBCAPP/dbc#/dmaap', app_rest_endpoint = 'http://dmaap-bc:8989/ECOMPDBCAPP/api/v2' where app_name = 'DMaaP Bus Ctrl';
+--sdc-be => 8443:30204, 8080:30205
+--sdc-fe => 8181:30206, 9443:30207
+update fn_app set app_url = 'http://{{.Values.config.sdcFeHostName}}:{{.Values.config.sdcFePort}}/sdc1/portal', app_rest_endpoint = 'http://sdc-be:8080/api/v2' where app_name = 'SDC';
+--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';
+--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
diff --git a/kubernetes/portal/charts/portal-mariadb/templates/NOTES.txt b/kubernetes/portal/charts/portal-mariadb/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/portal/charts/portal-mariadb/templates/configmap.yaml b/kubernetes/portal/charts/portal-mariadb/templates/configmap.yaml
new file mode 100644
index 0000000000..fcd325d804
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/templates/configmap.yaml
@@ -0,0 +1,22 @@
+# 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" . }}-mariadb
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/mariadb/*").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/portal/charts/portal-mariadb/templates/deployment.yaml b/kubernetes/portal/charts/portal-mariadb/templates/deployment.yaml
new file mode 100644
index 0000000000..ffb9ef0a65
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/templates/deployment.yaml
@@ -0,0 +1,89 @@
+# 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 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 }}
+ env:
+ - name: MYSQL_HOST
+ value: "{{ include "common.servicename" . }}"
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ volumeMounts:
+ - mountPath: /var/lib/mysql
+ name: mariadb-data
+ - mountPath: /etc/localtime
+ name: localtime
+ 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 }}
+ volumes:
+ {{- if .Values.persistence.enabled }}
+ - name: mariadb-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/portal/charts/portal-mariadb/templates/job.yaml b/kubernetes/portal/charts/portal-mariadb/templates/job.yaml
new file mode 100644
index 0000000000..b6eea900b9
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/templates/job.yaml
@@ -0,0 +1,90 @@
+# 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" . }}-config
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-job
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ spec:
+ restartPolicy: Never
+ initContainers:
+ - name: {{ include "common.name" . }}-init-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ include "common.name" . }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.mariadbInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: DB_HOST
+ value: "{{ include "common.servicename" . }}"
+ - name: DB_USER
+ value: {{ .Values.config.mariadbUser }}
+ - name: DB_PASS
+ valueFrom:
+ secretKeyRef: {name: {{ include "common.fullname" . }}, key: db-root-password}
+ - name: SQL_SRC_DIR
+ value: {{ .Values.config.sqlSourceDirectory }}
+ - name: {{ include "common.name" . }}-oom-update-job
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.mariadbInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: DB_HOST
+ value: "{{ include "common.servicename" . }}"
+ - name: DB_USER
+ value: {{ .Values.config.mariadbUser }}
+ - name: DB_PORT
+ value: "{{ .Values.service.internalPort }}"
+ - name: DB_PASS
+ valueFrom:
+ secretKeyRef: {name: {{ include "common.fullname" . }}, key: db-root-password}
+ command:
+ - /bin/sh
+ - -x
+ - -c
+ - "mysql -vv --user=$DB_USER --password=$DB_PASS --host=$DB_HOST --port=$DB_PORT < /tmp/oom_updates.sql"
+ volumeMounts:
+ - name: portal-mariadb-sql
+ mountPath: /tmp/oom_updates.sql
+ subPath: oom_updates.sql
+ volumes:
+ - name: portal-mariadb-sql
+ configMap:
+ name: {{ include "common.fullname" . }}-mariadb
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
diff --git a/kubernetes/portal/charts/portal-mariadb/templates/pv.yaml b/kubernetes/portal/charts/portal-mariadb/templates/pv.yaml
new file mode 100644
index 0000000000..184728f8ad
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/templates/pv.yaml
@@ -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/portal/charts/portal-mariadb/templates/pvc.yaml b/kubernetes/portal/charts/portal-mariadb/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/templates/pvc.yaml
@@ -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/portal/charts/portal-mariadb/templates/secrets.yaml b/kubernetes/portal/charts/portal-mariadb/templates/secrets.yaml
new file mode 100644
index 0000000000..4d65c078c9
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/templates/secrets.yaml
@@ -0,0 +1,27 @@
+# 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" . }}
+ 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.config.mariadbRootPassword | b64enc | quote }}
diff --git a/kubernetes/portal/charts/portal-mariadb/templates/service.yaml b/kubernetes/portal/charts/portal-mariadb/templates/service.yaml
new file mode 100644
index 0000000000..2e0c0be596
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/templates/service.yaml
@@ -0,0 +1,38 @@
+# 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.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/portal/charts/portal-mariadb/values.yaml b/kubernetes/portal/charts/portal-mariadb/values.yaml
new file mode 100644
index 0000000000..ae5849eb27
--- /dev/null
+++ b/kubernetes/portal/charts/portal-mariadb/values.yaml
@@ -0,0 +1,140 @@
+# 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
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/portal-db:v2.2.0
+pullPolicy: Always
+
+readinessImage: readiness-check:2.0.0
+mariadbInitImage: "mariadb-client-init:2.0.0"
+
+# application configuration
+config:
+ mariadbUser: root
+ mariadbRootPassword: Aa123456
+ #The directory where sql files are found in the projects gerrit repo.
+ sqlSourceDirectory: portal/deliveries
+ # sdc frontend assignment for port 8181
+ sdcFePort: "30206"
+ # application's front end hostname. Must be resolvable on the client side environment
+ sdcFeHostName: "sdc.api.fe.simpledemo.onap.org"
+ # policy pap ui assignment for port 8443
+ 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
+ vidPort: "30200"
+ # application's front end hostname. Must be resolvable on the client side environment
+ vidHostName: "vid.api.simpledemo.onap.org"
+ # aai sparky ui assignment for port 8080
+ aaiSparkyPort: "" # TODO: populate with
+ # application's front end hostname. Must be resolvable on the client side environment
+ aaiSparkyHostName: "aai.api.sparky.simpledemo.onap.org"
+ # cli ui assignment for port 8080
+ cliPort: "30260"
+ # application's front end hostname. Must be resolvable on the client side environment
+ cliHostName: "cli.api.simpledemo.onap.org"
+ # portal sdk (demo app) ui assignment for port 8990
+ portalSdkPort: "" # TODO: populate with port
+ # application's front end hostname. Must be resolvable on the client side environment
+ portalSdkHostName: "portal-sdk.simpledemo.onap.org"
+ # dmaap bus controller ui assignment for port ?
+ dmaapBcPort: "" # TODO: populate with
+ # application's front end hostname. Must be resolvable on the client side environment
+ dmaapBcHostName: "dmaap-bc.simpledemo.onap.org"
+ # msb discovery ui assignment for port ?
+ msbDiscoveryPort: "30281"
+ # application's front end hostname. Must be resolvable on the client side environment
+ msbDiscoveryHostName: "msb.api.discovery.simpledemo.onap.org"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 300
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 300
+ 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: portal/mariadb/data
+
+service:
+ type: ClusterIP
+ name: portal-db
+ portName: portal-db
+ externalPort: 3306
+ internalPort: 3306
+
+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/portal/charts/portal-sdk/.helmignore b/kubernetes/portal/charts/portal-sdk/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/portal/charts/portal-sdk/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/portal/charts/portal-sdk/Chart.yaml b/kubernetes/portal/charts/portal-sdk/Chart.yaml
new file mode 100644
index 0000000000..36125e6a1b
--- /dev/null
+++ b/kubernetes/portal/charts/portal-sdk/Chart.yaml
@@ -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: Portal software development kit
+name: portal-sdk
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/fusion.properties b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/fusion.properties
index 8ee0a95f74..6508d3c27b 100644
--- a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/fusion.properties
+++ b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/fusion.properties
@@ -32,4 +32,4 @@ business_direct_menu_set_name = BD
business_direct_menu_attribute_name = businessDirectMenuData
# Role settings
-sys_admin_role_id = 1
+sys_admin_role_id = 1 \ No newline at end of file
diff --git a/kubernetes/portal/resources/config/log/portal/onapportalsdk/logback.xml b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/logback.xml
index 32a790c6a3..864a8b9250 100644
--- a/kubernetes/portal/resources/config/log/portal/onapportalsdk/logback.xml
+++ b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/logback.xml
@@ -5,57 +5,52 @@
===================================================================
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============================================
-
+
ECOMP is a trademark and service mark of AT&T Intellectual Property.
-->
-
<configuration scan="true" scanPeriod="3 seconds" debug="true">
- <!--
- Logback files for the ONAP Portal SDK Application
+ <!--
+ Logback files for the ONAP Portal SDK Application
are created in directory ${catalina.base}/logs/${componentName}
- e.g., apache-tomcat-8.0.35/logs/epsdk_app/application.log
+ e.g., apache-tomcat-8.0.35/logs/onapsdk/application.log
-->
<!--<jmxConfigurator /> -->
-
<!-- specify the component name -->
- <property name="componentName" value="epsdk_app"></property>
-
+ <property name="componentName" value="onapsdk"></property>
<!-- specify the base path of the log directory -->
<property name="logDirPrefix" value="${catalina.base}/logs"></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" />
@@ -63,309 +58,169 @@
<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" />
+ 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" />
-
+ <!-- 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" />
-
+ <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
+ <!-- The EELFAppender is used to record events to the general application
log -->
-
-
- <appender name="EELF"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <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 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
+ <!-- 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>
+ <!--
+ <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
+ <!-- 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>
+ <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
+ <!-- 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>
+ <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
+ <!-- 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>
+ <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
+ <!-- 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">
+ <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 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>
+ <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">
+ <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 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">
+ <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 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">
+ <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 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>
-
+ </logger>
<root level="DEBUG">
<appender-ref ref="asyncEELF" />
</root>
-
-</configuration>
+</configuration> \ No newline at end of file
diff --git a/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/music.properties b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/music.properties
new file mode 100644
index 0000000000..b17797658a
--- /dev/null
+++ b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/music.properties
@@ -0,0 +1,20 @@
+music.version = v2
+music.keyspace = keyspaces
+music.session.keyspace = portalsdk
+music.tables = tables
+music.session.attr.tables = spring_session_attributes
+music.session.meta.tables = spring_session
+music.consistency.info = type
+music.consistency.info.value = eventual
+music.cache = false
+music.session.max.inactive.interval.seconds = 1800
+music.serialize.compress = true
+
+#By default it's eventual
+music.atomic.get = false
+music.atomic.put = true
+
+cassandra.host={{.Values.cassandra.service.name}}
+zookeeper.host={{.Values.zookeeper.service.name}}
+cassandra.user={{.Values.cassandra.config.cassandraUsername}}
+cassandra.password={{.Values.cassandra.config.cassandraPassword}}
diff --git a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/portal.properties b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/portal.properties
index 7eeb913f2d..f161609087 100755
--- a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/portal.properties
+++ b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/portal.properties
@@ -20,17 +20,17 @@ use_rest_for_functional_menu=true
portal.api.impl.class = org.onap.portalapp.service.OnBoardingApiServiceImpl
# CSP Global Log On for single sign on
-ecomp_redirect_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm
+ecomp_redirect_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/login.htm
# URL of the ECOMP Portal REST API
-ecomp_rest_url = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/auxapi
+ecomp_rest_url = http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/auxapi
# Applications do not need to run a UEB listener in 1610.
ueb_listeners_enable = false
# UEB Configuration
-ueb_url_list = dmaap.{{.Values.nsPrefix}}
+ueb_url_list = message-router
# ECOMP Portal listens on this UEB topic
ecomp_portal_inbox_name = ECOMP-PORTAL-INBOX
# Replace these 3 default values with the ones for your specific App,
diff --git a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/system.properties b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/system.properties
index 2f53286b56..2d92cd3b66 100755
--- a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/system.properties
+++ b/kubernetes/portal/charts/portal-sdk/resources/config/deliveries/properties/ONAPPORTALSDK/system.properties
@@ -24,7 +24,7 @@ decryption_key = AGLDdG4D04BKm2IxIWEr8o==
##########################################################################
db.driver = org.mariadb.jdbc.Driver
-db.connectionURL = jdbc:mariadb://portaldb.{{.Values.nsPrefix}}:3306/ecomp_sdk
+db.connectionURL = jdbc:mariadb://portal-db:3306/ecomp_sdk
db.userName = root
db.password = Aa123456
db.min_pool_size = 5
@@ -61,4 +61,8 @@ instance_uuid=8da691c9-987d-43ed-a358-00ac2f35685d
guard_notebook_url=
#authenticate user server
-authenticate_user_server=http://portalapps.{{.Values.nsPrefix}}:8383/openid-connect-server-webapp/allUsers
+#TODO: what is this URL supposed to be pointing to? Nothing in portal opens 8383
+authenticate_user_server=http://{{.Values.global.portalHostName}}:8383/openid-connect-server-webapp/allUsers
+
+#cookie domain
+cookie_domain = onap.org
diff --git a/kubernetes/portal/charts/portal-sdk/templates/NOTES.txt b/kubernetes/portal/charts/portal-sdk/templates/NOTES.txt
new file mode 100644
index 0000000000..0878f5c080
--- /dev/null
+++ b/kubernetes/portal/charts/portal-sdk/templates/NOTES.txt
@@ -0,0 +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={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/portal/charts/portal-sdk/templates/configmap.yaml b/kubernetes/portal/charts/portal-sdk/templates/configmap.yaml
new file mode 100644
index 0000000000..d1978c5754
--- /dev/null
+++ b/kubernetes/portal/charts/portal-sdk/templates/configmap.yaml
@@ -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" . }}-onapportalsdk
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPPORTALSDK/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/portal/charts/portal-sdk/templates/deployment.yaml b/kubernetes/portal/charts/portal-sdk/templates/deployment.yaml
new file mode 100644
index 0000000000..2d74aae080
--- /dev/null
+++ b/kubernetes/portal/charts/portal-sdk/templates/deployment.yaml
@@ -0,0 +1,130 @@
+# 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:
+ 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
+ - "portal-db"
+ 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 }}
+ command:
+ - /start-apache-tomcat.sh
+ 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 }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/fusion/conf/fusion.properties"
+ subPath: fusion.properties
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/conf/system.properties"
+ subPath: system.properties
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/classes/portal.properties"
+ subPath: portal.properties
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/classes/music.properties"
+ subPath: music.properties
+ - name: properties-onapportalsdk
+ mountPath: "{{ .Values.global.env.tomcatDir }}/webapps/ONAPPORTALSDK/WEB-INF/classes/logback.xml"
+ subPath: logback.xml
+ - name: portal-tomcat-logs
+ mountPath: "{{ .Values.global.env.tomcatDir }}/logs"
+ - name: var-log-onap
+ mountPath: /var/log/onap
+ 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 }}
+ - 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
+ - name: portal-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: var-log-onap
+ mountPath: /var/log/onap
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties-onapportalsdk
+ configMap:
+ name: {{ include "common.fullname" . }}-onapportalsdk
+ defaultMode: 0755
+ - name: filebeat-conf
+ configMap:
+ name: portal-filebeat
+ - name: var-log-onap
+ emptyDir: {}
+ - name: portal-data-filebeat
+ emptyDir: {}
+ - name: portal-tomcat-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/portal/charts/portal-sdk/templates/service.yaml b/kubernetes/portal/charts/portal-sdk/templates/service.yaml
new file mode 100644
index 0000000000..75d4a14dcf
--- /dev/null
+++ b/kubernetes/portal/charts/portal-sdk/templates/service.yaml
@@ -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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/portal/charts/portal-sdk/values.yaml b/kubernetes/portal/charts/portal-sdk/values.yaml
new file mode 100644
index 0000000000..d0aae9c9f7
--- /dev/null
+++ b/kubernetes/portal/charts/portal-sdk/values.yaml
@@ -0,0 +1,101 @@
+# 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/portal-sdk:v2.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: portal-sdk
+ portName: portal-sdk
+ externalPort: 8990
+ internalPort: 8080
+
+mariadb:
+ service:
+ name: portal-db
+widget:
+ service:
+ name: portal-widget
+cassandra:
+ service:
+ name: portal-cassandra
+ config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+zookeeper:
+ service:
+ name: portal-zookeeper
+messageRouter:
+ service:
+ name: message-router
+
+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/portal/charts/portal-widget/.helmignore b/kubernetes/portal/charts/portal-widget/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/portal/charts/portal-widget/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/portal/charts/portal-widget/Chart.yaml b/kubernetes/portal/charts/portal-widget/Chart.yaml
new file mode 100644
index 0000000000..e2b4a3c300
--- /dev/null
+++ b/kubernetes/portal/charts/portal-widget/Chart.yaml
@@ -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: Portal widgets micro service application
+name: portal-widget
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPWIDGETMS/application.properties b/kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.properties
index 3450a6d414..738834902c 100644
--- a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPWIDGETMS/application.properties
+++ b/kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.properties
@@ -6,7 +6,7 @@ spring.http.multipart.max-request-size=128MB
microservice.widget.location=/tmp
## App DB Properties
-spring.datasource.url=jdbc:mysql://portaldb.{{.Values.nsPrefix}}:3306/portal
+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
@@ -19,7 +19,7 @@ security.user.name=widget_user
security.user.password=ENC(IjywcRnI9+nuVEh9+OFFiRWAjBT1n718)
initialization.default.widgets=true
-initialization.widgetData.url=http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/commonWidgets
+initialization.widgetData.url=http://{{.Values.global.portalHostName}}:{{.Values.global.portalPort}}/ONAPPORTAL/commonWidgets
## Account Basic Authentication Properties
account.user.name=portal
@@ -31,5 +31,3 @@ account.user.password=6APqvG4AU2rfLgCvMdySwQ==
#server.ssl.keyStoreType=PKCS12
#server.ssl.keyAlias=widget-microservice
-## Jasypt Properties
-jasypt.encryptor.password=EncryptionKey
diff --git a/kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.yml b/kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.yml
new file mode 100644
index 0000000000..d655bc92a0
--- /dev/null
+++ b/kubernetes/portal/charts/portal-widget/resources/config/deliveries/properties/ONAPWIDGETMS/application.yml
@@ -0,0 +1,3 @@
+jasypt:
+ encryptor:
+ password: EncryptionKey
diff --git a/kubernetes/portal/charts/portal-widget/templates/NOTES.txt b/kubernetes/portal/charts/portal-widget/templates/NOTES.txt
new file mode 100644
index 0000000000..0878f5c080
--- /dev/null
+++ b/kubernetes/portal/charts/portal-widget/templates/NOTES.txt
@@ -0,0 +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={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/esr/templates/esr-filebeat-configmap.yaml b/kubernetes/portal/charts/portal-widget/templates/configmap.yaml
index 5f9ee9c217..23707f98aa 100644
--- a/kubernetes/esr/templates/esr-filebeat-configmap.yaml
+++ b/kubernetes/portal/charts/portal-widget/templates/configmap.yaml
@@ -12,12 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableAaiAaiResources }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: esr-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-onapwidgetms
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/deliveries/properties/ONAPWIDGETMS/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/portal/charts/portal-widget/templates/deployment.yaml b/kubernetes/portal/charts/portal-widget/templates/deployment.yaml
new file mode 100644
index 0000000000..6eafd7ad69
--- /dev/null
+++ b/kubernetes/portal/charts/portal-widget/templates/deployment.yaml
@@ -0,0 +1,97 @@
+# 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:
+ 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
+ - "portal-db"
+ 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 }}
+ command:
+ - /start-wms.sh
+ 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 }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - name: properties-onapwidgetms
+ mountPath: "/application.properties"
+ subPath: application.properties
+ - name: properties-onapwidgetms
+ mountPath: "/application.yml"
+ subPath: application.yml
+ 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: properties-onapwidgetms
+ configMap:
+ name: {{ include "common.fullname" . }}-onapwidgetms
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/portal/charts/portal-widget/templates/service.yaml b/kubernetes/portal/charts/portal-widget/templates/service.yaml
new file mode 100644
index 0000000000..75d4a14dcf
--- /dev/null
+++ b/kubernetes/portal/charts/portal-widget/templates/service.yaml
@@ -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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/portal/charts/portal-widget/values.yaml b/kubernetes/portal/charts/portal-widget/values.yaml
new file mode 100644
index 0000000000..b08fd60ffe
--- /dev/null
+++ b/kubernetes/portal/charts/portal-widget/values.yaml
@@ -0,0 +1,87 @@
+# 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
+ ubuntuInit: ubuntu-init:1.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/portal-wms:v2.2.0
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+mariadb:
+ service:
+ name: portal-db
+
+service:
+ type: ClusterIP
+ name: portal-widget
+ portName: portal-widget
+ externalPort: 8082
+ internalPort: 8082
+
+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/portal/charts/portal-zookeeper/.helmignore b/kubernetes/portal/charts/portal-zookeeper/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/portal/charts/portal-zookeeper/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/portal/charts/portal-zookeeper/Chart.yaml b/kubernetes/portal/charts/portal-zookeeper/Chart.yaml
new file mode 100644
index 0000000000..67bf17660a
--- /dev/null
+++ b/kubernetes/portal/charts/portal-zookeeper/Chart.yaml
@@ -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: Zookeeper for ONAP Portal
+name: portal-zookeeper
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/portal/charts/portal-zookeeper/templates/NOTES.txt b/kubernetes/portal/charts/portal-zookeeper/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/portal/charts/portal-zookeeper/templates/NOTES.txt
@@ -0,0 +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.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/portal/charts/portal-zookeeper/templates/deployment.yaml b/kubernetes/portal/charts/portal-zookeeper/templates/deployment.yaml
new file mode 100644
index 0000000000..cf93f6bbe1
--- /dev/null
+++ b/kubernetes/portal/charts/portal-zookeeper/templates/deployment.yaml
@@ -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: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if 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:
+ - mountPath: /etc/localtime
+ name: localtime
+ 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 }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/portal/charts/portal-zookeeper/templates/service.yaml b/kubernetes/portal/charts/portal-zookeeper/templates/service.yaml
new file mode 100644
index 0000000000..2e0c0be596
--- /dev/null
+++ b/kubernetes/portal/charts/portal-zookeeper/templates/service.yaml
@@ -0,0 +1,38 @@
+# 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.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/portal/charts/portal-zookeeper/values.yaml b/kubernetes/portal/charts/portal-zookeeper/values.yaml
new file mode 100644
index 0000000000..e6245110ab
--- /dev/null
+++ b/kubernetes/portal/charts/portal-zookeeper/values.yaml
@@ -0,0 +1,75 @@
+# 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: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: zookeeper:3.4
+pullPolicy: Always
+
+
+# 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: ClusterIP
+ name: portal-zookeeper
+ portName: portal-zk
+ externalPort: 2181
+ internalPort: 2181
+
+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/portal/docker/init/mariadb-client/Dockerfile b/kubernetes/portal/docker/init/mariadb-client/Dockerfile
index 3089bafcfd..009f2fa757 100644
--- a/kubernetes/portal/docker/init/mariadb-client/Dockerfile
+++ b/kubernetes/portal/docker/init/mariadb-client/Dockerfile
@@ -1,11 +1,40 @@
-FROM ubuntu:16.04
+FROM boxfuse/flyway:5.0.7-alpine
+ARG branch=master
ENV no_proxy "localhost,127.0.0.1,.cluster.local,$KUBERNETES_SERVICE_HOST"
# Setup Corporate proxy
ENV https_proxy ${HTTP_PROXY}
ENV http_proxy ${HTTPS_PROXY}
-RUN apt-get update
-RUN apt-get install -y mariadb-client-10.0
+RUN apk add --update \
+ mariadb-client=10.1.28-r1 \
+ git \
+ && rm -rf /var/cache/apk/*
-VOLUME /portal-mysql
+ENV so_branch=$branch
+#ENV policy_branch: $branch
+ENV portal_branch=$branch
+#ENV sdnc_branch: $branch
+#ENV vid_branch: $branch
+#ENV clamp_branch: $branch
+
+#ENV appc_repo: http://gerrit.onap.org/r/appc/deployment.git
+ENV so_repo=http://gerrit.onap.org/r/so/docker-config.git
+#ENV policy_repo: http://gerrit.onap.org/r/policy/docker.git
+ENV portal_repo=http://gerrit.onap.org/r/portal.git
+#ENV sdnc_repo: http://gerrit.onap.org/r/sdnc/oam.git
+#ENV vid_repo: http://gerrit.onap.org/r/vid.git
+#ENV clamp_repo: http://gerrit.onap.org/r/clamp.git
+
+RUN mkdir -p /onap-sources
+WORKDIR /onap-sources
+
+RUN git clone -b $branch $portal_repo && cd portal && git checkout HEAD
+RUN git clone -b $branch $so_repo && cd docker-config && git checkout HEAD
+
+VOLUME /onap-sources
+
+COPY db_migrate.sh /root
+
+RUN chmod a+x /root/db_migrate.sh
+ENTRYPOINT /root/db_migrate.sh
diff --git a/kubernetes/portal/docker/init/mariadb-client/db_migrate.sh b/kubernetes/portal/docker/init/mariadb-client/db_migrate.sh
new file mode 100644
index 0000000000..32a634a9e5
--- /dev/null
+++ b/kubernetes/portal/docker/init/mariadb-client/db_migrate.sh
@@ -0,0 +1,23 @@
+#!/bin/sh -x
+SQL_DEST_DIR=${SQL_DEST_DIR:-/tmp/sql}
+DB_PORT=${DB_PORT:-3306}
+
+[[ -z "$SQL_SRC_DIR" ]] && { echo "Error: SQL_SRC_DIR must be provided as an environment variable"; exit 1; }
+[[ -z "$DB_USER" ]] && { echo "Error: DB_USER must be provided as an environment variable"; exit 1; }
+[[ -z "$DB_PASS" ]] && { echo "Error: DB_PASS must be provided as an environment variable"; exit 1; }
+[[ -z "$DB_HOST" ]] && { echo "Error: DB_HOST must be provided as an environment variable"; exit 1; }
+
+mkdir -p $SQL_DEST_DIR
+
+#Find all sql files and copy them to the destination directory
+find "/onap-sources/$SQL_SRC_DIR" -type f -iname "*.sql" | awk -v dest="$SQL_DEST_DIR" '{n=split($1,a,"/"); system(sprintf( "cp %s %s", $1, dest"/"a[n])) }'
+
+
+#Not needed right now?
+#--database=$DB_NAME
+
+#--force to deal with duplicate records in absense of "insert ignore"
+##ERROR 1062 (23000) at line 382: Duplicate entry '2' for key 'PRIMARY'
+
+cd $SQL_DEST_DIR
+cat *.sql | mysql -vv --user=$DB_USER --password=$DB_PASS --host=$DB_HOST --port=$DB_PORT --force
diff --git a/kubernetes/portal/requirements.yaml b/kubernetes/portal/requirements.yaml
new file mode 100644
index 0000000000..1e8f788318
--- /dev/null
+++ b/kubernetes/portal/requirements.yaml
@@ -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' \ No newline at end of file
diff --git a/kubernetes/portal/resources/config/log/filebeat/filebeat.yml b/kubernetes/portal/resources/config/log/filebeat/filebeat.yml
index b0d4690754..0bc14ea908 100644
--- a/kubernetes/portal/resources/config/log/filebeat/filebeat.yml
+++ b/kubernetes/portal/resources/config/log/filebeat/filebeat.yml
@@ -21,7 +21,7 @@ output.logstash:
#List of logstash server ip addresses with port number.
#But, in our case, this will be the loadbalancer IP address.
#For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
- hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+ hosts: ["{{.Values.config.logstashServiceName}}:{{.Values.config.logstashPort}}"]
#If enable will do load balancing among availabe Logstash, automatically.
loadbalance: true
diff --git a/kubernetes/portal/resources/config/mariadb/oom_updates.sql b/kubernetes/portal/resources/config/mariadb/oom_updates.sql
deleted file mode 100644
index 781b04626c..0000000000
--- a/kubernetes/portal/resources/config/mariadb/oom_updates.sql
+++ /dev/null
@@ -1,8 +0,0 @@
-USE portal;
-/*
-Any updates required by OOM to the portaldb are made here.
-1. split up SDC-FE and SDC-BE. Originally both FE and BE point to the same IP
-while the OOM K8s version has these service split up.
-*/
-UPDATE fn_app SET app_rest_endpoint = 'http://sdc.api.be.simpledemo.onap.org:8080/api/v2' where app_name = 'SDC';
-UPDATE fn_app SET app_url = 'http://cli.api.simpledemo.onap.org:8080', app_type = 1 where app_name='CLI';
diff --git a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/openid-connect.properties b/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/openid-connect.properties
deleted file mode 100755
index 2a33551933..0000000000
--- a/kubernetes/portal/resources/config/portal-fe/webapps/etc/ONAPPORTAL/openid-connect.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-authentication_server_url = http://portal.api.simpledemo.onap.org:8383/openid-connect-server-webapp/
-ecomp_openid_connect_client = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/openid_connect_login
-ecomp_redirect_uri = http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/welcome.htm
diff --git a/kubernetes/portal/resources/scripts/update_hosts.sh b/kubernetes/portal/resources/scripts/update_hosts.sh
deleted file mode 100644
index cd38fafb40..0000000000
--- a/kubernetes/portal/resources/scripts/update_hosts.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-_SRC_HOST=$1
-_DST_HOST=$2
-_IP=`getent hosts ${_SRC_HOST}|cut -d' ' -f1`
-if [ -z ${_IP} ]; then
- echo "Cannot retreive IP for host mapping ${_SRC_HOST} -> ${_DST_HOST}"
- exit 1
-fi
-_REGEX=".*[[:blank:]]${_DST_HOST}$"
-if grep -c -e "${_REGEX}" /etc/hosts > /dev/null 2>&1 ; then
- cp /etc/hosts /tmp/hosts
- sed -i "s/${_REGEX}/${_IP} ${_DST_HOST}/g" /tmp/hosts
- cp /tmp/hosts /etc/hosts
-else
- echo "${_IP} ${_DST_HOST}" >> /etc/hosts
-fi
diff --git a/kubernetes/portal/resources/vnc/init_profile/profiles.ini b/kubernetes/portal/resources/vnc/init_profile/profiles.ini
deleted file mode 100644
index 7a1330fb4d..0000000000
--- a/kubernetes/portal/resources/vnc/init_profile/profiles.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[General]
-StartWithLastProfile=1
-
-[Profile0]
-Name=default
-IsRelative=1
-Path=onap.default
-Default=1
-
diff --git a/kubernetes/portal/templates/all-services.yaml b/kubernetes/portal/templates/all-services.yaml
deleted file mode 100644
index d6958fcc6d..0000000000
--- a/kubernetes/portal/templates/all-services.yaml
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePortalPortaldb }}
-apiVersion: v1
-kind: Service
-metadata:
- name: portaldb
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: portaldb
-spec:
- ports:
- - name: portaldb
- port: 3306
- selector:
- app: portaldb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disablePortalPortalapps }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: portalapps
- name: portalapps
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "portal",
- "version": "v2",
- "url": "/",
- "protocol": "REST"
- "port": "8989",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: portal-1
- nodePort: {{ .Values.nodePortPrefix }}13
- port: 8006
- targetPort: 8005
- - name: portal-2
- nodePort: {{ .Values.nodePortPrefix }}14
- port: 8010
- targetPort: 8009
- - name: portal-3
- nodePort: {{ .Values.nodePortPrefix }}15
- port: 8989
- targetPort: 8080
- selector:
- app: portalapps
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePortalVncPortal }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: portal-vnc
- name: portal-vnc
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: tcp-1
- port: 6080
- targetPort: 80
- nodePort: {{ .Values.nodePortPrefix }}11
- - name: tcp-2
- port: 5900
- targetPort: 5900
- nodePort: {{ .Values.nodePortPrefix }}12
- selector:
- app: portal-vnc
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disablePortalPortalwidgets }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: portalwidgets
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: portalwidgets
-spec:
- ports:
- - name: portalwidgets
- port: 8082
- selector:
- app: portalwidgets
- clusterIP: None
-#{{ end }}
diff --git a/kubernetes/esr/templates/esr-server-log-configmap.yaml b/kubernetes/portal/templates/configmap.yaml
index 5a3ddf2c2a..8eea1912ac 100644
--- a/kubernetes/esr/templates/esr-server-log-configmap.yaml
+++ b/kubernetes/portal/templates/configmap.yaml
@@ -12,12 +12,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableAaiAaiResources }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: esr-esrserver-log-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: portal-filebeat
+ namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/log/esrserver/logback.xml").AsConfig . | indent 2 }}
-#{{ end }}
+{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/portal/templates/portal-apps-configmap.yaml b/kubernetes/portal/templates/portal-apps-configmap.yaml
deleted file mode 100644
index ee5e4b8059..0000000000
--- a/kubernetes/portal/templates/portal-apps-configmap.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePortalPortalapps }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-onap-portal-sdk-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/portal-fe/webapps/etc/ONAPPORTALSDK/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-onap-portal-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/portal-fe/webapps/etc/ONAPPORTAL/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-mariadb-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/oom_updates.sql").AsConfig . | indent 2 }}
-#{{ end }}
----
-#{{ if not .Values.disablePortalPortalwidgets }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-onapwidgetms-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/portal-fe/webapps/etc/ONAPWIDGETMS/application.properties").AsConfig . | indent 2 }}
-#{{ end }}
diff --git a/kubernetes/portal/templates/portal-apps-deployment.yaml b/kubernetes/portal/templates/portal-apps-deployment.yaml
deleted file mode 100644
index ccd086caf5..0000000000
--- a/kubernetes/portal/templates/portal-apps-deployment.yaml
+++ /dev/null
@@ -1,165 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePortalPortalapps }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: portal-apps
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.portalAppsReplicas }}
- selector:
- matchLabels:
- app: portalapps
- template:
- metadata:
- labels:
- app: portalapps
- name: portal-apps
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - portaldb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portalapps-readiness
- - command: ["/bin/bash", "-c", "if [ ! -e /portal_root/boot.txt ]; then mysql -u root -pAa123456 -h portaldb < /portal-mysql/oom_updates.sql; fi"]
- volumeMounts:
- - mountPath: /portal-mysql/oom_updates.sql
- name: portal-mariadb-onboarding-sql
- subPath: oom_updates.sql
- - mountPath: /portal_root/
- name: portal-root
- image: {{ .Values.image.mariadbClient }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: provision-portaldb-users
- - command: ["/bin/bash", "-c", "mkdir -p /ubuntu-init/ && chmod -R 777 /ubuntu-init/"]
- volumeMounts:
- - name: portal-logs
- mountPath: /ubuntu-init/
- image: {{ .Values.image.ubuntuInit }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portal-app-logs-init
- containers:
- - image: {{ .Values.image.portalapps }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "echo yes > /portal_root/boot.txt"]
- name: portalapps
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/fusion/conf/fusion.properties"
- name: onap-portal-properties
- subPath: fusion.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/openid-connect.properties"
- name: onap-portal-properties
- subPath: openid-connect.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/conf/system.properties"
- name: onap-portal-properties
- subPath: system.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/portal.properties"
- name: onap-portal-properties
- subPath: portal.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/logback.xml"
- name: portal-logback
- subPath: logback.xml
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/conf/system.properties"
- name: portal-sdkapp-properties
- subPath: system.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/classes/portal.properties"
- name: portal-sdkapp-properties
- subPath: portal.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/fusion/conf/fusion.properties"
- name: portal-sdkapp-properties
- subPath: fusion.properties
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/classes/logback.xml"
- name: sdkapp-logback
- subPath: logback.xml
- - mountPath: /portal_root/
- name: portal-root
- - mountPath: "{{ .Values.onapPortal.webappsDir }}/logs"
- name: portal-logs
- - mountPath: /var/log/onap
- name: portal-logs2
- ports:
- - containerPort: 8005
- - containerPort: 8009
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: portal-logs2
- - mountPath: /usr/share/filebeat/data
- name: portal-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: portal-filebeat-configmap
- - name: portal-logs2
- emptyDir: {}
- - name: portal-data-filebeat
- emptyDir: {}
- - name: onap-portal-properties
- configMap:
- defaultMode: 0755
- name: portal-onap-portal-configmap
- - name: portal-sdkapp-properties
- configMap:
- defaultMode: 0755
- name: portal-onap-portal-sdk-configmap
- - name: portal-logback
- configMap:
- name: portal-onapportal-log-configmap
- - name: sdkapp-logback
- configMap:
- name: portal-onapportalsdk-log-configmap
- - name: portal-mariadb-onboarding-sql
- configMap:
- name: portal-mariadb-configmap
- - name: portal-root
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/portal
- - name: portal-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/portal/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/portal/templates/portal-mariadb-deployment.yaml b/kubernetes/portal/templates/portal-mariadb-deployment.yaml
deleted file mode 100644
index e1158a2461..0000000000
--- a/kubernetes/portal/templates/portal-mariadb-deployment.yaml
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePortalPortaldb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: portal-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.portalDbReplicas }}
- selector:
- matchLabels:
- app: portaldb
- template:
- metadata:
- labels:
- app: portaldb
- name: portal-db
- spec:
- containers:
- - image: {{ .Values.image.portaldb}}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "portaldb"
- env:
- - name: MYSQL_HOST
- value: "portaldb.{{ .Values.nsPrefix }}"
- - name: MYSQL_ROOT_PASSWORD
- value: Aa123456
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /var/lib/mysql
- name: portal-mariadb-data
- ports:
- - containerPort: 3306
- name: portaldb
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: portal-mariadb-data
- persistentVolumeClaim:
- claimName: portal-db
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/portal/templates/portal-pv-pvc.yaml b/kubernetes/portal/templates/portal-pv-pvc.yaml
deleted file mode 100644
index 1ba5fbb5ea..0000000000
--- a/kubernetes/portal/templates/portal-pv-pvc.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-*/}}
-
-#{{ if not .Values.disablePortalPortaldb }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-portal"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-portal"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/portal/mariadb/data
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: portal-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-portal"
-#{{ end }}
diff --git a/kubernetes/portal/templates/portal-vnc-dep.yaml b/kubernetes/portal/templates/portal-vnc-dep.yaml
deleted file mode 100644
index f3418e7bb8..0000000000
--- a/kubernetes/portal/templates/portal-vnc-dep.yaml
+++ /dev/null
@@ -1,137 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePortalVncPortal }}
-kind: ConfigMap
-metadata:
- name: portal-vnc-profiles-ini
- namespace: "{{ .Values.nsPrefix }}"
-data:
-{{ (.Files.Glob "resources/vnc/init_profile/profiles.ini").AsConfig | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: portal-vnc-update-hosts
- namespace: "{{ .Values.nsPrefix }}"
-data:
-{{ (.Files.Glob "resources/scripts/update_hosts.sh").AsConfig | indent 2 }}
----
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: portal-vnc
- name: portal-vnc
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vncPortalReplicas }}
- selector:
- matchLabels:
- app: portal-vnc
- template:
- metadata:
- labels:
- app: portal-vnc
- name: portal-vnc
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - portalapps
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portal-vnc-readiness
-{{- if empty .Values.disablePolicyPap | not }}
- - command:
- - /root/ready.py
- args:
- - --container-name
- - pap
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vnc-pap-readiness
-{{- end }}
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-fe
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vnc-sdc-readiness
- - command:
- - /root/ready.py
- args:
- - --container-name
- - vid-server
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vnc-vid-readiness
- containers:
- - image: {{ .Values.image.ubuntuDesktop }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "mkdir -p /root/.mozilla/firefox/onap.default; cp /root/.init_profile/profiles.ini /root/.mozilla/firefox/; echo 'user_pref(\"browser.tabs.remote.autostart.2\", false);' > /root/.mozilla/firefox/onap.default/prefs.js; (while true; do /tmp/update_hosts.sh sdc-be.{{ .Values.nsPrefix }} sdc.api.be.simpledemo.onap.org; /tmp/update_hosts.sh portalapps.{{ .Values.nsPrefix }} portal.api.simpledemo.onap.org; /tmp/update_hosts.sh pap.{{ .Values.nsPrefix }} policy.api.simpledemo.onap.org; /tmp/update_hosts.sh sdc-fe.{{ .Values.nsPrefix }} sdc.api.simpledemo.onap.org; /tmp/update_hosts.sh vid-server.{{ .Values.nsPrefix }} vid.api.simpledemo.onap.org; /tmp/update_hosts.sh sparky-be.{{ .Values.nsPrefix }} aai.api.simpledemo.onap.org; /tmp/update_hosts.sh cli.{{ .Values.nsPrefix }} cli.api.simpledemo.onap.org; sleep 10; done) > update_hosts.log 2>&1 &"]
- env:
- - name: VNC_PASSWORD
- value: password
- name: portal-vnc
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /root/.init_profile/profiles.ini
- name: vnc-profiles-ini
- subPath: profiles.ini
- - mountPath: /tmp/update_hosts.sh
- name: vnc-update-hosts
- subPath: update_hosts.sh
- securityContext:
- privileged: true
- securityContext: {}
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: vnc-profiles-ini
- configMap:
- name: portal-vnc-profiles-ini
- - name: vnc-update-hosts
- configMap:
- name: portal-vnc-update-hosts
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
-
diff --git a/kubernetes/portal/templates/portal-widgets-deployment.yaml b/kubernetes/portal/templates/portal-widgets-deployment.yaml
deleted file mode 100644
index 1b6669e64f..0000000000
--- a/kubernetes/portal/templates/portal-widgets-deployment.yaml
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disablePortalPortalwidgets }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: portal-widgets
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.portalWidgetsReplicas }}
- selector:
- matchLabels:
- app: portalwidgets
- template:
- metadata:
- labels:
- app: portalwidgets
- name: portal-widgets
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - portaldb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portalapps-readiness
- containers:
- - image: {{ .Values.image.portalwms }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: portalwidgets
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /application.properties
- name: portalwidgets-application-properties
- subPath: application.properties
- ports:
- - containerPort: 8082
- readinessProbe:
- tcpSocket:
- port: 8082
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: portalwidgets-application-properties
- configMap:
- name: portal-onapwidgetms-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/portal/values.yaml b/kubernetes/portal/values.yaml
index 89c2dbcd96..ebbfbc38e1 100644
--- a/kubernetes/portal/values.yaml
+++ b/kubernetes/portal/values.yaml
@@ -12,25 +12,37 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-portalAppsReplicas: 1
-portalDbReplicas: 1
-vncPortalReplicas: 1
-portalWidgetsReplicas: 1
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- portalapps: nexus3.onap.org:10001/onap/portal-apps:v1.3.0
- portaldb: nexus3.onap.org:10001/onap/portal-db:v1.3.0
- mariadbClient: oomk8s/mariadb-client-init:1.0.0
- portalwms: nexus3.onap.org:10001/onap/portal-wms:v1.3.0
- ubuntuDesktop: dorowu/ubuntu-desktop-lxde-vnc
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
- ubuntuInit: oomk8s/ubuntu-init:1.0.0
-onapPortal:
- webappsDir: "/opt/apache-tomcat-8.0.37/webapps"
+global:
+ env:
+ tomcatDir: "/opt/apache-tomcat-8.0.37"
+ # portal frontend port
+ portalPort: "8989"
+ # application's front end hostname. Must be resolvable on the client side environment
+ portalHostName: "portal.api.simpledemo.onap.org"
+
config:
logstashServiceName: log-ls
logstashPort: 5044
+
+portal-mariadb:
+ nameOverride: portal-db
+
+mariadb:
+ service:
+ name: portal-db
+widget:
+ service:
+ name: portal-widget
+cassandra:
+ service:
+ name: portal-cassandra
+ config:
+ cassandraUsername: root
+ cassandraPassword: Aa123456
+zookeeper:
+ service:
+ name: portal-zookeeper
+
+messageRouter:
+ service:
+ name: message-router \ No newline at end of file
diff --git a/kubernetes/readiness/dep-health-init.yaml b/kubernetes/readiness/dep-health-init.yaml
index 63cfc809d3..5b97852da0 100644
--- a/kubernetes/readiness/dep-health-init.yaml
+++ b/kubernetes/readiness/dep-health-init.yaml
@@ -37,7 +37,7 @@ spec:
- hbase
command:
- /root/ready.py
- image: oomk8s/readiness-check:1.1.0
+ image: oomk8s/readiness-check:2.0.0
imagePullPolicy: Always
name: healthy
env:
diff --git a/kubernetes/robot/demo-k8s.sh b/kubernetes/robot/demo-k8s.sh
index 23fc555dc5..f5e4398940 100755
--- a/kubernetes/robot/demo-k8s.sh
+++ b/kubernetes/robot/demo-k8s.sh
@@ -22,7 +22,7 @@ function usage
echo " demo.sh <namespace> appc <module_name>"
echo " - provide APPC with vFW module mount point for closed loop"
echo " "
- echo " demo.sh <namespace> init_robot"
+ echo " demo.sh <namespace> init_robot [ <etc_hosts_prefix> ]"
echo " - Initialize robot after all ONAP VMs have started"
echo " "
echo " demo.sh <namespace> instantiateVFW"
@@ -36,7 +36,11 @@ function usage
}
# Set the defaults
-if [ $# -le 1 ];then
+
+echo "Number of parameters:"
+echo $#
+
+if [ $# -lt 2 ];then
usage
exit
fi
@@ -50,6 +54,8 @@ shift
while [ $# -gt 0 ]
do
key="$1"
+ echo "KEY:"
+ echo $key
case $key in
init_robot)
@@ -62,6 +68,10 @@ do
fi
VARIABLES="$VARIABLES -v WEB_PASSWORD:$WEB_PASSWORD"
shift
+ if [ $# -eq 2 ];then
+ VARIABLES="$VARIABLES -v HOSTS_PREFIX:$1"
+ fi
+ shift
;;
init)
TAG="InitDemo"
@@ -83,7 +93,7 @@ do
TAG="PreloadDemo"
shift
if [ $# -ne 2 ];then
- echo "Usage: demo.sh preload <vnf_name> <module_name>"
+ echo "Usage: demo.sh <namespace> preload <vnf_name> <module_name>"
exit
fi
VARIABLES="$VARIABLES -v VNF_NAME:$1"
@@ -92,15 +102,15 @@ do
shift
;;
appc)
- TAG="APPCMountPointDemo"
- shift
- if [ $# -ne 1 ];then
- echo "Usage: demo.sh appc <module_name>"
- exit
- fi
- VARIABLES="$VARIABLES -v MODULE_NAME:$1"
- shift
- ;;
+ TAG="APPCMountPointDemo"
+ shift
+ if [ $# -ne 1 ];then
+ echo "Usage: demo.sh <namespace> appc <module_name>"
+ exit
+ fi
+ VARIABLES="$VARIABLES -v MODULE_NAME:$1"
+ shift
+ ;;
instantiateVFW)
TAG="instantiateVFW"
VARIABLES="$VARIABLES -v GLOBAL_BUILD_NUMBER:$$"
@@ -110,7 +120,7 @@ do
TAG="deleteVNF"
shift
if [ $# -ne 1 ];then
- echo "Usage: demo.sh deleteVNF <module_name from instantiateVFW>"
+ echo "Usage: demo.sh <namespace> deleteVNF <module_name from instantiateVFW>"
exit
fi
VARFILE=$1.py
@@ -120,13 +130,13 @@ do
echo "Cache file ${VARFILE} is not found"
exit
fi
- shift
+ shift
;;
heatbridge)
TAG="heatbridge"
shift
if [ $# -ne 3 ];then
- echo "Usage: demo.sh heatbridge <stack_name> <service_instance_id> <service>"
+ echo "Usage: demo.sh <namespace> heatbridge <stack_name> <service_instance_id> <service>"
exit
fi
VARIABLES="$VARIABLES -v HB_STACK:$1"
diff --git a/kubernetes/robot/ete-k8s.sh b/kubernetes/robot/ete-k8s.sh
index 9810ac236e..b1a7283d80 100755
--- a/kubernetes/robot/ete-k8s.sh
+++ b/kubernetes/robot/ete-k8s.sh
@@ -6,17 +6,25 @@
# 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.sh [namespace] [ health | ete | closedloop | instantiate | distribute ]"
+ echo "Usage: ete-k8s.sh [namespace] [ health | ete | closedloop | instantiate | distribute ]"
exit
fi
+
export NAMESPACE="$1"
+
+POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
+
+
export TAGS="-i $2"
export ETEHOME=/var/opt/OpenECOMP_ETE
-export OUTPUT_FOLDER=ETE_$$
+export GLOBAL_BUILD_NUMBER=$(kubectl --namespace $NAMESPACE exec ${POD} -- bash -c "ls -1q /share/logs/ | wc -l")
+export OUTPUT_FOLDER=ETE_$(printf %04d $GLOBAL_BUILD_NUMBER)_$2
+
+#export OUTPUT_FOLDER=ETE_$$
VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py"
VARIABLES="-v GLOBAL_BUILD_NUMBER:$$"
-POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
kubectl --namespace $NAMESPACE exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d /share/logs/${OUTPUT_FOLDER} ${TAGS} --display 88
+
diff --git a/kubernetes/robot/resources/config/authorization b/kubernetes/robot/resources/config/authorization
index 988730f7a8..23b429e04e 100755
--- a/kubernetes/robot/resources/config/authorization
+++ b/kubernetes/robot/resources/config/authorization
@@ -1 +1 @@
-robot:robot
+{{ .Values.config.lightHttpdUsername }}:{{ .Values.config.lightHttpdPassword }}
diff --git a/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py b/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py
index b125f792b9..17f33fc802 100755
--- a/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py
+++ b/kubernetes/robot/resources/config/eteshare/config/integration_preload_parameters.py
@@ -1,57 +1,24 @@
GLOBAL_PRELOAD_PARAMETERS = {
-# heat template parameter values common to all heat template continaing these parameters
+ # heat template parameter values common to all heat template continaing these parameters
"defaults" : {
- 'key_name' : 'vfw_key${uuid}',
- "pub_key" : "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqqnA9BAiMLtjOPSYBfhzLu4CiBolWoskDg4KVwhTJVTTeB6CqrQNcadlGXxOHhCYuNCKkUmIVF4WTOisVOJ75Z1c4OMoZLL85xVPKSIeH63kgVugwgPYQu55NbbWX+rsbUha3LnElDhNviMM3iTPbD5nnhKixNERAJMTLKXvZZZGqxW94bREknYPQTT2qrk3YRqwldncopp6Nkgv3AnSJz2gc9tjxnWF0poTQnQm/3D6hiJICrzKfAV0EaPN0KdtYjPhKrYoy6Qb/tKOVaaqsvwfKBJGrT9LfcA7D7M/yj292RT1XN63hI84WC383LsaPJ6eWdDTE6zUP1eGTWCoOw== rsa-key-20161026",
- "repo_url_blob" : "https://nexus.onap.org/content/repositories/raw",
- "repo_url_artifacts" : "https://nexus.onap.org/content/groups/staging",
- "demo_artifacts_version" : "{{ .Values.demoArtifactsVersion }}",
- "onap_private_net_id" : "{{ .Values.openStackPrivateNetId }}",
- "onap_private_subnet_id" : "{{ .Values.openStackPrivateSubnetId }}",
- "onap_private_net_cidr" : "{{ .Values.openStackPrivateNetCidr }}",
- "dcae_collector_ip" : "10.0.4.102",
- "dcae_collector_port" : "8080",
- "public_net_id" : "{{ .Values.openStackPublicNetId }}",
- "cloud_env" : "${cloud_env}",
- "install_script_version" : "${install_script_version}",
-###
-# vims_preload same for every instantiation
-###
- "bono_image_name" : "${vm_image_name}",
- "sprout_image_name" : "${vm_image_name}",
- "homer_image_name" : "${vm_image_name}",
- "homestead_image_name" : "${vm_image_name}",
- "ralf_image_name" : "${vm_image_name}",
- "ellis_image_name" : "${vm_image_name}",
- "dns_image_name" : "${vm_image_name}",
- "bono_flavor_name" : "${vm_flavor_name}",
- "sprout_flavor_name" : "${vm_flavor_name}",
- "homer_flavor_name" : "${vm_flavor_name}",
- "homestead_flavor_name" : "${vm_flavor_name}",
- "ralf_flavor_name" : "${vm_flavor_name}",
- "ellis_flavor_name" : "${vm_flavor_name}",
- "dns_flavor_name" : "${vm_flavor_name}",
- "repo_url" : "http://repo.cw-ngv.com/stable",
- "zone" : "me.cw-ngv.com",
- "dn_range_start" : "2425550000",
- "dn_range_length" : "10000",
- "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw==",
-###
-# vlb_preload same for every instantiation
-###
- "vlb_image_name" : "${vm_image_name}",
- "vlb_flavor_name" : "${vm_flavor_name}",
-###
-# vlb_preload same for every instantiation
-###
- "vfw_image_name" : "${vm_image_name}",
- "vfw_flavor_name" : "${vm_flavor_name}",
-###
- },
+ 'key_name' : 'vfw_key${uuid}',
+ "pub_key" : "{{ .Values.vnfPubKey }}",
+ "repo_url_blob" : "https://nexus.onap.org/content/repositories/raw",
+ "repo_url_artifacts" : "https://nexus.onap.org/content/groups/staging",
+ "demo_artifacts_version" : "${GLOBAL_INJECTED_ARTIFACTS_VERSION}",
+ "onap_private_net_id" : "${GLOBAL_INJECTED_NETWORK}",
+ "onap_private_subnet_id" : "{{ .Values.openStackPrivateSubnetId }}",
+ "onap_private_net_cidr" : "{{ .Values.openStackPrivateNetCidr }}",
+ "dcae_collector_ip" : "{{ .Values.dcaeCollectorIp }}",
+ "dcae_collector_port" : "30235",
+ "public_net_id" : "${GLOBAL_INJECTED_PUBLIC_NET_ID}",
+ "cloud_env" : "${GLOBAL_INJECTED_CLOUD_ENV}",
+ "install_script_version" : "${GLOBAL_INJECTED_SCRIPT_VERSION}",
+ },
-###
-# heat template parameter values for heat template instances created during Vnf-Orchestration test cases
-###
+# ##
+ # heat template parameter values for heat template instances created during Vnf-Orchestration test cases
+ # ##
"Vnf-Orchestration" : {
"vfw_preload.template": {
"unprotected_private_net_id" : "vofwl01_unprotected${hostid}",
@@ -60,37 +27,103 @@ GLOBAL_PRELOAD_PARAMETERS = {
"protected_private_net_cidr" : "192.168.20.0/24",
"vfw_private_ip_0" : "192.168.10.100",
"vfw_private_ip_1" : "192.168.20.100",
- "vfw_private_ip_2" : "{{ .Values.openStackOamNetworkCidrPrefix }}.1",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.1",
"vpg_private_ip_0" : "192.168.10.200",
- "vpg_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.2",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.2",
"vsn_private_ip_0" : "192.168.20.250",
- "vsn_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.3",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.3",
'vfw_name_0':'vofwl01fwl${hostid}',
'vpg_name_0':'vofwl01pgn${hostid}',
+ "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
'vsn_name_0':'vofwl01snk${hostid}'
},
+ "vfwsnk_preload.template": {
+ "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_id" : "vofwlsnk_protected${hostid}",
+ "protected_private_subnet_id" : "vofwlsnk_protected_sub${hostid}",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vfw_private_ip_1" : "192.168.20.100",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.101",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vsn_private_ip_0" : "192.168.20.250",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.102",
+ 'vfw_name_0':'vofwl01fwl${hostid}',
+ 'vsn_name_0':'vofwl01snk${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
+ "vpkg_preload.template": {
+ "unprotected_private_net_id" : "vofwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "vofwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.103",
+ "vsn_private_ip_0" : "192.168.20.250",
+ 'vpg_name_0':'vofwl01pgn${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
"vlb_preload.template" : {
+ "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
+ "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
"vlb_private_net_id" : "volb01_private${hostid}",
+ "pktgen_private_net_id" : "volb01_pktgen${hostid}",
"vlb_private_net_cidr" : "192.168.30.0/24",
"vlb_private_ip_0" : "192.168.30.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.4",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.4",
"vdns_private_ip_0" : "192.168.30.110",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.5",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.5",
'vlb_name_0':'vovlblb${hostid}',
'vdns_name_0':'vovlbdns${hostid}',
- "vlb_private_net_cidr" : "192.168.10.0/24",
- "pktgen_private_net_cidr" : "192.168.9.0/24"
+ "pktgen_private_net_cidr" : "192.168.9.0/24",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.7",
+ "pg_int" : "192.168.9.109",
+ "vpg_private_ip_0" : "192.168.9.110",
+ "vlb_private_ip_2" : "192.168.9.111",
+ "vip" : "192.168.9.112",
+ "gre_ipaddr" : "192.168.30.112",
+ "vpg_name_0" : "vovlbpgn${hostid}",
+ "vnf_id" : "vLoadBalancer_${hostid}",
+ "vf_module_id" : "vLoadBalancer"
},
"dnsscaling_preload.template" : {
"vlb_private_net_id" : "volb01_private${hostid}",
"vlb_private_ip_0" : "192.168.30.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.4",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.4",
"vdns_private_ip_0" : "192.168.30.222",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.6",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.6",
'scaling_vdns_name_0':'vovlbscaling${hostid}',
"vlb_private_net_cidr" : "192.168.10.0/24"
},
+ "vims_preload.template" : {
+ "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "repo_url" : "http://repo.cw-ngv.com/stable",
+ "zone" : "me.cw-ngv.com",
+ "dn_range_start" : "2425550000",
+ "dn_range_length" : "10000",
+ "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
+
+ },
"vvg_preload.template" : {
}
},
@@ -103,36 +136,101 @@ GLOBAL_PRELOAD_PARAMETERS = {
"protected_private_net_cidr" : "192.168.120.0/24",
"vfw_private_ip_0" : "192.168.110.100",
"vfw_private_ip_1" : "192.168.120.100",
- "vfw_private_ip_2" : "{{ .Values.openStackOamNetworkCidrPrefix }}.11",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.11",
"vpg_private_ip_0" : "192.168.110.200",
- "vpg_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.12",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.12",
"vsn_private_ip_0" : "192.168.120.250",
- "vsn_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.13",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.13",
'vfw_name_0':'clfwl01fwl${hostid}',
'vpg_name_0':'clfwl01pgn${hostid}',
+ "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
'vsn_name_0':'clfwl01snk${hostid}'
},
+ "vfwsnk_preload.template": {
+ "unprotected_private_net_id" : "clfwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "clfwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_id" : "clfwlsnk_protected${hostid}",
+ "protected_private_subnet_id" : "clfwlsnk_protected_sub${hostid}",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vfw_private_ip_1" : "192.168.20.100",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.111",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vsn_private_ip_0" : "192.168.20.250",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.112",
+ 'vfw_name_0':'clfwl01fwl${hostid}',
+ 'vsn_name_0':'clfwl01snk${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
+ "vpkg_preload.template": {
+ "unprotected_private_net_id" : "clfwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "clfwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.113",
+ "vsn_private_ip_0" : "192.168.20.250",
+ 'vpg_name_0':'clfwl01pgn${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
"vlb_preload.template" : {
+ "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
+ "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
"vlb_private_net_id" : "cllb01_private${hostid}",
- "vlb_private_net_cidr" : "192.168.130.0/24",
- "vlb_private_ip_0" : "192.168.130.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.14",
- "vdns_private_ip_0" : "192.168.130.110",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.15",
+ "pktgen_private_net_id" : "cllb01_pktgen${hostid}",
+ "vlb_private_net_cidr" : "192.168.30.0/24",
+ "vlb_private_ip_0" : "192.168.30.100",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.14",
+ "vdns_private_ip_0" : "192.168.30.110",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.15",
'vlb_name_0':'clvlblb${hostid}',
'vdns_name_0':'clvlbdns${hostid}',
- "vlb_private_net_cidr" : "192.168.10.0/24",
- "pktgen_private_net_cidr" : "192.168.9.0/24"
+ "pktgen_private_net_cidr" : "192.168.9.0/24",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.17",
+ "pg_int" : "192.168.9.109",
+ "vpg_private_ip_0" : "192.168.9.110",
+ "vlb_private_ip_2" : "192.168.9.111",
+ "vip" : "192.168.9.112",
+ "gre_ipaddr" : "192.168.30.112",
+ "vpg_name_0" : "clvlbpgn${hostid}",
+ "vnf_id" : "vLoadBalancer_${hostid}",
+ "vf_module_id" : "vLoadBalancer"
},
"dnsscaling_preload.template" : {
"vlb_private_net_id" : "cllb01_private${hostid}",
"vlb_private_ip_0" : "192.168.130.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.14",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.14",
"vdns_private_ip_0" : "192.168.130.222",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.16",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.16",
'scaling_vdns_name_0':'clvlbscaling${hostid}',
"vlb_private_net_cidr" : "192.168.10.0/24"
},
+ "vims_preload.template" : {
+ "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "repo_url" : "http://repo.cw-ngv.com/stable",
+ "zone" : "me.cw-ngv.com",
+ "dn_range_start" : "2425550000",
+ "dn_range_length" : "10000",
+ "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
+ },
"vvg_preload.template" : {
}
},
@@ -145,36 +243,101 @@ GLOBAL_PRELOAD_PARAMETERS = {
"protected_private_net_cidr" : "192.168.120.0/24",
"vfw_private_ip_0" : "192.168.110.100",
"vfw_private_ip_1" : "192.168.120.100",
- "vfw_private_ip_2" : "{{ .Values.openStackOamNetworkCidrPrefix }}.11",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.11",
"vpg_private_ip_0" : "192.168.110.200",
- "vpg_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.12",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.12",
"vsn_private_ip_0" : "192.168.120.250",
- "vsn_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.13",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.13",
'vfw_name_0':'demofwl01fwl',
'vpg_name_0':'demofwl01pgn',
+ "vfw_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "vfw_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
'vsn_name_0':'demofwl01snk'
},
+ "vfwsnk_preload.template": {
+ "unprotected_private_net_id" : "demofwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "demofwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_id" : "demofwlsnk_protected${hostid}",
+ "protected_private_subnet_id" : "vofwlsnk_protected_sub${hostid}",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vfw_private_ip_1" : "192.168.20.100",
+ "vfw_private_ip_2" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.121",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vsn_private_ip_0" : "192.168.20.250",
+ "vsn_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.122",
+ 'vfw_name_0':'${generic_vnf_name}',
+ 'vsn_name_0':'demofwl01snk${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ },
+ "vpkg_preload.template": {
+ "unprotected_private_net_id" : "demofwlsnk_unprotected${hostid}",
+ "unprotected_private_subnet_id" : "demofwlsnk_unprotected_sub${hostid}",
+ "unprotected_private_net_cidr" : "192.168.10.0/24",
+ "protected_private_net_cidr" : "192.168.20.0/24",
+ "vfw_private_ip_0" : "192.168.10.100",
+ "vpg_private_ip_0" : "192.168.10.200",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.123",
+ "vsn_private_ip_0" : "192.168.20.250",
+ 'vpg_name_0':'demofwl01pgn${hostid}',
+ "image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}"
+ },
"vlb_preload.template" : {
- "vlb_private_net_id" : "demolb_private",
- "vlb_private_net_cidr" : "192.168.130.0/24",
- "vlb_private_ip_0" : "192.168.130.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.14",
- "vdns_private_ip_0" : "192.168.130.110",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.15",
- 'vlb_name_0':'demovlblb',
- 'vdns_name_0':'demovlbdns',
- "vlb_private_net_cidr" : "192.168.10.0/24",
- "pktgen_private_net_cidr" : "192.168.9.0/24"
+ "vlb_image_name" : "${GLOBAL_INJECTED_UBUNTU_1604_IMAGE}",
+ "vlb_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "vlb_private_net_id" : "demolb_private${hostid}",
+ "pktgen_private_net_id" : "demolb_pktgen${hostid}",
+ "vlb_private_net_cidr" : "192.168.30.0/24",
+ "vlb_private_ip_0" : "192.168.30.100",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.24",
+ "vdns_private_ip_0" : "192.168.30.110",
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.25",
+ 'vlb_name_0':'demovlblb${hostid}',
+ 'vdns_name_0':'demovlbdns${hostid}',
+ "pktgen_private_net_cidr" : "192.168.9.0/24",
+ "vpg_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.27",
+ "pg_int" : "192.168.9.109",
+ "vpg_private_ip_0" : "192.168.9.110",
+ "vlb_private_ip_2" : "192.168.9.111",
+ "vip" : "192.168.9.112",
+ "gre_ipaddr" : "192.168.30.112",
+ "vpg_name_0" : "clvlbpgn${hostid}",
+ "vnf_id" : "vLoadBalancer_${hostid}",
+ "vf_module_id" : "vLoadBalancer"
},
"dnsscaling_preload.template" : {
- "vlb_private_net_id" : "demolb_private",
+ "vlb_private_net_id" : "demolb_private${hostid}",
"vlb_private_ip_0" : "192.168.130.100",
- "vlb_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.14",
+ "vlb_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.24",
"vdns_private_ip_0" : "192.168.130.222",
- "vdns_private_ip_1" : "{{ .Values.openStackOamNetworkCidrPrefix }}.16",
- 'scaling_vdns_name_0':'demovlbscaling',
+ "vdns_private_ip_1" : "{{.Values.openStackOamNetworkCidrPrefix}}.${ecompnet}.26",
+ 'scaling_vdns_name_0':'demovlbscaling${hostid}',
"vlb_private_net_cidr" : "192.168.10.0/24"
},
+ "vims_preload.template" : {
+ "bono_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "sprout_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homer_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "homestead_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ralf_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "ellis_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "dns_image_name" : "${GLOBAL_INJECTED_UBUNTU_1404_IMAGE}",
+ "bono_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "sprout_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homer_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "homestead_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ralf_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "ellis_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "dns_flavor_name" : "${GLOBAL_INJECTED_VM_FLAVOR}",
+ "repo_url" : "http://repo.cw-ngv.com/stable",
+ "zone" : "me.cw-ngv.com",
+ "dn_range_start" : "2425550000",
+ "dn_range_length" : "10000",
+ "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw=="
+ },
"vvg_preload.template" : {
}
}
diff --git a/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py b/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py
index 305ba3e8a0..f2a439991c 100755
--- a/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py
+++ b/kubernetes/robot/resources/config/eteshare/config/integration_robot_properties.py
@@ -1,50 +1,65 @@
-# aaf info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_AAF_SERVER = "http://10.0.12.1:8101"
-GLOBAL_AAF_USERNAME = "dgl@openecomp.org"
-GLOBAL_AAF_PASSWORD = "ecomp_admin"
-# aai info - everything is from the private oam network (also called ecomp private network)
+# 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"
+GLOBAL_AAF_PASSWORD = "demo123456!"
+
+# aai info - everything is from the private oam network (also called onap private network)
GLOBAL_AAI_SERVER_PROTOCOL = "https"
GLOBAL_AAI_SERVER_PORT = "8443"
GLOBAL_AAI_USERNAME = "AAI"
GLOBAL_AAI_PASSWORD = "AAI"
-# appc info - everything is from the private oam network (also called ecomp private network)
+# appc info - everything is from the private oam network (also called onap private network)
GLOBAL_APPC_SERVER_PROTOCOL = "http"
GLOBAL_APPC_SERVER_PORT = "8282"
-GLOBAL_APPC_SERVER = "http://10.0.2.1:"
+GLOBAL_APPC_SERVER = "http://appc.{{include "common.namespace" .}}:"
GLOBAL_APPC_USERNAME = "admin"
-GLOBAL_APPC_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
-# sdc info - everything is from the private oam network (also called ecomp private network)
+GLOBAL_APPC_PASSWORD = "admin"
+# sdc info - everything is from the private oam network (also called onap private network)
GLOBAL_ASDC_SERVER_PROTOCOL = "http"
GLOBAL_ASDC_FE_PORT = "8181"
GLOBAL_ASDC_BE_PORT = "8080"
+GLOBAL_ASDC_BE_ONBOARD_PORT = "8081"
GLOBAL_ASDC_BE_USERNAME = "beep"
GLOBAL_ASDC_BE_PASSWORD = "boop"
-# clamp info - everything is from the private oam network (also called ecomp private network)
+# clamp info - everything is from the private oam network (also called onap private network)
GLOBAL_CLAMP_SERVER_PROTOCOL = "http"
GLOBAL_CLAMP_SERVER_PORT = "8080"
-# dcae info - everything is from the private oam network (also called ecomp private network)
+# nbi info - everything is from the private oam network (also called onap private network)
+GLOBAL_NBI_SERVER_PROTOCOL = "http"
+GLOBAL_NBI_SERVER_PORT = "8080"
+# cli info - everything is from the private oam network (also called onap private network)
+GLOBAL_CLI_SERVER_PROTOCOL = "http"
+GLOBAL_CLI_SERVER_PORT = "8080"
+# dcae info - everything is from the private oam network (also called onap private network)
GLOBAL_DCAE_SERVER_PROTOCOL = "http"
-GLOBAL_DCAE_SERVER_PORT = "8080"
+GLOBAL_DCAE_HEALTH_SERVER_PORT = "80"
GLOBAL_DCAE_USERNAME = "console"
GLOBAL_DCAE_PASSWORD = "ZjJkYjllMjljMTI2M2Iz"
-# microservice bus info - everything is from the private oam network (also called ecomp private network)
+# microservice bus info - everything is from the private oam network (also called onap private network)
GLOBAL_MSB_SERVER_PROTOCOL = "http"
GLOBAL_MSB_SERVER_PORT = "80"
-# message router info - everything is from the private oam network (also called ecomp private network)
+# message router info - everything is from the private oam network (also called onap private network)
GLOBAL_MR_SERVER_PROTOCOL = "http"
GLOBAL_MR_SERVER_PORT = "3904"
-# mso info - everything is from the private oam network (also called ecomp private network)
+# 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_USERNAME = "InfraPortalClient"
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"
+# oof
+GLOBAL_OOF_SERVER_PROTOCOL = "http"
+GLOBAL_OOF_HOMING_SERVER_PORT = "8091"
+GLOBAL_OOF_SNIRO_SERVER_PORT = "8698"
# openstack info - info to select right info in environment
-# packet generate vnf info - everything is from the private oam network (also called ecomp private network)
+# packet generate vnf info - everything is from the private oam network (also called onap private network)
GLOBAL_PACKET_GENERATOR_PORT = "8183"
GLOBAL_PACKET_GENERATOR_USERNAME = "admin"
GLOBAL_PACKET_GENERATOR_PASSWORD = "admin"
GLOBAL_PGN_PORT = "2831"
-# policy info - everything is from the private oam network (also called ecomp private network)
+# policy info - everything is from the private oam network (also called onap private network)
GLOBAL_POLICY_SERVER_PROTOCOL = "http"
GLOBAL_POLICY_SERVER_PORT = "8081"
GLOBAL_POLICY_HEALTHCHECK_PORT = "6969"
@@ -52,30 +67,40 @@ GLOBAL_POLICY_AUTH = "dGVzdHBkcDphbHBoYTEyMw=="
GLOBAL_POLICY_CLIENTAUTH = "cHl0aG9uOnRlc3Q="
GLOBAL_POLICY_USERNAME = "healthcheck"
GLOBAL_POLICY_PASSWORD = "zb!XztG34"
-# portal info - everything is from the private oam network (also called ecomp private network)
+# portal info - everything is from the private oam network (also called onap private network)
GLOBAL_PORTAL_SERVER_PROTOCOL = "http"
GLOBAL_PORTAL_SERVER_PORT = "8989"
GLOBAL_PORTAL_USERNAME = "demo"
GLOBAL_PORTAL_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse"
-# sdngc info - everything is from the private oam network (also called ecomp private network)
+# sdngc info - everything is from the private oam network (also called onap private network)
GLOBAL_SDNGC_SERVER_PROTOCOL = "http"
GLOBAL_SDNGC_REST_PORT = "8282"
GLOBAL_SDNGC_ADMIN_PORT = "8843"
GLOBAL_SDNGC_USERNAME = "admin"
GLOBAL_SDNGC_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
-# vid info - everything is from the private oam network (also called ecomp private network)
+# sms (AAF) info
+GLOBAL_SMS_SERVER_PROTOCOL = "https"
+GLOBAL_SMS_SERVER_NAME = "aaf-sms.{{include "common.namespace" .}}"
+GLOBAL_SMS_SERVER_PORT = "10443"
+# vid info - everything is from the private oam network (also called onap private network)
GLOBAL_VID_SERVER_PROTOCOL = "http"
GLOBAL_VID_SERVER_PORT = "8080"
GLOBAL_VID_USERNAME = "demo"
GLOBAL_VID_PASSWORD = "Kp8bJ4SXszM0WX"
GLOBAL_VID_HEALTH_USERNAME = "Default"
GLOBAL_VID_HEALTH_PASSWORD = "AppPassword!1"
+# vnfsdk info - everything is from the private oam network (also called onap private network)
+GLOBAL_VNFSDK_SERVER_PROTOCOL = "http"
+GLOBAL_VNFSDK_SERVER_PORT = "8702"
#global selenium info
-GLOBAL_PROXY_WARNING_TITLE = ""
-GLOBAL_PROXY_WARNING_CONTINUE_XPATH = ""
-# settings for vm to attach vvg too
-GLOBAL_VVGSERVER_IMAGE = "{{ .Values.ubuntuImage }}"
-GLOBAL_VVGSERVER_FLAVOR = "{{ .Values.openStackFlavourMedium }}"
+GLOBAL_PROXY_WARNING_TITLE=""
+GLOBAL_PROXY_WARNING_CONTINUE_XPATH=""
# dns info
GLOBAL_DNS_TRAFFIC_DURATION = "600"
+# location where heat templates are loaded from
GLOBAL_HEAT_TEMPLATES_FOLDER = "/share/heat"
+# Log info
+GLOBAL_LOG_SERVER_PROTOCOL = "http"
+GLOBAL_LOG_ELASTICSEARCH_PORT = "9200"
+GLOBAL_LOG_LOGSTASH_PORT = "9600"
+GLOBAL_LOG_KIBANA_PORT = "5601"
diff --git a/kubernetes/robot/resources/config/eteshare/config/vm_properties.py b/kubernetes/robot/resources/config/eteshare/config/vm_properties.py
index cd1ce14dc8..261d345c84 100755
--- a/kubernetes/robot/resources/config/eteshare/config/vm_properties.py
+++ b/kubernetes/robot/resources/config/eteshare/config/vm_properties.py
@@ -1,79 +1,111 @@
-#file generated from /opt/config
+# File generated from /opt/config
#
-GLOBAL_INJECTED_AAI1_IP_ADDR = "{{.Release.Name}}-aai.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_AAF_IP_ADDR = "aaf-service.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_AAI1_IP_ADDR = "aai.{{include "common.namespace" .}}"
GLOBAL_INJECTED_AAI2_IP_ADDR = "N/A"
-GLOBAL_INJECTED_APPC_IP_ADDR = "{{.Release.Name}}-appc-sdnhost.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_APPC_IP_ADDR = "appc.{{include "common.namespace" .}}"
GLOBAL_INJECTED_ARTIFACTS_VERSION = "{{.Values.demoArtifactsVersion}}"
-GLOBAL_INJECTED_CLAMP_IP_ADDR = "{{.Release.Name}}-clamp.{{include "common.namespace" .}}"
+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 = "{{.Release.Name}}-dcae-controller.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_DNS_IP_ADDR = "10.0.100.1"
+GLOBAL_INJECTED_DCAE_IP_ADDR = "dcae-healthcheck.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_DNS_IP_ADDR = "N/A"
GLOBAL_INJECTED_DOCKER_VERSION = "1.2-STAGING-latest"
-#GLOBAL_INJECTED_EXTERNAL_DNS = "N/A"
+GLOBAL_INJECTED_EXTERNAL_DNS = "N/A"
GLOBAL_INJECTED_GERRIT_BRANCH = "master"
+GLOBAL_INJECTED_LOG_ELASTICSEARCH_IP_ADDR = "log-es.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_LOG_KIBANA_IP_ADDR = "log-kibana.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_LOG_LOGSTASH_IP_ADDR = "log-ls-http.{{include "common.namespace" .}}"
GLOBAL_INJECTED_KEYSTONE = "{{ .Values.openStackKeyStoneUrl }}"
-GLOBAL_INJECTED_MR_IP_ADDR = "{{.Release.Name}}-dmaap.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_MSO_IP_ADDR = "{{.Release.Name}}-so.{{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 }}"
GLOBAL_INJECTED_NEXUS_DOCKER_REPO = "nexus3.onap.org:10001"
GLOBAL_INJECTED_NEXUS_PASSWORD = "docker"
GLOBAL_INJECTED_NEXUS_REPO = "https://nexus.onap.org/content/sites/raw"
GLOBAL_INJECTED_NEXUS_USERNAME = "docker"
-GLOBAL_INJECTED_OPENO_IP_ADDR = "{{.Release.Name}}-msb-iag.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_OPENSTACK_PASSWORD = "{{ .Values.openStackEncryptedPassword }}"
+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_OPENO_IP_ADDR = "msb-iag.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_OPENSTACK_PASSWORD = "{{ .Values.openStackPassword }}"
GLOBAL_INJECTED_OPENSTACK_TENANT_ID = "{{ .Values.openStackTenantId }}"
GLOBAL_INJECTED_OPENSTACK_USERNAME = "{{ .Values.openStackUserName }}"
-GLOBAL_INJECTED_POLICY_IP_ADDR = "{{.Release.Name}}-pypdp.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR = "{{.Release.Name}}-drools.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_PORTAL_IP_ADDR = "{{.Release.Name}}-portalapps.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_POLICY_IP_ADDR = "pdp.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR = "drools.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_PORTAL_IP_ADDR = "portal-app.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_PUBLIC_NET_ID = "{{ .Values.openStackPublicNetId }}"
GLOBAL_INJECTED_REGION = "{{ .Values.openStackRegion }}"
GLOBAL_INJECTED_REMOTE_REPO = "http://gerrit.onap.org/r/testsuite/properties.git"
-GLOBAL_INJECTED_SDC_IP_ADDR = "{{.Release.Name}}-sdc-be.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SDC_FE_IP_ADDR = "{{.Release.Name}}-sdc-fe.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SDC_BE_IP_ADDR = "{{.Release.Name}}-sdc-be.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SDNC_IP_ADDR = "{{.Release.Name}}-sdnhost.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR = "{{.Release.Name}}-sdnc-portal.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_SO_IP_ADDR = "{{.Release.Name}}-so.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_VID_IP_ADDR = "{{.Release.Name}}-vid-server.{{include "common.namespace" .}}"
-GLOBAL_INJECTED_VM_FLAVOR = "{{ .Values.openStackFlavourMedium }}"
-GLOBAL_INJECTED_VM_IMAGE_NAME = "{{ .Values.ubuntuImage }}"
-GLOBAL_INJECTED_PUBLIC_NET_ID = "{{ .Values.openStackPublicNetId }}"
GLOBAL_INJECTED_SCRIPT_VERSION = "{{ .Values.scriptVersion }}"
+GLOBAL_INJECTED_SDC_BE_IP_ADDR = "sdc-be.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SDC_BE_ONBOARD_IP_ADDR = "sdc-onboarding-be.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SDC_FE_IP_ADDR = "sdc-fe.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SDC_IP_ADDR = "N/A"
+GLOBAL_INJECTED_SDNC_IP_ADDR = "sdnc.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR = "sdnc-portal.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_SO_IP_ADDR = "so.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_UBUNTU_1404_IMAGE = "{{ .Values.ubuntu14Image }}"
+GLOBAL_INJECTED_UBUNTU_1604_IMAGE = "{{ .Values.ubuntu16Image }}"
+GLOBAL_INJECTED_VM_IMAGE_NAME = "{{ .Values.ubuntu14Image }}"
+GLOBAL_INJECTED_VID_IP_ADDR = "vid.{{include "common.namespace" .}}"
+GLOBAL_INJECTED_VM_FLAVOR = "{{ .Values.openStackFlavourMedium }}"
+GLOBAL_INJECTED_VNFSDK_IP_ADDR = "refrepo.{{include "common.namespace" .}}"
+
GLOBAL_INJECTED_PROPERTIES = {
- "GLOBAL_INJECTED_AAI1_IP_ADDR" : "{{.Release.Name}}-aai.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_APPC_IP_ADDR" : "{{.Release.Name}}-appc-sdnhost.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_AAF_IP_ADDR" : "aaf-service.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_AAI1_IP_ADDR" : "aai.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_AAI2_IP_ADDR" : "N/A",
+ "GLOBAL_INJECTED_APPC_IP_ADDR" : "appc.{{include "common.namespace" .}}",
"GLOBAL_INJECTED_ARTIFACTS_VERSION" : "{{.Values.demoArtifactsVersion}}",
- "GLOBAL_INJECTED_CLAMP_IP_ADDR" : "{{.Release.Name}}-clamp.{{include "common.namespace" .}}",
+ "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" : "{{.Release.Name}}-dcae-controller.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_DNS_IP_ADDR" : "10.0.100.1",
+ "GLOBAL_INJECTED_DCAE_IP_ADDR" : "dcae-healthcheck.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_DNS_IP_ADDR" : "N/A",
"GLOBAL_INJECTED_DOCKER_VERSION" : "1.2-STAGING-latest",
+ "GLOBAL_INJECTED_EXTERNAL_DNS" : "N/A",
"GLOBAL_INJECTED_GERRIT_BRANCH" : "master",
"GLOBAL_INJECTED_KEYSTONE" : "{{ .Values.openStackKeyStoneUrl }}",
- "GLOBAL_INJECTED_MR_IP_ADDR" : "{{.Release.Name}}-dmaap.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_MSO_IP_ADDR" : "{{.Release.Name}}-so.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_LOG_ELASTICSEARCH_IP_ADDR" : "log-es.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_LOG_KIBANA_IP_ADDR" : "log-kibana.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_LOG_LOGSTASH_IP_ADDR" : "log-ls.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_MR_IP_ADDR" : "message-router.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_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 }}",
"GLOBAL_INJECTED_NEXUS_DOCKER_REPO" : "nexus3.onap.org:10001",
"GLOBAL_INJECTED_NEXUS_PASSWORD" : "docker",
"GLOBAL_INJECTED_NEXUS_REPO" : "https://nexus.onap.org/content/sites/raw",
"GLOBAL_INJECTED_NEXUS_USERNAME" : "docker",
- "GLOBAL_INJECTED_OPENO_IP_ADDR" : "{{.Release.Name}}-msb-iag.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_OPENSTACK_PASSWORD" : "{{ .Values.openStackEncryptedPassword }}",
+ "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_OPENO_IP_ADDR" : "msb-iag.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_OPENSTACK_PASSWORD" : "{{ .Values.openStackPassword }}",
"GLOBAL_INJECTED_OPENSTACK_TENANT_ID" : "{{ .Values.openStackTenantId }}",
"GLOBAL_INJECTED_OPENSTACK_USERNAME" : "{{ .Values.openStackUserName }}",
- "GLOBAL_INJECTED_POLICY_IP_ADDR" : "{{.Release.Name}}-pypdp.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR" : "{{.Release.Name}}-drools.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_PORTAL_IP_ADDR" : "{{.Release.Name}}-portalapps.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_POLICY_IP_ADDR" : "pdp.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR" : "drools.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_PORTAL_IP_ADDR" : "portal-app.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_PUBLIC_NET_ID" : "{{ .Values.openStackPublicNetId }}",
"GLOBAL_INJECTED_REGION" : "{{ .Values.openStackRegion }}",
"GLOBAL_INJECTED_REMOTE_REPO" : "http://gerrit.onap.org/r/testsuite/properties.git",
- "GLOBAL_INJECTED_SDC_FE_IP_ADDR" : "{{.Release.Name}}-sdc-fe.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_SDC_BE_IP_ADDR" : "{{.Release.Name}}-sdc-be.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_SDNC_IP_ADDR" : "{{.Release.Name}}-sdnhost.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR" : "{{.Release.Name}}-sdnc-portal.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_SO_IP_ADDR" : "{{.Release.Name}}-so.{{include "common.namespace" .}}",
- "GLOBAL_INJECTED_VID_IP_ADDR" : "{{.Release.Name}}-vid-server.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDC_BE_IP_ADDR" : "sdc-be.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDC_BE_ONBOARD_IP_ADDR" : "sdc-onboarding-be.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDC_FE_IP_ADDR" : "sdc-fe.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDC_IP_ADDR" : "N/A",
+ "GLOBAL_INJECTED_SCRIPT_VERSION" : "{{ .Values.scriptVersion }}",
+ "GLOBAL_INJECTED_SDNC_IP_ADDR" : "sdnc.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR" : "sdnc-portal.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_SO_IP_ADDR" : "so.{{include "common.namespace" .}}",
+ "GLOBAL_INJECTED_UBUNTU_1404_IMAGE" : "{{.Values.ubuntu14Image}}",
+ "GLOBAL_INJECTED_UBUNTU_1604_IMAGE" : "{{.Values.ubuntu16Image}}",
+ "GLOBAL_INJECTED_VM_IMAGE_NAME" : "{{ .Values.ubuntu14Image }}",
+ "GLOBAL_INJECTED_VID_IP_ADDR" : "vid.{{include "common.namespace" .}}",
"GLOBAL_INJECTED_VM_FLAVOR" : "{{ .Values.openStackFlavourMedium }}",
- "GLOBAL_INJECTED_VM_IMAGE_NAME" : "{{ .Values.ubuntuImage }}",
- "GLOBAL_INJECTED_PUBLIC_NET_ID" : "{{ .Values.openStackPublicNetId }}",
- "GLOBAL_INJECTED_SCRIPT_VERSION" : "{{ .Values.scriptVersion }}"
+ "GLOBAL_INJECTED_VNFSDK_IP_ADDR" : "refrepo.{{include "common.namespace" .}}"
}
diff --git a/kubernetes/robot/resources/config/robot/resources/asdc_interface.robot b/kubernetes/robot/resources/config/robot/resources/asdc_interface.robot
deleted file mode 100644
index 5b69a66c7c..0000000000
--- a/kubernetes/robot/resources/config/robot/resources/asdc_interface.robot
+++ /dev/null
@@ -1,495 +0,0 @@
-*** Settings ***
-Documentation The main interface for interacting with ASDC. It handles low level stuff like managing the http request library and DCAE required fields
-Library RequestsLibrary
-Library UUID
-Library JSONUtils
-Library OperatingSystem
-Library Collections
-Library ExtendedSelenium2Library
-Resource global_properties.robot
-Resource browser_setup.robot
-Resource json_templater.robot
-*** Variables ***
-${ASDC_DESIGNER_USER_ID} cs0008
-${ASDC_TESTER_USER_ID} jm0007
-${ASDC_GOVERNOR_USER_ID} gv0001
-${ASDC_OPS_USER_ID} op0001
-${ASDC_HEALTH_CHECK_PATH} /sdc1/rest/healthCheck
-${ASDC_VENDOR_LICENSE_MODEL_PATH} /onboarding-api/v1.0/vendor-license-models
-${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH} /onboarding-api/v1.0/vendor-software-products
-${ASDC_VENDOR_KEY_GROUP_PATH} /license-key-groups
-${ASDC_VENDOR_ENTITLEMENT_POOL_PATH} /entitlement-pools
-${ASDC_VENDOR_FEATURE_GROUP_PATH} /feature-groups
-${ASDC_VENDOR_LICENSE_AGREEMENT_PATH} /license-agreements
-${ASDC_VENDOR_ACTIONS_PATH} /actions
-${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH} /orchestration-template-candidate
-${ASDC_CATALOG_RESOURCES_PATH} /sdc2/rest/v1/catalog/resources
-${ASDC_CATALOG_SERVICES_PATH} /sdc2/rest/v1/catalog/services
-${ASDC_CATALOG_INACTIVE_RESOURCES_PATH} /sdc2/rest/v1/inactiveComponents/resource
-${ASDC_CATALOG_INACTIVE_SERVICES_PATH} /sdc2/rest/v1/inactiveComponents/service
-${ASDC_CATALOG_LIFECYCLE_PATH} /lifecycleState
-${ASDC_CATALOG_SERVICE_RESOURCE_INSTANCE_PATH} /resourceInstance
-${ASDC_CATALOG_SERVICE_DISTRIBUTION_STATE_PATH} /distribution-state
-${ASDC_CATALOG_SERVICE_DISTRIBUTION_PATH} /distribution
-${ASDC_DISTRIBUTION_STATE_APPROVE_PATH} /approve
-${ASDC_CATALOG_SERVICE_DISTRIBUTION_ACTIVATE_PATH} /distribution/PROD/activate
-${ASDC_LICENSE_MODEL_TEMPLATE} robot/assets/templates/asdc/license_model.template
-${ASDC_KEY_GROUP_TEMPLATE} robot/assets/templates/asdc/key_group.template
-${ASDC_ENTITLEMENT_POOL_TEMPLATE} robot/assets/templates/asdc/entitlement_pool.template
-${ASDC_FEATURE_GROUP_TEMPLATE} robot/assets/templates/asdc/feature_group.template
-${ASDC_LICENSE_AGREEMENT_TEMPLATE} robot/assets/templates/asdc/license_agreement.template
-${ASDC_ACTION_TEMPLATE} robot/assets/templates/asdc/action.template
-${ASDC_SOFTWARE_PRODUCT_TEMPLATE} robot/assets/templates/asdc/software_product.template
-${ASDC_CATALOG_RESOURCE_TEMPLATE} robot/assets/templates/asdc/catalog_resource.template
-${ASDC_USER_REMARKS_TEMPLATE} robot/assets/templates/asdc/user_remarks.template
-${ASDC_CATALOG_SERVICE_TEMPLATE} robot/assets/templates/asdc/catalog_service.template
-${ASDC_RESOURCE_INSTANCE_TEMPLATE} robot/assets/templates/asdc/resource_instance.template
-${ASDC_FE_ENDPOINT} ${GLOBAL_ASDC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_SDC_FE_IP_ADDR}:${GLOBAL_ASDC_FE_PORT}
-${ASDC_BE_ENDPOINT} ${GLOBAL_ASDC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_SDC_BE_IP_ADDR}:${GLOBAL_ASDC_BE_PORT}
-
-*** Keywords ***
-Distribute Model From ASDC
- [Documentation] goes end to end creating all the asdc objects based ona model and distributing it to the systems. it then returns the service name, vf name and vf module name
- [Arguments] ${model_zip_path} ${catalog_service_name}=
- ${catalog_service_id}= Add ASDC Catalog Service ${catalog_service_name}
- ${catalog_resource_ids}= Create List
- ${catalog_resources}= Create Dictionary
- : FOR ${zip} IN @{model_zip_path}
- \ ${loop_catalog_resource_id}= Setup ASDC Catalog Resource ${zip}
- \ Append To List ${catalog_resource_ids} ${loop_catalog_resource_id}
- \ ${loop_catalog_resource_resp}= Get ASDC Catalog Resource ${loop_catalog_resource_id}
- \ Add ASDC Resource Instance ${catalog_service_id} ${loop_catalog_resource_id} ${loop_catalog_resource_resp['name']}
- \ Set To Dictionary ${catalog_resources} ${loop_catalog_resource_id}=${loop_catalog_resource_resp}
- ${catalog_service_resp}= Get ASDC Catalog Service ${catalog_service_id}
- Checkin ASDC Catalog Service ${catalog_service_id}
- Request Certify ASDC Catalog Service ${catalog_service_id}
- Start Certify ASDC Catalog Service ${catalog_service_id}
- # on certify it gets a new id
- ${catalog_service_id}= Certify ASDC Catalog Service ${catalog_service_id}
- Approve ASDC Catalog Service ${catalog_service_id}
- Distribute ASDC Catalog Service ${catalog_service_id}
- ${catalog_service_resp}= Get ASDC Catalog Service ${catalog_service_id}
- ${vf_module}= Find Element In Array ${loop_catalog_resource_resp['groups']} type org.openecomp.groups.VfModule
- Check Catalog Service Distributed ${catalog_service_resp['uuid']}
- [Return] ${catalog_service_resp['name']} ${loop_catalog_resource_resp['name']} ${vf_module} ${catalog_resource_ids} ${catalog_service_id} ${catalog_resources}
-
-Setup ASDC Catalog Resource
- [Documentation] Creates all the steps a vf needs for an asdc catalog resource and returns the id
- [Arguments] ${model_zip_path}
- ${license_model_id}= Add ASDC License Model
- ${key_group_id}= Add ASDC License Group ${license_model_id}
- ${pool_id}= Add ASDC Entitlement Pool ${license_model_id}
- ${feature_group_id}= Add ASDC Feature Group ${license_model_id} ${key_group_id} ${pool_id}
- ${license_agreement_id}= Add ASDC License Agreement ${license_model_id} ${feature_group_id}
- Checkin ASDC License Model ${license_model_id}
- Submit ASDC License Model ${license_model_id}
- ${license_model_resp}= Get ASDC License Model ${license_model_id} 1.0
- ${software_product_id}= Add ASDC Software Product ${license_agreement_id} ${feature_group_id} ${license_model_resp['vendorName']} ${license_model_id}
- Upload ASDC Heat Package ${software_product_id} ${model_zip_path}
- Validate ASDC Software Product ${software_product_id}
- Checkin ASDC Software Product ${software_product_id}
- Submit ASDC Software Product ${software_product_id}
- Package ASDC Software Product ${software_product_id}
- ${software_product_resp}= Get ASDC Software Product ${software_product_id} 1.0
- ${catalog_resource_id}= Add ASDC Catalog Resource ${license_agreement_id} ${software_product_resp['name']} ${license_model_resp['vendorName']} ${software_product_id}
- Checkin ASDC Catalog Resource ${catalog_resource_id}
- Request Certify ASDC Catalog Resource ${catalog_resource_id}
- Start Certify ASDC Catalog Resource ${catalog_resource_id}
- # on certify it gets a new id
- [Return] ${catalog_resource_id}
- ${catalog_resource_id}= Certify ASDC Catalog Resource ${catalog_resource_id}
-Add ASDC License Model
- [Documentation] Creates an asdc license model and returns its id
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary vendor_name=${shortened_uuid}
- ${data}= Fill JSON Template File ${ASDC_LICENSE_MODEL_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC License Model
- [Documentation] gets an asdc license model by its id
- [Arguments] ${id} ${version_id}=0.1
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}
- [Return] ${resp.json()}
-Get ASDC License Models
- [Documentation] gets an asdc license model by its id
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}
- [Return] ${resp.json()}
-Checkin ASDC License Model
- [Documentation] checksin an asdc license model by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Checkin
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Submit ASDC License Model
- [Documentation] submits an asdc license model by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Submit
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Checkin ASDC Software Product
- [Documentation] checksin an asdc Software Product by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Checkin
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Validate ASDC Software Product
- [Documentation] checksin an asdc Software Product by its id
- [Arguments] ${id} ${version_id}=0.1
- ${data}= Catenate
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}/orchestration-template-candidate/process ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Submit ASDC Software Product
- [Documentation] submits an asdc Software Product by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Submit
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Package ASDC Software Product
- [Documentation] creates_package on an asdc Software Product by its id
- [Arguments] ${id} ${version_id}=0.1
- ${map}= Create Dictionary action=Create_Package
- ${data}= Fill JSON Template File ${ASDC_ACTION_TEMPLATE} ${map}
- ${resp}= Run ASDC Put Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Add ASDC Entitlement Pool
- [Documentation] Creates an asdc Entitlement Pool and returns its id
- [Arguments] ${license_model_id} ${version_id}=0.1
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary entitlement_pool_name=${shortened_uuid}
- ${data}= Fill JSON Template File ${ASDC_ENTITLEMENT_POOL_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_ENTITLEMENT_POOL_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC Entitlement Pool
- [Documentation] gets an asdc Entitlement Pool by its id
- [Arguments] ${license_model_id} ${pool_id}
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_ENTITLEMENT_POOL_PATH}/${pool_id}
- [Return] ${resp.json()}
-Add ASDC License Group
- [Documentation] Creates an asdc license group and returns its id
- [Arguments] ${license_model_id} ${version_id}=0.1
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary key_group_name=${shortened_uuid}
- ${data}= Fill JSON Template File ${ASDC_KEY_GROUP_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_KEY_GROUP_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC License Group
- [Documentation] gets an asdc license group by its id
- [Arguments] ${license_model_id} ${group_id} ${version_id}
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_KEY_GROUP_PATH}/${group_id}
- [Return] ${resp.json()}
-Add ASDC Feature Group
- [Documentation] Creates an asdc Feature Group and returns its id
- [Arguments] ${license_model_id} ${key_group_id} ${entitlement_pool_id} ${version_id}=0.1
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary feature_group_name=${shortened_uuid} key_group_id=${key_group_id} entitlement_pool_id=${entitlement_pool_id} manufacturer_reference_number=mrn${shortened_uuid}
- ${data}= Fill JSON Template File ${ASDC_FEATURE_GROUP_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_FEATURE_GROUP_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC Feature Group
- [Documentation] gets an asdc Feature Group by its id
- [Arguments] ${license_model_id} ${group_id}
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_FEATURE_GROUP_PATH}/${group_id}
- [Return] ${resp.json()}
-Add ASDC License Agreement
- [Documentation] Creates an asdc License Agreement and returns its id
- [Arguments] ${license_model_id} ${feature_group_id} ${version_id}=0.1
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary license_agreement_name=${shortened_uuid} feature_group_id=${feature_group_id}
- ${data}= Fill JSON Template File ${ASDC_LICENSE_AGREEMENT_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_LICENSE_AGREEMENT_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['value']}
-Get ASDC License Agreement
- [Documentation] gets an asdc License Agreement by its id
- [Arguments] ${license_model_id} ${agreement_id}
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_LICENSE_AGREEMENT_PATH}/${agreement_id}
- [Return] ${resp.json()}
-Add ASDC Software Product
- [Documentation] Creates an asdc Software Product and returns its id
- [Arguments] ${license_agreement_id} ${feature_group_id} ${license_model_name} ${license_model_id}
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${map}= Create Dictionary software_product_name=${shortened_uuid} feature_group_id=${feature_group_id} license_agreement_id=${license_agreement_id} vendor_name=${license_model_name} vendor_id=${license_model_id}
- ${data}= Fill JSON Template File ${ASDC_SOFTWARE_PRODUCT_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH} ${data}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['vspId']}
-Get ASDC Software Product
- [Documentation] gets an asdc Software Product by its id
- [Arguments] ${software_product_id} ${version_id}=0.1
- ${resp}= Run ASDC Get Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}/versions/${version_id}
- [Return] ${resp.json()}
-Add ASDC Catalog Resource
- [Documentation] Creates an asdc Catalog Resource and returns its id
- [Arguments] ${license_agreement_id} ${software_product_name} ${license_model_name} ${software_product_id}
- ${map}= Create Dictionary software_product_id=${software_product_id} software_product_name=${software_product_name} license_agreement_id=${license_agreement_id} vendor_name=${license_model_name}
- ${data}= Fill JSON Template File ${ASDC_CATALOG_RESOURCE_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 201
- [Return] ${resp.json()['uniqueId']}
-Mark ASDC Catalog Resource Inactive
- [Documentation] deletes an asdc Catalog Resource
- [Arguments] ${catalog_resource_id}
- ${resp}= Run ASDC Delete Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 204
- [Return] ${resp}
-Delete Inactive ASDC Catalog Resources
- [Documentation] delete all asdc Catalog Resources that are inactive
- ${resp}= Run ASDC Delete Request ${ASDC_CATALOG_INACTIVE_RESOURCES_PATH} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Get ASDC Catalog Resource
- [Documentation] gets an asdc Catalog Resource by its id
- [Arguments] ${catalog_resource_id}
- ${resp}= Run ASDC Get Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id} ${ASDC_DESIGNER_USER_ID}
- [Return] ${resp.json()}
-Checkin ASDC Catalog Resource
- [Documentation] checksin an asdc Catalog Resource by its id
- [Arguments] ${catalog_resource_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/checkin ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Request Certify ASDC Catalog Resource
- [Documentation] requests certify on an asdc Catalog Resource by its id
- [Arguments] ${catalog_resource_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certificationRequest ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Start Certify ASDC Catalog Resource
- [Documentation] start certify an asdc Catalog Resource by its id
- [Arguments] ${catalog_resource_id}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/startCertification ${None} ${ASDC_TESTER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Certify ASDC Catalog Resource
- [Documentation] start certify an asdc Catalog Resource by its id and returns the new id
- [Arguments] ${catalog_resource_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certify ${data} ${ASDC_TESTER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['uniqueId']}
-
-Upload ASDC Heat Package
- [Documentation] Creates an asdc Software Product and returns its id
- [Arguments] ${software_product_id} ${file_path} ${version_id}=0.1
- ${files}= Create Dictionary
- Create Multi Part ${files} upload ${file_path} contentType=application/zip
- ${resp}= Run ASDC Post Files Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}/versions/${version_id}${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH} ${files} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
-
-Add ASDC Catalog Service
- [Documentation] Creates an asdc Catalog Service and returns its id
- [Arguments] ${catalog_service_name}
- ${uuid}= Generate UUID
- ${shortened_uuid}= Evaluate str("${uuid}")[:23]
- ${catalog_service_name}= Set Variable If '${catalog_service_name}' =='' ${shortened_uuid} ${catalog_service_name}
- ${map}= Create Dictionary service_name=${catalog_service_name}
- ${data}= Fill JSON Template File ${ASDC_CATALOG_SERVICE_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 201
- [Return] ${resp.json()['uniqueId']}
-Mark ASDC Catalog Service Inactive
- [Documentation] Deletes an asdc Catalog Service
- [Arguments] ${catalog_service_id}
- ${resp}= Run ASDC Delete Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 204
- [Return] ${resp}
-Delete Inactive ASDC Catalog Services
- [Documentation] delete all asdc Catalog Serivces that are inactive
- ${resp}= Run ASDC Delete Request ${ASDC_CATALOG_INACTIVE_SERVICES_PATH} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Get ASDC Catalog Service
- [Documentation] gets an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${resp}= Run ASDC Get Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id} ${ASDC_DESIGNER_USER_ID}
- [Return] ${resp.json()}
-Checkin ASDC Catalog Service
- [Documentation] checksin an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/checkin ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Request Certify ASDC Catalog Service
- [Documentation] requests certify on an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certificationRequest ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Start Certify ASDC Catalog Service
- [Documentation] start certify an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/startCertification ${None} ${ASDC_TESTER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Certify ASDC Catalog Service
- [Documentation] start certify an asdc Catalog Service by its id and returns the new id
- [Arguments] ${catalog_service_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certify ${data} ${ASDC_TESTER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()['uniqueId']}
-Approve ASDC Catalog Service
- [Documentation] approve an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_SERVICE_DISTRIBUTION_STATE_PATH}${ASDC_DISTRIBUTION_STATE_APPROVE_PATH} ${data} ${ASDC_GOVERNOR_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Distribute ASDC Catalog Service
- [Documentation] distribute an asdc Catalog Service by its id
- [Arguments] ${catalog_service_id}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_SERVICE_DISTRIBUTION_ACTIVATE_PATH} ${None} ${ASDC_OPS_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Add ASDC Resource Instance
- [Documentation] Creates an asdc Resource Instance and returns its id
- [Arguments] ${catalog_service_id} ${catalog_resource_id} ${catalog_resource_name}
- ${milli_timestamp}= Generate MilliTimestamp UUID
- ${map}= Create Dictionary catalog_resource_id=${catalog_resource_id} catalog_resource_name=${catalog_resource_name} milli_timestamp=${milli_timestamp}
- ${data}= Fill JSON Template File ${ASDC_RESOURCE_INSTANCE_TEMPLATE} ${map}
- ${resp}= Run ASDC Post Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_SERVICE_RESOURCE_INSTANCE_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 201
- [Return] ${resp.json()['uniqueId']}
-Get Catalog Service Distribution
- [Documentation] gets an asdc catalog Service distrbution
- [Arguments] ${catalog_service_uuid}
- ${resp}= Run ASDC Get Request ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_uuid}${ASDC_CATALOG_SERVICE_DISTRIBUTION_PATH} ${ASDC_OPS_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Check Catalog Service Distributed
- [Documentation] gets an asdc catalog Service distrbution
- [Arguments] ${catalog_service_uuid}
- ${dist_resp}= Get Catalog Service Distribution ${catalog_service_uuid}
- Should Be Equal As Strings ${dist_resp['distributionStatusOfServiceList'][0]['deployementStatus']} Distributed
- Sleep 3 minutes
- ${det_resp}= Get Catalog Service Distribution Details ${dist_resp['distributionStatusOfServiceList'][0]['distributionID']}
- @{ITEMS}= Copy List ${det_resp['distributionStatusList']}
- :FOR ${ELEMENT} IN @{ITEMS}
- \ Log ${ELEMENT['status']}
- \ Should Match Regexp ${ELEMENT['status']} ^(DEPLOY_OK|NOTIFIED|DOWNLOAD_OK|NOT_NOTIFIED)$
-Get Catalog Service Distribution Details
- [Documentation] gets an asdc catalog Service distrbution details
- [Arguments] ${catalog_service_distribution_id}
- ${resp}= Run ASDC Get Request ${ASDC_CATALOG_SERVICES_PATH}${ASDC_CATALOG_SERVICE_DISTRIBUTION_PATH}/${catalog_service_distribution_id} ${ASDC_OPS_USER_ID}
- Should Be Equal As Strings ${resp.status_code} 200
- [Return] ${resp.json()}
-Run ASDC Health Check
- [Documentation] Runs a ASDC health check
- ${session}= Create Session asdc ${ASDC_FE_ENDPOINT}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Get Request asdc ${ASDC_HEALTH_CHECK_PATH} headers=${headers}
- Should Be Equal As Strings ${resp.status_code} 200
- @{ITEMS}= Copy List ${resp.json()['componentsInfo']}
- :FOR ${ELEMENT} IN @{ITEMS}
- \ Log ${ELEMENT['healthCheckStatus']}
- \ Should Be Equal As Strings ${ELEMENT['healthCheckStatus']} UP
-Run ASDC Get Request
- [Documentation] Runs an ASDC get request
- [Arguments] ${data_path} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Get Request asdc ${data_path} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-Run ASDC Put Request
- [Documentation] Runs an ASDC put request
- [Arguments] ${data_path} ${data} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Put Request asdc ${data_path} data=${data} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-
-Run ASDC Post Files Request
- [Documentation] Runs an ASDC post request
- [Arguments] ${data_path} ${files} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=multipart/form-data USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Post Request asdc ${data_path} files=${files} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-
-Run ASDC Post Request
- [Documentation] Runs an ASDC post request
- [Arguments] ${data_path} ${data} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Post Request asdc ${data_path} data=${data} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-Run ASDC Delete Request
- [Documentation] Runs an ASDC delete request
- [Arguments] ${data_path} ${user}=${ASDC_DESIGNER_USER_ID}
- ${auth}= Create List ${GLOBAL_ASDC_BE_USERNAME} ${GLOBAL_ASDC_BE_PASSWORD}
- Log Creating session ${ASDC_BE_ENDPOINT}
- ${session}= Create Session asdc ${ASDC_BE_ENDPOINT} auth=${auth}
- ${uuid}= Generate UUID
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
- ${resp}= Delete Request asdc ${data_path} headers=${headers}
- Log Received response from asdc ${resp.text}
- [Return] ${resp}
-Open ASDC GUI
- [Documentation] Logs in to ASDC GUI
- [Arguments] ${PATH}
- ## Setup Browever now being managed by the test case
- ##Setup Browser
- Go To ${ASDC_FE_ENDPOINT}${PATH}
- Maximize Browser Window
-
- Set Browser Implicit Wait ${GLOBAL_SELENIUM_BROWSER_IMPLICIT_WAIT}
- Log Logging in to ${ASDC_FE_ENDPOINT}${PATH}
- Title Should Be ASDC
- Wait Until Page Contains Element xpath=//div/a[text()='SDC'] ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT}
- Log Logged in to ${ASDC_FE_ENDPOINT}${PATH}
-
-
-Create Multi Part
- [Arguments] ${addTo} ${partName} ${filePath} ${contentType}=${None}
- ${fileData}= Get Binary File ${filePath}
- ${fileDir} ${fileName}= Split Path ${filePath}
- ${partData}= Create List ${fileName} ${fileData} ${contentType}
- Set To Dictionary ${addTo} ${partName}=${partData}
diff --git a/kubernetes/robot/resources/config/robot/resources/oof_interface.robot b/kubernetes/robot/resources/config/robot/resources/oof_interface.robot
new file mode 100644
index 0000000000..1c3137e431
--- /dev/null
+++ b/kubernetes/robot/resources/config/robot/resources/oof_interface.robot
@@ -0,0 +1,41 @@
+*** Settings ***
+Documentation The main interface for interacting with OOF: SNIRO and Homing Service
+Library RequestsLibrary
+
+Resource global_properties.robot
+
+*** Variables ***
+${OOF_HOMING_HEALTH_CHECK_PATH} /v1/plans/healthcheck
+${OOF_SNIRO_HEALTH_CHECK_PATH} /api/oof/v1/healthcheck
+
+${OOF_HOMING_ENDPOINT} ${GLOBAL_OOF_SERVER_PROTOCOL}://${GLOBAL_INJECTED_OOF_HOMING_IP_ADDR}:${GLOBAL_OOF_HOMING_SERVER_PORT}
+${OOF_SNIRO_ENDPOINT} ${GLOBAL_OOF_SERVER_PROTOCOL}://${GLOBAL_INJECTED_OOF_SNIRO_IP_ADDR}:${GLOBAL_OOF_SNIRO_SERVER_PORT}
+
+*** Keywords ***
+Run OOF-Homing Health Check
+ [Documentation] Runs OOF-Homing Health check
+ ${resp}= Run OOF-Homing Get Request ${OOF_HOMING_HEALTH_CHECK_PATH}
+ Should Be Equal As Integers ${resp.status_code} 200
+
+Run OOF-Homing Get Request
+ [Documentation] Runs OOF-Homing Get request
+ [Arguments] ${data_path}
+ ${session}= Create Session session ${OOF_HOMING_ENDPOINT}
+ ${resp}= Get Request session ${data_path}
+ Should Be Equal As Integers ${resp.status_code} 200
+ Log Received response from OOF-Homing ${resp.text}
+ [Return] ${resp}
+
+Run OOF-SNIRO Health Check
+ [Documentation] Runs OOF-SNIRO Health check
+ ${resp}= Run OOF-SNIRO Get Request ${OOF_SNIRO_HEALTH_CHECK_PATH}
+ Should Be Equal As Integers ${resp.status_code} 200
+
+Run OOF-SNIRO Get Request
+ [Documentation] Runs OOF-SNIRO Get request
+ [Arguments] ${data_path}
+ ${session}= Create Session session ${OOF_SNIRO_ENDPOINT}
+ ${resp}= Get Request session ${data_path}
+ Should Be Equal As Integers ${resp.status_code} 200
+ Log Received response from OOF-SNIRO ${resp.text}
+ [Return] ${resp}
diff --git a/kubernetes/robot/resources/config/robot/resources/policy_interface.robot b/kubernetes/robot/resources/config/robot/resources/policy_interface.robot
index 9193fe438a..9656b7bc90 100644
--- a/kubernetes/robot/resources/config/robot/resources/policy_interface.robot
+++ b/kubernetes/robot/resources/config/robot/resources/policy_interface.robot
@@ -28,6 +28,7 @@ Run Policy Health Check
:FOR ${ELEMENT} IN @{ITEMS}
\ Should Be Equal As Strings ${ELEMENT['code']} 200
\ Should Be True ${ELEMENT['healthy']}
+
Run Policy Put Request
[Documentation] Runs Policy Put request
[Arguments] ${data_path} ${data}
@@ -37,6 +38,7 @@ Run Policy Put Request
${resp}= Put Request policy ${data_path} data=${data} headers=${headers}
Log Received response from policy ${resp.text}
[Return] ${resp}
+
Run Policy Delete Request
[Documentation] Runs Policy Delete request
[Arguments] ${data_path} ${data}
@@ -46,12 +48,13 @@ Run Policy Delete Request
${resp}= Delete Request policy ${data_path} data=${data} headers=${headers}
Log Received response from policy ${resp.text}
[Return] ${resp}
+
Run Policy Get Configs Request
[Documentation] Runs Policy Get Configs request
[Arguments] ${data_path} ${data}
Log Creating session ${POLICY_ENDPOINT}
${session}= Create Session policy ${POLICY_ENDPOINT}
- ${headers}= Create Dictionary Accept=application/json Content-Type=application/json Authorization=Basic ${GLOBAL_POLICY_AUTH} ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json Authorization=Basic ${GLOBAL_POLICY_AUTH} ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}
${resp}= Post Request policy ${data_path} data=${data} headers=${headers}
Log Received response from policy ${resp.text}
- [Return] ${resp}
+ [Return] ${resp} \ No newline at end of file
diff --git a/kubernetes/robot/resources/config/robot/resources/sdngc_interface.robot b/kubernetes/robot/resources/config/robot/resources/sdngc_interface.robot
index 5b79f9a305..57198dbe99 100644
--- a/kubernetes/robot/resources/config/robot/resources/sdngc_interface.robot
+++ b/kubernetes/robot/resources/config/robot/resources/sdngc_interface.robot
@@ -1,7 +1,7 @@
*** Settings ***
Documentation The main interface for interacting with SDN-GC. It handles low level stuff like managing the http request library and SDN-GC required fields
Library RequestsLibrary
-Library UUID
+Library UUID
Library OperatingSystem
Library ExtendedSelenium2Library
Library Collections
@@ -30,7 +30,7 @@ Run SDNGC Health Check
[Documentation] Runs an SDNGC healthcheck
${resp}= Run SDNGC Post Request ${SDNGC_INDEX PATH}${SDNCGC_HEALTHCHECK_OPERATION_PATH} ${None}
Should Be Equal As Strings ${resp.status_code} 200
- Should Be Equal As Strings ${resp.json()['output']['response-code']} 200
+ Should Be Equal As Strings ${resp.json()['output']['response-code']} 200
Run SDNGC Get Request
[Documentation] Runs an SDNGC get request
@@ -43,7 +43,7 @@ Run SDNGC Get Request
${resp}= Get Request sdngc ${data_path} headers=${headers}
Log Received response from sdngc ${resp.text}
[Return] ${resp}
-
+
Run SDNGC Put Request
[Documentation] Runs an SDNGC put request
[Arguments] ${data_path} ${data}
@@ -66,8 +66,8 @@ Run SDNGC Post Request
${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
${resp}= Post Request sdngc ${data_path} data=${data} headers=${headers}
Log Received response from sdngc ${resp.text}
- [Return] ${resp}
-
+ [Return] ${resp}
+
Run SDNGC Delete Request
[Documentation] Runs an SDNGC delete request
[Arguments] ${data_path}
@@ -83,7 +83,7 @@ Run SDNGC Delete Request
Preload Vnf
[Arguments] ${service_type_uuid} ${generic_vnf_name} ${generic_vnf_type} ${vf_module_name} ${vf_modules} ${service} ${uuid}
- ${base_vf_module_type}= Catenate ''
+ ${base_vf_module_type}= Catenate
${closedloop_vf_module}= Create Dictionary
${templates}= Get From Dictionary ${GLOBAL_SERVICE_TEMPLATE_MAPPING} ${service}
:for ${vf_module} in @{vf_modules}
@@ -92,36 +92,36 @@ Preload Vnf
\ ${filename}= Get From Dictionary ${dict} template
\ ${base_vf_module_type}= Set Variable If '${dict['isBase']}' == 'true' ${vf_module_type} ${base_vf_module_type}
\ ${closedloop_vf_module}= Set Variable If '${dict['isBase']}' == 'false' ${vf_module} ${closedloop_vf_module}
- \ ${vf_name}= Update Module Name ${dict} ${vf_module_name}
- \ Preload Vnf Profile ${vf_module_type}
+ \ ${vf_name}= Update Module Name ${dict} ${vf_module_name}
+ \ Preload Vnf Profile ${vf_module_type}
\ Preload One Vnf Topology ${service_type_uuid} ${generic_vnf_name} ${generic_vnf_type} ${vf_name} ${vf_module_type} ${service} ${filename} ${uuid}
- [Return] ${base_vf_module_type} ${closedloop_vf_module}
+ [Return] ${base_vf_module_type} ${closedloop_vf_module}
Update Module Name
[Arguments] ${dict} ${vf_module_name}
Return From Keyword If 'prefix' not in ${dict} ${vf_module_name}
Return From Keyword If '${dict['prefix']}' == '' ${vf_module_name}
- ${name}= Replace String ${vf_module_name} Vfmodule_ ${dict['prefix']}
- [Return] ${name}
+ ${name}= Replace String ${vf_module_name} Vfmodule_ ${dict['prefix']}
+ [Return] ${name}
Get From Mapping
- [Documentation] Retrieve the appropriate prelad template entry for the passed vf_module
+ [Documentation] Retrieve the appropriate prelad template entry for the passed vf_module
[Arguments] ${templates} ${vf_module}
${vf_module_name}= Get From DIctionary ${vf_module} name
- :for ${template} in @{templates}
- \ Return From Keyword If '${template['name_pattern']}' in '${vf_module_name}' ${template}
- [Return] None
-
+ :for ${template} in @{templates}
+ \ Return From Keyword If '${template['name_pattern']}' in '${vf_module_name}' ${template}
+ [Return] None
+
Preload One Vnf Topology
[Arguments] ${service_type_uuid} ${generic_vnf_name} ${generic_vnf_type} ${vf_module_name} ${vf_module_type} ${service} ${filename} ${uuid}
Return From Keyword If '${filename}' == ''
${data_template}= OperatingSystem.Get File ${PRELOAD_VNF_TOPOLOGY_OPERATION_BODY}/preload.template
${parameters}= Get Template Parameters ${filename} ${uuid}
- Set To Dictionary ${parameters} generic_vnf_name=${generic_vnf_name} generic_vnf_type=${generic_vnf_type} service_type=${service_type_uuid} vf_module_name=${vf_module_name} vf_module_type=${vf_module_type} uuid=${uuid}
- ${data}= Fill JSON Template ${data_template} ${parameters}
+ Set To Dictionary ${parameters} generic_vnf_name=${generic_vnf_name} generic_vnf_type=${generic_vnf_type} service_type=${service_type_uuid} vf_module_name=${vf_module_name} vf_module_type=${vf_module_type}
+ ${data}= Fill JSON Template ${data_template} ${parameters}
${put_resp}= Run SDNGC Post Request ${SDNGC_INDEX_PATH}${PRELOAD_VNF_TOPOLOGY_OPERATION_PATH} ${data}
- Should Be Equal As Strings ${put_resp.json()['output']['response-code']} 200
+ Should Be Equal As Strings ${put_resp.json()['output']['response-code']} 200
${get_resp}= Run SDNGC Get Request ${SDNGC_INDEX_PATH}${PRELOAD_VNF_CONFIG_PATH}/${vf_module_name}/${vf_module_type}
Should Be Equal As Strings ${get_resp.status_code} 200
@@ -130,29 +130,47 @@ Get Template Parameters
${rest} ${suite}= Split String From Right ${SUITE NAME} . 1
${uuid}= Catenate ${uuid}
${hostid}= Get Substring ${uuid} -4
- ${ecompnet}= Evaluate ${GLOBAL_BUILD_NUMBER}%255
+ ${ecompnet}= Evaluate (${GLOBAL_BUILD_NUMBER}%128)+128
+
+
# Initialize the value map with the properties generated from the Robot VM /opt/config folder
- ${valuemap}= Create Dictionary
+ ${valuemap}= Copy Dictionary ${GLOBAL_INJECTED_PROPERTIES}
+
+ # These should be deprecated by the above....
Set To Dictionary ${valuemap} artifacts_version=${GLOBAL_INJECTED_ARTIFACTS_VERSION}
- Set To Dictionary ${valuemap} network=${GLOBAL_INJECTED_NETWORK}
+ Set To Dictionary ${valuemap} network=${GLOBAL_INJECTED_NETWORK}
Set To Dictionary ${valuemap} public_net_id=${GLOBAL_INJECTED_PUBLIC_NET_ID}
Set To Dictionary ${valuemap} cloud_env=${GLOBAL_INJECTED_CLOUD_ENV}
Set To Dictionary ${valuemap} install_script_version=${GLOBAL_INJECTED_SCRIPT_VERSION}
Set To Dictionary ${valuemap} vm_image_name=${GLOBAL_INJECTED_VM_IMAGE_NAME}
Set To Dictionary ${valuemap} vm_flavor_name=${GLOBAL_INJECTED_VM_FLAVOR}
+
+
# update the value map with unique values.
Set To Dictionary ${valuemap} uuid=${uuid} hostid=${hostid} ecompnet=${ecompnet}
- ${parameters}= Create Dictionary
- ${defaults}= Get From Dictionary ${GLOBAL_PRELOAD_PARAMETERS} defaults
- Resolve Values Into Dictionary ${valuemap} ${defaults} ${parameters}
+
+ #
+ # Mash together the defaults dict with the test case dict to create the set of
+ # preload parameters
+ #
${suite_templates}= Get From Dictionary ${GLOBAL_PRELOAD_PARAMETERS} ${suite}
${template}= Get From Dictionary ${suite_templates} ${template}
- ${vnf_parameters}= Resolve VNF Parameters Into Array ${valuemap} ${template} ${parameters}
+ ${defaults}= Get From Dictionary ${GLOBAL_PRELOAD_PARAMETERS} defaults
+ # add all of the defaults to template...
+ @{keys}= Get Dictionary Keys ${defaults}
+ :for ${key} in @{keys}
+ \ ${value}= Get From Dictionary ${defaults} ${key}
+ \ Set To Dictionary ${template} ${key} ${value}
+
+ #
+ # Get the vnf_parameters to preload
+ #
+ ${vnf_parameters}= Resolve VNF Parameters Into Array ${valuemap} ${template}
${vnf_parameters_json}= Evaluate json.dumps(${vnf_parameters}) json
- Set To Dictionary ${parameters} vnf_parameters=${vnf_parameters_json}
+ ${parameters}= Create Dictionary vnf_parameters=${vnf_parameters_json}
[Return] ${parameters}
-
-Resolve Values Into Dictionary
+
+Resolve Values Into Dictionary
[Arguments] ${valuemap} ${from} ${to}
${keys}= Get Dictionary Keys ${from}
:for ${key} in @{keys}
@@ -161,7 +179,7 @@ Resolve Values Into Dictionary
\ Set To Dictionary ${to} ${key} ${value}
Resolve VNF Parameters Into Array
- [Arguments] ${valuemap} ${from} ${to}
+ [Arguments] ${valuemap} ${from}
${vnf_parameters}= Create List
${keys}= Get Dictionary Keys ${from}
:for ${key} in @{keys}
@@ -170,7 +188,7 @@ Resolve VNF Parameters Into Array
\ ${parameter}= Create Dictionary vnf-parameter-name=${key} vnf-parameter-value=${value}
\ Append To List ${vnf_parameters} ${parameter}
[Return] ${vnf_parameters}
-
+
Preload Vnf Profile
[Arguments] ${vnf_name}
Login To SDNGC Admin GUI
@@ -180,25 +198,25 @@ Preload Vnf Profile
Input Text xpath=//input[@id='nf_availability_zone_count'] 999
Input Text xpath=//input[@id='nf_equipment_role'] robot-ete-test
Click Button xpath=//button[contains(.,'Submit')]
- Page Should Contain VNF Profile
+ Page Should Contain VNF Profile
Input Text xpath=//div[@id='vnf_profile_filter']//input ${vnf_name}
- Page Should Contain ${vnf_name}
+ Page Should Contain ${vnf_name}
Delete Vnf Profile
[Arguments] ${vnf_name}
Login To SDNGC Admin GUI
Go To ${SDNGC_ADMIN_VNF_PROFILE_URL}
- Page Should Contain VNF Profile
+ Page Should Contain VNF Profile
Input Text xpath=//div[@id='vnf_profile_filter']//input ${vnf_name}
Page Should Contain ${vnf_name}
- Click Button xpath=//button[contains(@onclick, '${vnf_name}')]
+ Click Button xpath=//button[contains(@onclick, '${vnf_name}')]
Page Should Contain Are you sure you want to delete VNF_PROFILE
Click Button xpath=//button[contains(text(), 'Yes')]
Page Should Not Contain ${vnf_name}
-
+
Login To SDNGC Admin GUI
[Documentation] Login To SDNGC Admin GUI
- ## Setup Browser is now being managed by the test case
+ ## Setup Browser is now being managed by the test case
## Setup Browser
Go To ${SDNGC_ADMIN_SIGNUP_URL}
##Maximize Browser Window
@@ -207,7 +225,7 @@ Login To SDNGC Admin GUI
Log Logging in to ${SDNGC_ADMIN_LOGIN_URL}
Handle Proxy Warning
Title Should Be AdminPortal
- ${uuid}= Generate UUID
+ ${uuid}= Generate UUID
${shortened_uuid}= Evaluate str("${uuid}")[:12]
${email}= Catenate ${shortened_uuid}@robotete.com
Input Text xpath=//input[@id='nf_email'] ${email}
@@ -219,4 +237,4 @@ Login To SDNGC Admin GUI
Input Password xpath=//input[@id='password'] ${shortened_uuid}
Click Button xpath=//button[@type='submit']
Title Should Be SDN-C AdminPortal
- Log Logged in to ${SDNGC_ADMIN_LOGIN_URL}
+ Log Logged in to ${SDNGC_ADMIN_LOGIN_URL} \ No newline at end of file
diff --git a/kubernetes/robot/templates/deployment.yaml b/kubernetes/robot/templates/deployment.yaml
index 3403810d20..0b658093bf 100644
--- a/kubernetes/robot/templates/deployment.yaml
+++ b/kubernetes/robot/templates/deployment.yaml
@@ -23,52 +23,67 @@ metadata:
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
- replicas: {{ .Values.robotReplicas }}
+ replicas: {{ .Values.replicaCount }}
template:
metadata:
- labels:
+ labels:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-inject-demo-project
+ command:
+ - /bin/bash
+ - -c
+ - >
+ git clone -b {{ .Values.config.gerritBranch }} --single-branch {{ .Values.config.gerritProject }} /tmp/gerrit;
+ echo "Clone complete. Copying from /tmp/gerrit/heat to /share";
+ cp -rf /tmp/gerrit/heat /share;
+ echo "Done.";
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: demodir
+ mountPath: "/share"
containers:
- - name: {{ .Chart.Name }}
- image: "{{ .Values.global.repository | default .Values.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 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: localtime
- mountPath: /etc/localtime
- readOnly: true
- - name: robot-eteshare
- mountPath: /share/config
- - name: robot-resources
- mountPath: /var/opt/OpenECOMP_ETE/robot/resources/asdc_interface.robot
- subPath: asdc_interface.robot
- - name: robot-resources
- mountPath: /var/opt/OpenECOMP_ETE/robot/resources/policy_interface.robot
- subPath: policy_interface.robot
- - name: robot-resources
- mountPath: /var/opt/OpenECOMP_ETE/robot/resources/sdngc_interface.robot
- subPath: sdngc_interface.robot
- - name: robot-lighttpd-authorization
- mountPath: /etc/lighttpd/authorization
- subPath: authorization
- resources:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - name: localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: robot-eteshare
+ mountPath: /share/config
+ - name: robot-resources
+ mountPath: /var/opt/OpenECOMP_ETE/robot/resources/policy_interface.robot
+ subPath: policy_interface.robot
+ - name: robot-resources
+ mountPath: /var/opt/OpenECOMP_ETE/robot/resources/sdngc_interface.robot
+ subPath: sdngc_interface.robot
+ - name: robot-resources
+ mountPath: /var/opt/OpenECOMP_ETE/robot/resources/oof_interface.robot
+ subPath: oof_interface.robot
+ - name: robot-lighttpd-authorization
+ mountPath: /etc/lighttpd/authorization
+ subPath: authorization
+ - name: demodir
+ mountPath: /share
+ resources:
{{ toYaml .Values.resources | indent 12 }}
{{- if .Values.nodeSelector }}
nodeSelector:
@@ -79,18 +94,20 @@ spec:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: robot-eteshare
- configMap:
- name: {{ include "common.fullname" . }}-eteshare-configmap
- defaultMode: 0755
- - name: robot-resources
- configMap:
- name: {{ include "common.fullname" . }}-resources-configmap
- - name: robot-lighttpd-authorization
- configMap:
- name: {{ include "common.fullname" . }}-lighttpd-authorization-configmap
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: robot-eteshare
+ configMap:
+ name: {{ include "common.fullname" . }}-eteshare-configmap
+ defaultMode: 0755
+ - name: robot-resources
+ configMap:
+ name: {{ include "common.fullname" . }}-resources-configmap
+ - name: robot-lighttpd-authorization
+ configMap:
+ name: {{ include "common.fullname" . }}-lighttpd-authorization-configmap
+ - name: demodir
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/robot/templates/service.yaml b/kubernetes/robot/templates/service.yaml
index f9f2805f00..3fc21b4550 100644
--- a/kubernetes/robot/templates/service.yaml
+++ b/kubernetes/robot/templates/service.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -26,14 +26,14 @@ 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.externalPort }}
- name: {{ .Values.service.name }}
+ - port: {{ .Values.service.externalPort }}
+ 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.name }}
+ name: {{ .Values.service.portName | default "http" }}
{{- end}}
selector:
app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
+ release: {{ .Release.Name }} \ No newline at end of file
diff --git a/kubernetes/robot/values.yaml b/kubernetes/robot/values.yaml
index 6ef3a21d89..e3a2e13027 100644
--- a/kubernetes/robot/values.yaml
+++ b/kubernetes/robot/values.yaml
@@ -17,39 +17,73 @@
#################################################################
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ ubuntuInitRepository: registry.hub.docker.com
# application image
repository: nexus3.onap.org:10001
-image: openecomp/testsuite:1.2-STAGING-latest
+image: onap/testsuite:1.2-STAGING-latest
pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
# flag to enable debugging - application support required
debugEnabled: false
#################################################################
# Application configuration defaults.
#################################################################
-
-# openstack configuration
-
+config:
+ # Username of the lighthttpd server. Used for HTML auth for webpage access
+ lightHttpdUsername: robot
+ # Password of the lighthttpd server. Used for HTML auth for webpage access
+ lightHttpdPassword: robot
+ # 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/demo.git
+
+
+# Demo configuration
+# Nexus demo artifact version. Maps to GLOBAL_INJECTED_ARTIFACTS_VERSION
demoArtifactsVersion: "1.2.0-SNAPSHOT"
-openStackPrivateNetCidr: "192.168.30.0"
+# Openstack medium sized flavour name. Maps GLOBAL_INJECTED_VM_FLAVOR
openStackFlavourMedium: "m1.medium"
+# Openstack keystone URL. Maps to GLOBAL_INJECTED_KEYSTONE
openStackKeyStoneUrl: "http://1.2.3.4:5000"
+# UUID of the Openstack network that can assign floating ips. Maps to GLOBAL_INJECTED_PUBLIC_NET_ID
openStackPublicNetId: "e8f51958045716781ffc"
-openStackPrivateNetId: "e8f51956-00dd-4425-af36-045716781ffc"
-openStackOamNetworkCidrPrefix: "192.168.120"
-openStackEncryptedPassword: "c124921a3a0efbe579782cde8227681e"
+# password for Openstack tenant where VNFs will be spawned. Maps to GLOBAL_INJECTED_OPENSTACK_PASSWORD
+openStackPassword: "tenantPassword"
+# Openstack region. Maps to GLOBAL_INJECTED_REGION
openStackRegion: "RegionOne"
-openStackPrivateSubnetId: "e8f51956-00dd-4425-af36-045716781ffc"
+# Openstack tenant UUID where VNFs will be spawned. Maps to GLOBAL_INJECTED_OPENSTACK_TENANT_ID
openStackTenantId: "47899782ed714295b1151681fdfd51f5"
-openStackUserName: "vnf_user"
-ubuntuImage: "Ubuntu_14.04.5_LTS"
-scriptVersion: "1.1.1"
+# username for Openstack tenant where VNFs will be spawned. Maps to GLOBAL_INJECTED_OPENSTACK_USERNAME
+openStackUserName: "tenantUsername"
+# Openstack glance image name for Ubuntu 14. Maps to GLOBAL_INJECTED_UBUNTU_1404_IMAGE
+ubuntu14Image: "Ubuntu_14_trusty"
+# Openstack glance image name for Ubuntu 16. Maps to GLOBAL_INJECTED_UBUNTU_1604_IMAGE
+ubuntu16Image: "Ubuntu_16_xenial"
+# GLOBAL_INJECTED_SCRIPT_VERSION. Maps to GLOBAL_INJECTED_SCRIPT_VERSION
+scriptVersion: "1.2.0-SNAPSHOT"
+# Openstack network to which VNFs will bind their primary (first) interface. Maps to GLOBAL_INJECTED_NETWORK
+openStackPrivateNetId: "e8f51956-00dd-4425-af36-045716781ffc"
+
+# SDNC Preload configuration
+# Openstack subnet UUID for the network defined by openStackPrivateNetId. Maps to onap_private_subnet_id
+openStackPrivateSubnetId: "e8f51956-00dd-4425-af36-045716781ffc"
+# CIDR notation for the Openstack private network where VNFs will be spawned. Maps to onap_private_net_cidr
+openStackPrivateNetCidr: "10.0.0.0/8"
+# The first 2 octets of the private Openstack subnet where VNFs will be spawned.
+# Needed because sdnc preload templates hardcodes things like this 10.0.${ecompnet}.X
+openStackOamNetworkCidrPrefix: "10.0"
+# Override with Pub Key for access to VNF
+vnfPubKey: "FILL_IN_WITH_PUB_KEY"
+# Override with DCAE VES Collector external IP
+dcaeCollectorIp: "FILL_IN_WITH_DCAE_VES_COLLECTOR_IP"
# default number of instances
-robotReplicas: 1
+replicaCount: 1
nodeSelector: {}
@@ -69,10 +103,12 @@ readiness:
service:
- type: NodePort
name: robot
- externalPort: "09"
+ type: NodePort
+ portName: httpd
+ externalPort: 88
internalPort: 88
+ nodePort: "09"
ingress:
diff --git a/kubernetes/sdc/.helmignore b/kubernetes/sdc/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdc/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdc/Chart.yaml b/kubernetes/sdc/Chart.yaml
index 0fa6ac5f28..92e836f209 100644
--- a/kubernetes/sdc/Chart.yaml
+++ b/kubernetes/sdc/Chart.yaml
@@ -1,4 +1,4 @@
-# Copyright © 2017 Amdocs, Bell Canada
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: Service Design and Creation Umbrella Helm charts
name: sdc
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/sdc/charts/sdc-be/.helmignore b/kubernetes/sdc/charts/sdc-be/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-be/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdc/charts/sdc-be/Chart.yaml b/kubernetes/sdc/charts/sdc-be/Chart.yaml
new file mode 100644
index 0000000000..9f8bfd5777
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-be/Chart.yaml
@@ -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 Service Design and Creation Backend API
+name: sdc-be
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdc/resources/config/log/be/logback.xml b/kubernetes/sdc/charts/sdc-be/resources/config/logging/logback.xml
index 4d508e3047..4d508e3047 100644
--- a/kubernetes/sdc/resources/config/log/be/logback.xml
+++ b/kubernetes/sdc/charts/sdc-be/resources/config/logging/logback.xml
diff --git a/kubernetes/sdc/charts/sdc-be/templates/NOTES.txt b/kubernetes/sdc/charts/sdc-be/templates/NOTES.txt
new file mode 100644
index 0000000000..0878f5c080
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-be/templates/NOTES.txt
@@ -0,0 +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={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdc/charts/sdc-be/templates/configmap.yaml b/kubernetes/sdc/charts/sdc-be/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-be/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-be/templates/deployment.yaml b/kubernetes/sdc/charts/sdc-be/templates/deployment.yaml
new file mode 100644
index 0000000000..b08c74edad
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-be/templates/deployment.yaml
@@ -0,0 +1,150 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+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:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-onboarding-be"
+ 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" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-es-config-elasticsearch
+ 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.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - "/var/lib/ready-probe.sh"
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: JAVA_OPTIONS
+ value: {{ .Values.config.javaOptions }}
+ - name: cassandra_ssl_enabled
+ value: {{ .Values.config.cassandraSslEnabled | quote }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-sdc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-be/templates/job.yaml b/kubernetes/sdc/charts/sdc-be/templates/job.yaml
new file mode 100644
index 0000000000..c2203d5c20
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-be/templates/job.yaml
@@ -0,0 +1,70 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-config-backend
+ 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:
+ - name: {{ include "common.name" . }}-init-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - sdc-be
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.backendInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumes:
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
diff --git a/kubernetes/sdc/charts/sdc-be/templates/service.yaml b/kubernetes/sdc/charts/sdc-be/templates/service.yaml
new file mode 100644
index 0000000000..d59f341b2a
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-be/templates/service.yaml
@@ -0,0 +1,65 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdc",
+ "version": "v1",
+ "url": "/sdc/v1",
+ "protocol": "REST",
+ "port": "{{ .Values.service.internalPort2 }}",
+ "visualRange":"1"
+ },
+ {
+ "serviceName": "sdc-deprecated",
+ "version": "v1",
+ "url": "/sdc/v1",
+ "protocol": "REST",
+ "port": "{{ .Values.service.internalPort2 }}",
+ "visualRange":"1",
+ "path":"/sdc/v1"
+ }
+ ]'
+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.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" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/sdc/charts/sdc-be/values.yaml b/kubernetes/sdc/charts/sdc-be/values.yaml
new file mode 100644
index 0000000000..75e096121f
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-be/values.yaml
@@ -0,0 +1,89 @@
+# 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/sdc-backend:1.2-STAGING-latest
+backendInitImage: onap/sdc-backend-init:1.2-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+config:
+ javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=4000,server=y,suspend=n -Xmx1536m -Xms1536m"
+ cassandraSslEnabled: "false"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: sdc-be
+ portName: sdc-be
+ nodePort: "04"
+ internalPort: 8443
+ nodePort2: "05"
+ internalPort2: 8080
+
+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/sdc/charts/sdc-cs/.helmignore b/kubernetes/sdc/charts/sdc-cs/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdc/charts/sdc-cs/Chart.yaml b/kubernetes/sdc/charts/sdc-cs/Chart.yaml
new file mode 100644
index 0000000000..81d4f2c952
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/Chart.yaml
@@ -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 Service Design and Creation Cassandra
+name: sdc-cs
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-cs/templates/NOTES.txt b/kubernetes/sdc/charts/sdc-cs/templates/NOTES.txt
new file mode 100644
index 0000000000..0878f5c080
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/templates/NOTES.txt
@@ -0,0 +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={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdc/charts/sdc-cs/templates/deployment.yaml b/kubernetes/sdc/charts/sdc-cs/templates/deployment.yaml
new file mode 100644
index 0000000000..0ea03f8edc
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/templates/deployment.yaml
@@ -0,0 +1,103 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+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 }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - "/var/lib/ready-probe.sh"
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: RELEASE
+ value: {{ .Values.config.release }}
+ - name: MAX_HEAP_SIZE
+ value: {{ .Values.config.maxHeapSize }}
+ - name: HEAP_NEWSIZE
+ value: {{ .Values.config.heapNewSize }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: CS_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: cs_password}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ 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 }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/sdc/charts/sdc-cs/templates/job.yaml b/kubernetes/sdc/charts/sdc-cs/templates/job.yaml
new file mode 100644
index 0000000000..cdccbf40a5
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/templates/job.yaml
@@ -0,0 +1,94 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-config-cassandra
+ 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:
+ - name: {{ include "common.name" . }}-init-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - sdc-cs
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.cassandraInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/
+ - name: {{ include "common.fullname" . }}-chef-cache
+ mountPath: /root/chef-solo/cache
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: RELEASE
+ value: {{ .Values.config.release }}
+ - name: SDC_USER
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_user}
+ - name: SDC_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_password}
+ - name: CS_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: cs_password}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumes:
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: {{ include "common.fullname" . }}-chef-cache
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
diff --git a/kubernetes/sdc/charts/sdc-cs/templates/pv.yaml b/kubernetes/sdc/charts/sdc-cs/templates/pv.yaml
new file mode 100644
index 0000000000..184728f8ad
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/templates/pv.yaml
@@ -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/sdc/charts/sdc-cs/templates/pvc.yaml b/kubernetes/sdc/charts/sdc-cs/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/templates/pvc.yaml
@@ -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/sdc/charts/sdc-cs/templates/service.yaml b/kubernetes/sdc/charts/sdc-cs/templates/service.yaml
new file mode 100644
index 0000000000..805eaa3936
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/templates/service.yaml
@@ -0,0 +1,45 @@
+# 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.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" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/sdc/charts/sdc-cs/values.yaml b/kubernetes/sdc/charts/sdc-cs/values.yaml
new file mode 100644
index 0000000000..3baf2e0805
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-cs/values.yaml
@@ -0,0 +1,112 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# 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/sdc-cassandra:1.2-STAGING-latest
+cassandraInitImage: onap/sdc-cassandra-init:1.2-STAGING-latest
+
+pullPolicy: Always
+
+config:
+ release: latest
+ maxHeapSize: "1536M"
+ heapNewSize: "512M"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-cs
+ portName: sdc-cs
+ externalPort: 9160
+ internalPort: 9160
+ externalPort2: 9042
+ internalPort2: 9042
+
+
+## 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: /sdc/sdc-cs/CS
+
+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/sdc/charts/sdc-es/.helmignore b/kubernetes/sdc/charts/sdc-es/.helmignore
new file mode 100644
index 0000000000..c13e3c8fbb
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-es/Chart.yaml b/kubernetes/sdc/charts/sdc-es/Chart.yaml
new file mode 100644
index 0000000000..fa4d3417b3
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/Chart.yaml
@@ -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 Service Design and Creation Elasticsearch
+name: sdc-es
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-es/templates/NOTES.txt b/kubernetes/sdc/charts/sdc-es/templates/NOTES.txt
new file mode 100644
index 0000000000..0878f5c080
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/templates/NOTES.txt
@@ -0,0 +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={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdc/charts/sdc-es/templates/deployment.yaml b/kubernetes/sdc/charts/sdc-es/templates/deployment.yaml
new file mode 100644
index 0000000000..fe085969a1
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/templates/deployment.yaml
@@ -0,0 +1,99 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+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 }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ httpGet:
+ path: "_cluster/health?wait_for_status=yellow&timeout=120s"
+ port: {{ .Values.service.internalPort }}
+ scheme: HTTP
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: ES_HEAP_SIZE
+ value: {{ .Values.config.JvmHeapSize }}
+ - name: ES_JAVA_OPTS
+ value: {{ .Values.config.JvmOptions }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /usr/share/elasticsearch/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: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ {{- if .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/sdc/charts/sdc-es/templates/job.yaml b/kubernetes/sdc/charts/sdc-es/templates/job.yaml
new file mode 100644
index 0000000000..6fd3bc7a42
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/templates/job.yaml
@@ -0,0 +1,66 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-config-elasticsearch
+ 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:
+ - name: {{ include "common.name" . }}-init-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - sdc-es
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.elasticInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
diff --git a/kubernetes/sdc/charts/sdc-es/templates/pv.yaml b/kubernetes/sdc/charts/sdc-es/templates/pv.yaml
new file mode 100644
index 0000000000..184728f8ad
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/templates/pv.yaml
@@ -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/sdc/charts/sdc-es/templates/pvc.yaml b/kubernetes/sdc/charts/sdc-es/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/templates/pvc.yaml
@@ -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/sdc/charts/sdc-es/templates/service.yaml b/kubernetes/sdc/charts/sdc-es/templates/service.yaml
new file mode 100644
index 0000000000..805eaa3936
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/templates/service.yaml
@@ -0,0 +1,45 @@
+# 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.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" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/sdc/charts/sdc-es/values.yaml b/kubernetes/sdc/charts/sdc-es/values.yaml
new file mode 100644
index 0000000000..31986a0a96
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-es/values.yaml
@@ -0,0 +1,116 @@
+# 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
+ ubuntuInitRepository: oomk8s
+ ubuntuInitImage: ubuntu-init:1.0.0
+
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc-elasticsearch:1.2-STAGING-latest
+elasticInitImage: onap/sdc-init-elasticsearch:1.2-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ JvmHeapSize: "1024M"
+ JvmOptions: "-Xms512m -Xmx512m"
+
+# 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: 60
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-es
+ portName: sdc-es
+ externalPort: 9200
+ internalPort: 9200
+ externalPort2: 9300
+ internalPort2: 9300
+
+## 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: /sdc/sdc-es/ES
+
+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/sdc/charts/sdc-fe/.helmignore b/kubernetes/sdc/charts/sdc-fe/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-fe/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdc/charts/sdc-fe/Chart.yaml b/kubernetes/sdc/charts/sdc-fe/Chart.yaml
new file mode 100644
index 0000000000..6580e891da
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-fe/Chart.yaml
@@ -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 Service Design and Creation Front End
+name: sdc-fe
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdc/resources/config/log/fe/logback.xml b/kubernetes/sdc/charts/sdc-fe/resources/config/logging/logback.xml
index a8e9ed7264..6e253543e8 100644
--- a/kubernetes/sdc/resources/config/log/fe/logback.xml
+++ b/kubernetes/sdc/charts/sdc-fe/resources/config/logging/logback.xml
@@ -78,9 +78,9 @@
<!-- 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
+ <!-- No need to deny audit messages - they are INFO only, will be denied
anyway -->
- <!-- Transaction messages filter - deny Transaction messages, there are
+ <!-- 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">
diff --git a/kubernetes/sdc/charts/sdc-fe/templates/NOTES.txt b/kubernetes/sdc/charts/sdc-fe/templates/NOTES.txt
new file mode 100644
index 0000000000..c4b9989618
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-fe/templates/NOTES.txt
@@ -0,0 +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={{ include "common.fullname" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdc/charts/sdc-fe/templates/configmap.yaml b/kubernetes/sdc/charts/sdc-fe/templates/configmap.yaml
new file mode 100644
index 0000000000..144bdb719f
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-fe/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/sdc/charts/sdc-fe/templates/deployment.yaml b/kubernetes/sdc/charts/sdc-fe/templates/deployment.yaml
new file mode 100644
index 0000000000..bbc779044b
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-fe/templates/deployment.yaml
@@ -0,0 +1,147 @@
+# 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:
+ initContainers:
+ - name: {{ include "common.name" . }}-readiness
+ command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - "sdc-kb"
+ 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" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-be-config-backend
+ 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.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ 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 }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: JAVA_OPTIONS
+ value: {{ .Values.config.javaOptions }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-fe/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-sdc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-fe/templates/service.yaml b/kubernetes/sdc/charts/sdc-fe/templates/service.yaml
new file mode 100644
index 0000000000..32e3122a48
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-fe/templates/service.yaml
@@ -0,0 +1,56 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdc-gui",
+ "version": "v1",
+ "url": "/sdc1",
+ "protocol": "UI",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange":"0|1"
+ }
+ ]'
+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.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" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/sdc/charts/sdc-fe/values.yaml b/kubernetes/sdc/charts/sdc-fe/values.yaml
new file mode 100644
index 0000000000..9d65b6584c
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-fe/values.yaml
@@ -0,0 +1,89 @@
+# 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/sdc-frontend:1.2-STAGING-latest
+pullPolicy: Always
+
+config:
+ javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=6000,server=y,suspend=n -Xmx256m -Xms256m"
+
+# 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:
+ #Example service definition with external, internal and node ports.
+ #Services may use any combination of ports depending on the 'type' of
+ #service being defined.
+ type: NodePort
+ name: sdc-fe
+ portName: sdc-fe
+ nodePort: "06"
+ internalPort: 8181
+ nodePort2: "07"
+ internalPort2: 9443
+
+
+
+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/sdc/charts/sdc-kb/.helmignore b/kubernetes/sdc/charts/sdc-kb/.helmignore
new file mode 100644
index 0000000000..b9208e2c64
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-kb/.helmignore
@@ -0,0 +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
+sdc-kb.yaml \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-kb/Chart.yaml b/kubernetes/sdc/charts/sdc-kb/Chart.yaml
new file mode 100644
index 0000000000..e0f03e9200
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-kb/Chart.yaml
@@ -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 Service Design and Creation Kibana
+name: sdc-kb
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-kb/templates/NOTES.txt b/kubernetes/sdc/charts/sdc-kb/templates/NOTES.txt
new file mode 100644
index 0000000000..0878f5c080
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-kb/templates/NOTES.txt
@@ -0,0 +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={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdc/charts/sdc-kb/templates/deployment.yaml b/kubernetes/sdc/charts/sdc-kb/templates/deployment.yaml
new file mode 100644
index 0000000000..f33dbe6e38
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-kb/templates/deployment.yaml
@@ -0,0 +1,100 @@
+# 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:
+ initContainers:
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-es-config-elasticsearch
+ 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.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 }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: NODE_OPTIONS
+ value: {{ .Values.config.nodeOptions }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ 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 }}
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-kb/templates/service.yaml b/kubernetes/sdc/charts/sdc-kb/templates/service.yaml
new file mode 100644
index 0000000000..594950e647
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-kb/templates/service.yaml
@@ -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: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.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/sdc/charts/sdc-kb/values.yaml b/kubernetes/sdc/charts/sdc-kb/values.yaml
new file mode 100644
index 0000000000..2dc551fc16
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-kb/values.yaml
@@ -0,0 +1,87 @@
+# 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/sdc-kibana:1.2-STAGING-latest
+pullPolicy: Always
+
+config:
+ nodeOptions: "--max-old-space-size=200"
+
+# 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: ClusterIP
+ name: sdc-kb
+ portName: sdc-kb
+ externalPort: 5601
+ internalPort: 5601
+
+
+sdc-es:
+ service:
+ name: sdc-es
+
+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/sdc/charts/sdc-onboarding-be/.helmignore b/kubernetes/sdc/charts/sdc-onboarding-be/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdc/charts/sdc-onboarding-be/Chart.yaml b/kubernetes/sdc/charts/sdc-onboarding-be/Chart.yaml
new file mode 100644
index 0000000000..66bf8899b0
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/Chart.yaml
@@ -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 Service Design and Creation Onboarding API
+name: sdc-onboarding-be
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-onboarding-be/resources/config/logging/logback.xml b/kubernetes/sdc/charts/sdc-onboarding-be/resources/config/logging/logback.xml
new file mode 100644
index 0000000000..8a89373aad
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/resources/config/logging/logback.xml
@@ -0,0 +1,187 @@
+<?xml version="1.0" encoding="utf-8"?>
+<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-onboarding-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> \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-onboarding-be/templates/NOTES.txt b/kubernetes/sdc/charts/sdc-onboarding-be/templates/NOTES.txt
new file mode 100644
index 0000000000..0878f5c080
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/templates/NOTES.txt
@@ -0,0 +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={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sdc/charts/sdc-onboarding-be/templates/configmap.yaml b/kubernetes/sdc/charts/sdc-onboarding-be/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-onboarding-be/templates/deployment.yaml b/kubernetes/sdc/charts/sdc-onboarding-be/templates/deployment.yaml
new file mode 100644
index 0000000000..328a28dccb
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/templates/deployment.yaml
@@ -0,0 +1,144 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+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:
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-onboarding-be-cassandra-init
+ 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.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - "/var/lib/ready-probe.sh"
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: JAVA_OPTIONS
+ value: {{ .Values.config.javaOptions }}
+ - name: SDC_CLUSTER_NAME
+ value: "SDC-CS-{{ .Values.global.env.name }}"
+ - name: cassandra_ssl_enabled
+ value: {{ .Values.config.cassandraSslEnabled | quote }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: SDC_USER
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_user}
+ - name: SDC_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_password}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /tmp/logback.xml
+ subPath: logback.xml
+ lifecycle:
+ postStart:
+ exec:
+ command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/onboarding-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-sdc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-onboarding-be/templates/job.yaml b/kubernetes/sdc/charts/sdc-onboarding-be/templates/job.yaml
new file mode 100644
index 0000000000..35f2ef849c
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/templates/job.yaml
@@ -0,0 +1,90 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-cassandra-init
+ 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:
+ - name: {{ include "common.name" . }}-job-completion
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: "{{ .Values.global.pullPolicy | default .Values.pullPolicy }}"
+ command:
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-sdc-cs-config-cassandra
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ containers:
+ - name: {{ include "common.name" . }}-job
+ image: "{{ include "common.repository" . }}/{{ .Values.onboardingInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-environments
+ mountPath: /root/chef-solo/environments/
+ - name: {{ include "common.fullname" . }}-data
+ mountPath: /var/lib/cassandra/
+ env:
+ - name: ENVNAME
+ value: {{ .Values.global.env.name }}
+ - name: HOST_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: SDC_USER
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_user}
+ - name: SDC_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: sdc_password}
+ - name: CS_PASSWORD
+ valueFrom:
+ secretKeyRef: {name: {{ .Release.Name }}-sdc-cs-secrets, key: cs_password}
+ - name: CS_HOST_IP
+ value: "sdc-cs"
+ volumes:
+ - name: {{ include "common.fullname" . }}-environments
+ configMap:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ defaultMode: 0755
+ - name: {{ include "common.fullname" . }}-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ restartPolicy: Never
diff --git a/kubernetes/sdc/charts/sdc-onboarding-be/templates/pv.yaml b/kubernetes/sdc/charts/sdc-onboarding-be/templates/pv.yaml
new file mode 100644
index 0000000000..184728f8ad
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/templates/pv.yaml
@@ -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/sdc/charts/sdc-onboarding-be/templates/pvc.yaml b/kubernetes/sdc/charts/sdc-onboarding-be/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/templates/pvc.yaml
@@ -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/sdc/charts/sdc-onboarding-be/templates/service.yaml b/kubernetes/sdc/charts/sdc-onboarding-be/templates/service.yaml
new file mode 100644
index 0000000000..eec748886b
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/templates/service.yaml
@@ -0,0 +1,46 @@
+# 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 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName | default "http" }}
+
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.portName | default "http" }}2
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName | default "http" }}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.portName | default "http" }}2
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/sdc/charts/sdc-onboarding-be/values.yaml b/kubernetes/sdc/charts/sdc-onboarding-be/values.yaml
new file mode 100644
index 0000000000..24ad1389d0
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-onboarding-be/values.yaml
@@ -0,0 +1,112 @@
+# 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/sdc-onboard-backend:1.2-STAGING-latest
+onboardingInitImage: onap/sdc-onboard-cassandra-init:1.2-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+config:
+ javaOptions: "-Xdebug -agentlib:jdwp=transport=dt_socket,address=4001,server=y,suspend=n -Xmx1g -Xms1g"
+ cassandraSslEnabled: "false"
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdc-onboarding-be
+ portName: sdc-onboarding-be
+ internalPort: 8445
+ externalPort: 8445
+ internalPort2: 8081
+ externalPort2: 8081
+
+## 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: /sdc/sdc-cs/CS
+
+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/sdc/charts/sdc-wfd/.helmignore b/kubernetes/sdc/charts/sdc-wfd/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-wfd/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdc/charts/sdc-wfd/Chart.yaml b/kubernetes/sdc/charts/sdc-wfd/Chart.yaml
new file mode 100644
index 0000000000..1db5bb2fdd
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-wfd/Chart.yaml
@@ -0,0 +1,18 @@
+# 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.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT 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 Common Workflow Design
+name: sdc-wfd
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-wfd/templates/NOTES.txt b/kubernetes/sdc/charts/sdc-wfd/templates/NOTES.txt
new file mode 100644
index 0000000000..d83c152a4c
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-wfd/templates/NOTES.txt
@@ -0,0 +1,20 @@
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.fullname" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.fullname" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
+
diff --git a/kubernetes/sdc/charts/sdc-wfd/templates/deployment.yaml b/kubernetes/sdc/charts/sdc-wfd/templates/deployment.yaml
new file mode 100644
index 0000000000..f6ec2c7a0b
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-wfd/templates/deployment.yaml
@@ -0,0 +1,52 @@
+# 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.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key" \ No newline at end of file
diff --git a/kubernetes/sdc/charts/sdc-wfd/templates/service.yaml b/kubernetes/sdc/charts/sdc-wfd/templates/service.yaml
new file mode 100644
index 0000000000..95ea8338a1
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-wfd/templates/service.yaml
@@ -0,0 +1,54 @@
+# 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.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT 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": "workflow-modeler",
+ "version": "v1",
+ "url": "/api/workflow-modeler/v1",
+ "protocol": "REST",
+ "port": "{{ .Values.service.internalPort }}",
+ "enable_ssl": true,
+ "visualRange":"1"
+ },
+ {
+ "serviceName": "workflow-modeler-ui",
+ "version": "v1",
+ "url": "/workflow-modeler",
+ "protocol": "UI",
+ "path": "/workflow-modeler",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/sdc/charts/sdc-wfd/values.yaml b/kubernetes/sdc/charts/sdc-wfd/values.yaml
new file mode 100644
index 0000000000..754899b672
--- /dev/null
+++ b/kubernetes/sdc/charts/sdc-wfd/values.yaml
@@ -0,0 +1,56 @@
+# 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.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT 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
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sdc/sdc-workflow-designer:1.1.0-SNAPSHOT-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+# 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: sdc-wfd
+ portName: sdc-wfd
+ nodePort: "56"
+ internalPort: 8080
+
+ingress:
+ enabled: false
+
diff --git a/kubernetes/sdc/requirements.yaml b/kubernetes/sdc/requirements.yaml
new file mode 100644
index 0000000000..1e8f788318
--- /dev/null
+++ b/kubernetes/sdc/requirements.yaml
@@ -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' \ No newline at end of file
diff --git a/kubernetes/sdc/resources/config/environments/AUTO.json b/kubernetes/sdc/resources/config/environments/AUTO.json
index d35590ec67..ba6fe9705c 100755
--- a/kubernetes/sdc/resources/config/environments/AUTO.json
+++ b/kubernetes/sdc/resources/config/environments/AUTO.json
@@ -1,41 +1,68 @@
{
- "name": "AUTO",
- "description": "OpenSource-AUTO",
- "cookbook_versions": {
- "Deploy-SDandC": "= 1.0.0"
- },
- "json_class": "Chef::Environment",
- "chef_type": "environment",
+ "name": "{{ .Values.global.env.name }}",
+ "description": "OpenSource-{{ .Values.global.env.name }}",
+ "cookbook_versions": {
+ "Deploy-SDandC": "= 1.0.0"
+ },
+ "json_class": "Chef::Environment",
+ "chef_type": "environment",
+
+ "default_attributes": {
+ "disableHttp": false,
+ "CS_VIP": "sdc-cs.{{include "common.namespace" .}}",
+ "BE_VIP": "sdc-be.{{include "common.namespace" .}}",
+ "ONBOARDING_BE_VIP": "sdc-onboarding-be.{{include "common.namespace" .}}",
+ "FE_VIP": "sdc-fe.{{include "common.namespace" .}}",
+ "ES_VIP": "sdc-es.{{include "common.namespace" .}}",
+ "KB_VIP": "sdc-kb.{{include "common.namespace" .}}",
- "default_attributes": {
- "CS_VIP": "sdc-cs.{{.Values.nsPrefix}}",
- "BE_VIP": "sdc-be.{{.Values.nsPrefix}}",
- "FE_VIP": "sdc-fe.{{.Values.nsPrefix}}",
- "ES_VIP": "sdc-es.{{.Values.nsPrefix}}",
"interfaces": {
"application": "eth0",
"private": "eth0"
},
- "ECompP": {
- "ecomp_rest_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/auxapi",
- "ueb_url_list": "dmaap.{{.Values.nsPrefix}}, dmaap.{{.Values.nsPrefix}}",
+ "ECompP": {
+ "ecomp_rest_url": "http://portal-app.{{include "common.namespace" .}}:8989/ONAPPORTAL/auxapi",
+ "ueb_url_list": "message-router.{{include "common.namespace" .}}, message-router.{{include "common.namespace" .}}",
"app_secret": "XftIATw9Jr3VzAcPqt3NnJOu",
"app_key": "x9UfO7JsDn8BESVX",
"inbox_name": "ECOMP-PORTAL-INBOX",
- "ecomp_redirect_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/login.htm",
+ "ecomp_redirect_url": "http://portal-app.{{include "common.namespace" .}}:8989/ONAPPORTAL/login.htm",
"app_topic_name": "ECOMP-PORTAL-OUTBOX-SDC1",
- "decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
+ "decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
},
"UEB": {
"PublicKey": "iPIxkpAMI8qTcQj8",
"SecretKey": "Ehq3WyT4bkif4zwgEbvshGal",
- "fqdn": ["dmaap.{{.Values.nsPrefix}}", "dmaap.{{.Values.nsPrefix}}"]
+ "fqdn": [
+ "message-router.{{include "common.namespace" .}}",
+ "message-router.{{include "common.namespace" .}}"
+ ]
},
"Nodes": {
- "CS": "sdc-cs.{{.Values.nsPrefix}}",
- "BE": "sdc-be.{{.Values.nsPrefix}}",
- "FE": "sdc-fe.{{.Values.nsPrefix}}",
- "ES": "sdc-es.{{.Values.nsPrefix}}"
+ "CS": [
+ "sdc-cs.{{include "common.namespace" .}}"
+ ],
+ "BE": "sdc-be.{{include "common.namespace" .}}",
+ "ONBOARDING_BE": "sdc-onboarding-be.{{include "common.namespace" .}}",
+ "FE": "sdc-fe.{{include "common.namespace" .}}",
+ "ES": [
+ "sdc-es.{{include "common.namespace" .}}"
+ ],
+ "KB": "sdc-kb.{{include "common.namespace" .}}"
+ },
+ "Plugins": {
+ "DCAE": {
+ "dcae_discovery_url": "{{.Values.config.environment.dcaeUrl}}",
+ "dcae_source_url": "{{.Values.config.environment.dcaeUrl}}"
+ },
+ "WORKFLOW": {
+ "workflow_discovery_url": "{{.Values.config.environment.workflowUrl}}",
+ "workflow_source_url": "{{.Values.config.environment.workflowUrl}}"
+ }
+ },
+ "VnfRepo": {
+ "vnfRepoPort": "{{.Values.config.environment.vnfRepoPort}}",
+ "vnfRepoHost": "refrepo.{{include "common.namespace" .}}"
}
},
"override_attributes": {
@@ -47,6 +74,10 @@
"http_port": "8080",
"https_port": "8443"
},
+ "ONBOARDING_BE": {
+ "http_port": "8081",
+ "https_port": "8445"
+ },
"elasticsearch": {
"cluster_name": "SDC-ES-",
"ES_path_home": "/usr/share/elasticsearch",
@@ -68,7 +99,10 @@
"cache_dir": "/var/lib/cassandra/saved_caches",
"log_file": "/var/lib/cassandra/log/system.log",
"phi_convict_threshold": "8",
- "commitlog_dir": "/var/lib/cassandra/commitlog"
+ "commitlog_dir": "/var/lib/cassandra/commitlog",
+ "socket_read_timeout": "20000",
+ "socket_connect_timeout": "20000",
+ "titan_connection_timeout": "10000"
}
}
}
diff --git a/kubernetes/sdc/resources/config/environments/Template.json b/kubernetes/sdc/resources/config/environments/Template.json
deleted file mode 100755
index 247e990f31..0000000000
--- a/kubernetes/sdc/resources/config/environments/Template.json
+++ /dev/null
@@ -1,75 +0,0 @@
-{
- "name": "xxx",
- "description": "OpenSource-xxx",
- "cookbook_versions": {
- "Deploy-SDandC": "= 1.0.0"
- },
- "json_class": "Chef::Environment",
- "chef_type": "environment",
-
- "default_attributes": {
- "CS_VIP": "yyy",
- "BE_VIP": "yyy",
- "FE_VIP": "yyy",
- "ES_VIP": "yyy",
- "interfaces": {
- "application": "eth0",
- "private": "eth1"
- },
- "ECompP": {
- "ecomp_rest_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/auxapi",
- "ueb_url_list": "dmaap.{{.Values.nsPrefix}},dmaap.{{.Values.nsPrefix}}",
- "app_secret": "XftIATw9Jr3VzAcPqt3NnJOu",
- "app_key": "x9UfO7JsDn8BESVX",
- "inbox_name": "ECOMP-PORTAL-INBOX",
- "ecomp_redirect_url": "http://portalapps.{{.Values.nsPrefix}}:8989/ONAPPORTAL/login.htm",
- "app_topic_name": "ECOMP-PORTAL-OUTBOX-SDC1",
- "decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
- },
- "UEB": {
- "PublicKey": "iPIxkpAMI8qTcQj8",
- "SecretKey": "Ehq3WyT4bkif4zwgEbvshGal",
- "fqdn": ["dmaap.{{.Values.nsPrefix}}", "dmaap.{{.Values.nsPrefix}}"]
- },
- "Nodes": {
- "CS": "yyy",
- "BE": "yyy",
- "FE": "yyy",
- "ES": "yyy"
- }
- },
- "override_attributes": {
- "FE": {
- "http_port": "8181",
- "https_port": "9443"
- },
- "BE": {
- "http_port": "8080",
- "https_port": "8443"
- },
- "elasticsearch": {
- "cluster_name": "SDC-ES-",
- "ES_path_home": "/usr/share/elasticsearch",
- "ES_path_data": "/usr/share/elasticsearch/data",
- "num_of_replicas": "0",
- "num_of_shards": "1"
- },
-
- "cassandra": {
- "concurrent_reads": "32",
- "num_tokens": "256",
- "data_dir": "/var/lib/cassandra/data",
- "hinted_handoff_enabled": "true",
- "cassandra_user": "asdc_user",
- "cassandra_password": "Aa1234%^!",
- "concurrent_writes": "32",
- "cluster_name": "SDC-CS-",
- "multithreaded_compaction": "false",
- "cache_dir": "/var/lib/cassandra/saved_caches",
- "log_file": "/var/lib/cassandra/log/system.log",
- "phi_convict_threshold": "8",
- "commitlog_dir": "/var/lib/cassandra/commitlog"
- }
- }
-}
-
diff --git a/kubernetes/sdc/resources/config/sdc-fe/FE_2_setup_configuration.rb b/kubernetes/sdc/resources/config/sdc-fe/FE_2_setup_configuration.rb
deleted file mode 100755
index 5c233a2207..0000000000
--- a/kubernetes/sdc/resources/config/sdc-fe/FE_2_setup_configuration.rb
+++ /dev/null
@@ -1,27 +0,0 @@
-jetty_base="/var/lib/jetty"
-template "catalog-fe-config" do
- path "#{jetty_base}/config/catalog-fe/configuration.yaml"
- source "FE-configuration.yaml.erb"
- owner "jetty"
- group "jetty"
- mode "0755"
- variables({
- :fe_host_ip => node['HOST_IP'],
- :be_host_ip => "sdc-be.{{.Values.nsPrefix}}",
- :catalog_port => node['BE'][:http_port],
- :ssl_port => node['BE'][:https_port]
- })
-end
-
-template "onboarding-fe-config" do
- path "#{jetty_base}/config/onboarding-fe/onboarding_configuration.yaml"
- source "FE-onboarding-configuration.yaml.erb"
- owner "jetty"
- group "jetty"
- mode "0755"
- variables({
- :catalog_ip => node['HOST_IP'],
- :catalog_port => node['BE'][:http_port],
- :ssl_port => node['BE'][:https_port]
-})
-end
diff --git a/kubernetes/sdc/templates/all-services.yaml b/kubernetes/sdc/templates/all-services.yaml
deleted file mode 100644
index 1f0a9a720c..0000000000
--- a/kubernetes/sdc/templates/all-services.yaml
+++ /dev/null
@@ -1,141 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdcSdcEs }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-es
- name: sdc-es
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-es-port-9200
- port: 9200
- - name: sdc-es-port-9300
- port: 9300
- selector:
- app: sdc-es
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcCs }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-cs-port-9042
- port: 9042
- - name: sdc-cs-port-9160
- port: 9160
- selector:
- app: sdc-cs
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcKb }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- ports:
- - name: sdc-kb-port-5601
- port: 5601
- selector:
- app: sdc-kb
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdcSdcBe }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-be
- name: sdc-be
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdc",
- "version": "v1",
- "url": "/sdc/v1",
- "protocol": "REST",
- "port": "8080",
- "visualRange":"1"
- },
- {
- "serviceName": "sdc-deprecated",
- "version": "v1",
- "url": "/sdc/v1",
- "protocol": "REST",
- "port": "8080",
- "visualRange":"1",
- "path":"/sdc/v1"
- }
- ]'
-spec:
- ports:
- - name: sdc-be-port-8443
- nodePort: {{ .Values.nodePortPrefix }}04
- port: 8443
- - name: sdc-be-port-8080
- nodePort: {{ .Values.nodePortPrefix }}05
- port: 8080
- selector:
- app: sdc-be
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableSdcSdcFe }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdc-gui",
- "version": "v1",
- "url": "/sdc1",
- "protocol": "UI",
- "port": "8181",
- "visualRange":"0|1"
- }
- ]'
-spec:
- ports:
- - name: sdc-fe-port-9443
- nodePort: {{ .Values.nodePortPrefix }}07
- port: 9443
- - name: sdc-fe-port-8181
- nodePort: {{ .Values.nodePortPrefix }}06
- port: 8181
- selector:
- app: sdc-fe
- type: NodePort
-#{{ end }} \ No newline at end of file
diff --git a/kubernetes/sdc/templates/configmap.yaml b/kubernetes/sdc/templates/configmap.yaml
new file mode 100644
index 0000000000..575176de8f
--- /dev/null
+++ b/kubernetes/sdc/templates/configmap.yaml
@@ -0,0 +1,29 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-sdc-environments-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/environments/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-sdc-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/sdc/templates/sdc-be.yaml b/kubernetes/sdc/templates/sdc-be.yaml
deleted file mode 100644
index 9cf036a55e..0000000000
--- a/kubernetes/sdc/templates/sdc-be.yaml
+++ /dev/null
@@ -1,137 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdcSdcBe }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-be
- name: sdc-be
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-be
- template:
- metadata:
- labels:
- app: sdc-be
- name: sdc-be
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- - --container-name
- - sdc-kb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-be-readiness
- - command:
- - /root/ready.py
- args:
- - --container-name
- - dmaap
- env:
- - name: NAMESPACE
- value: {{ .Values.nsPrefix }}
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-dmaap-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- image: {{ .Values.image.sdcBackend }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-be
- volumeMounts:
- - mountPath: /usr/share/elasticsearch/data/
- name: sdc-sdc-es-es
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /tmp/logback.xml
- name: sdc-logback
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-be/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- ports:
- - containerPort: 8443
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8443
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /usr/share/filebeat/data
- name: sdc-data-filebeat
- volumes:
- - name: filebeat-conf
- configMap:
- name: sdc-filebeat-configmap
- - name: sdc-logs-2
- emptyDir: {}
- - name: sdc-data-filebeat
- emptyDir: {}
- - name: sdc-logback
- configMap:
- name : sdc-log-be-configmap
- - name: sdc-sdc-es-es
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdc/templates/sdc-cs.yaml b/kubernetes/sdc/templates/sdc-cs.yaml
deleted file mode 100644
index d41d5f75b8..0000000000
--- a/kubernetes/sdc/templates/sdc-cs.yaml
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdcSdcCs }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-cs
- template:
- metadata:
- labels:
- app: sdc-cs
- name: sdc-cs
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-cs-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: ES_HEAP_SIZE
- value: "1024M"
- image: {{ .Values.image.sdcCassandra }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-cs
- volumeMounts:
- - mountPath: /var/lib/cassandra/
- name: sdc-sdc-cs-cs
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 9042
- - containerPort: 9160
- readinessProbe:
- tcpSocket:
- port: 9160
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-sdc-cs-cs
- persistentVolumeClaim:
- claimName: sdc-cs-db
- - name: sdc-environments
- configMap:
- name : sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdc/templates/sdc-es.yaml b/kubernetes/sdc/templates/sdc-es.yaml
deleted file mode 100644
index 0c3f3dedf7..0000000000
--- a/kubernetes/sdc/templates/sdc-es.yaml
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdcSdcEs }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-es
- name: sdc-es
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-es
- template:
- metadata:
- labels:
- app: sdc-es
- name: sdc-es
- spec:
- initContainers:
- - name: sdc-logs-init
- image: {{ .Values.image.ubuntuInit }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- command:
- - /bin/bash
- - "-c"
- - |
- mkdir -p /ubuntu-init/ASDC/ASDC-ES/
- mkdir -p /ubuntu-init/ASDC/ASDC-CS/
- mkdir -p /ubuntu-init/ASDC/ASDC-KB/
- mkdir -p /ubuntu-init/ASDC/ASDC-BE/
- mkdir -p /ubuntu-init/ASDC/ASDC-FE/
- chmod -R 777 /ubuntu-init/
- containers:
- - image: {{ .Values.image.sdcElasticsearch }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-es
- env:
- - name: ENVNAME
- value: "AUTO"
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: ES_HEAP_SIZE
- value: "1024M"
- volumeMounts:
- - name: sdc-logs
- mountPath: /ubuntu-init/
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 9200
- - containerPort: 9300
- readinessProbe:
- tcpSocket:
- port: 9200
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-environments
- configMap :
- name : sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdc/templates/sdc-fe.yaml b/kubernetes/sdc/templates/sdc-fe.yaml
deleted file mode 100644
index b61e11fa95..0000000000
--- a/kubernetes/sdc/templates/sdc-fe.yaml
+++ /dev/null
@@ -1,135 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdcSdcFe }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-fe
- template:
- metadata:
- labels:
- app: sdc-fe
- name: sdc-fe
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- - --container-name
- - sdc-kb
- - --container-name
- - sdc-be
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-fe-readiness
- containers:
- - name: sdc-fe
- env:
- - name: ENVNAME
- value: AUTO
- - name: HOST_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- image: {{ .Values.image.sdcFrontend }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /usr/share/elasticsearch/data/
- name: sdc-sdc-es-es
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /root/chef-solo/cookbooks/sdc-catalog-fe/recipes/FE_2_setup_configuration.rb
- name: sdc-fe-config
- subPath: FE_2_setup_configuration.rb
- - mountPath: /tmp/logback.xml
- name: sdc-logback
- lifecycle:
- postStart:
- exec:
- command: ["/bin/sh", "-c", "export LOG=wait_logback.log; touch $LOG; export SRC=/tmp/logback.xml; export DST=/var/lib/jetty/config/catalog-fe/; while [ ! -e $DST ]; do echo 'Waiting for $DST...' >> $LOG; sleep 5; done; sleep 2; /bin/cp -f $SRC $DST; echo 'Done' >> $LOG"]
- ports:
- - containerPort: 9443
- - containerPort: 8181
- readinessProbe:
- tcpSocket:
- port: 8181
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: sdc-logs-2
- - mountPath: /usr/share/filebeat/data
- name: sdc-data-filebeat
- volumes:
- - name: filebeat-conf
- configMap:
- name : sdc-filebeat-configmap
- - name: sdc-logs-2
- emptyDir: {}
- - name: sdc-data-filebeat
- emptyDir: {}
- - name: sdc-logback
- configMap:
- name : sdc-log-fe-configmap
- - name: sdc-sdc-es-es
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-es/ES
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- - name: sdc-fe-config
- configMap:
- name: sdc-fe-configmap
- defaultMode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdc/templates/sdc-kb.yaml b/kubernetes/sdc/templates/sdc-kb.yaml
deleted file mode 100644
index 122781b62e..0000000000
--- a/kubernetes/sdc/templates/sdc-kb.yaml
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdcSdcKb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: sdc-kb
- template:
- metadata:
- labels:
- app: sdc-kb
- name: sdc-kb
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdc-es
- - --container-name
- - sdc-cs
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-kb-readiness
- containers:
- - env:
- - name: ENVNAME
- value: AUTO
- - name: ELASTICSEARCH_URL
- value: http://sdc-es:9200
- image: {{ .Values.image.sdcKibana }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdc-kb
- volumeMounts:
- - mountPath: /root/chef-solo/environments/
- name: sdc-environments
- - mountPath: /etc/localtime
- name: sdc-localtime
- readOnly: true
- - mountPath: /var/lib/jetty/logs
- name: sdc-logs
- ports:
- - containerPort: 5601
- readinessProbe:
- tcpSocket:
- port: 5601
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: sdc-environments
- configMap:
- name: sdc-environments-configmap
- defaultMode: 0755
- - name: sdc-localtime
- hostPath:
- path: /etc/localtime
- - name: sdc-logs
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/logs
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdc/templates/sdc-pv-pvc.yaml b/kubernetes/sdc/templates/sdc-pv-pvc.yaml
deleted file mode 100644
index d4dbc1b2a6..0000000000
--- a/kubernetes/sdc/templates/sdc-pv-pvc.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-*/}}
-
-#{{ if not .Values.disableSdcSdcCs }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-sdc"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-sdc"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdc/sdc-cs/CS
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: sdc-cs-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-sdc"
-#{{ end }}
diff --git a/kubernetes/sdc/templates/secrets.yaml b/kubernetes/sdc/templates/secrets.yaml
new file mode 100644
index 0000000000..341e55aea8
--- /dev/null
+++ b/kubernetes/sdc/templates/secrets.yaml
@@ -0,0 +1,31 @@
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ .Release.Name }}-sdc-cs-secrets
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ #application user
+ sdc_user: "{{ .Values.global.secrets.sdc_user }}"
+ sdc_password: "{{ .Values.global.secrets.sdc_password }}"
+ #default user:
+ cs_password: "{{ .Values.global.secrets.cs_password }}"
diff --git a/kubernetes/sdc/values.yaml b/kubernetes/sdc/values.yaml
index 40b3ec3f23..6882692f04 100644
--- a/kubernetes/sdc/values.yaml
+++ b/kubernetes/sdc/values.yaml
@@ -12,19 +12,26 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: Always
-nodePortPrefix: 302
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- sdcKibana: nexus3.onap.org:10001/openecomp/sdc-kibana:v1.1.0
- sdcFrontend: nexus3.onap.org:10001/openecomp/sdc-frontend:v1.1.0
- sdcElasticsearch: nexus3.onap.org:10001/openecomp/sdc-elasticsearch:v1.1.0
- sdcCassandra: nexus3.onap.org:10001/openecomp/sdc-cassandra:v1.1.0
- sdcBackend: nexus3.onap.org:10001/openecomp/sdc-backend:v1.1.0
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
- ubuntuInit: oomk8s/ubuntu-init:1.0.0
+global:
+ persistence: {}
+ env:
+ name: AUTO
+ secrets:
+ sdc_user: YXNkY191c2Vy
+ sdc_password: QWExMjM0JV4h
+ cs_password: b25hcDEyMyNAIQ==
+ ubuntuInitRepository: oomk8s
+ ubuntuInitImage: ubuntu-init:1.0.0
+
+
config:
logstashServiceName: log-ls
logstashPort: 5044
+ environment:
+ dcaeUrl: 10.0.2.15
+ workflowUrl: 10.0.2.15
+ vnfRepoPort: 8702
+
+sdc-es:
+ service:
+ name: sdc-es \ No newline at end of file
diff --git a/kubernetes/sdnc/.helmignore b/kubernetes/sdnc/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdnc/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdnc/Chart.yaml b/kubernetes/sdnc/Chart.yaml
index 6e0ec8d433..fe27426f13 100644
--- a/kubernetes/sdnc/Chart.yaml
+++ b/kubernetes/sdnc/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: SDN Controller
name: sdnc
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/sdnc/charts/dmaap-listener/Chart.yaml b/kubernetes/sdnc/charts/dmaap-listener/Chart.yaml
new file mode 100644
index 0000000000..ba2e574d06
--- /dev/null
+++ b/kubernetes/sdnc/charts/dmaap-listener/Chart.yaml
@@ -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: SDNC DMaaP Listener
+name: dmaap-listener
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/dmaap-listener/requirements.yaml b/kubernetes/sdnc/charts/dmaap-listener/requirements.yaml
new file mode 100644
index 0000000000..ce82a2f838
--- /dev/null
+++ b/kubernetes/sdnc/charts/dmaap-listener/requirements.yaml
@@ -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/sdnc/charts/dmaap-listener/resources/config/dblib.properties b/kubernetes/sdnc/charts/dmaap-listener/resources/config/dblib.properties
new file mode 100644
index 0000000000..9e4c88a879
--- /dev/null
+++ b/kubernetes/sdnc/charts/dmaap-listener/resources/config/dblib.properties
@@ -0,0 +1,32 @@
+###
+# ============LICENSE_START=======================================================
+# Copyright (C) 2018 ONAP 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=========================================================
+###
+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}}:{{.Values.mysql.service.internalPort}}/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
+org.onap.ccsdk.sli.jdbc.password=gamma
+org.onap.ccsdk.sli.jdbc.connection.name=sdnctldb01
+org.onap.ccsdk.sli.jdbc.connection.timeout=50
+org.onap.ccsdk.sli.jdbc.request.timeout=100
+org.onap.ccsdk.sli.jdbc.limit.init=10
+org.onap.ccsdk.sli.jdbc.limit.min=10
+org.onap.ccsdk.sli.jdbc.limit.max=20
+org.onap.dblib.connection.recovery=false
diff --git a/kubernetes/sdnc/resources/config/dmaap/dhcpalert.properties b/kubernetes/sdnc/charts/dmaap-listener/resources/config/dhcpalert.properties
index cfc8e130be..422696afbd 100644
--- a/kubernetes/sdnc/resources/config/dmaap/dhcpalert.properties
+++ b/kubernetes/sdnc/charts/dmaap-listener/resources/config/dhcpalert.properties
@@ -2,7 +2,7 @@ TransportType=HTTPAUTH
Latitude =50.000000
Longitude =-100.000000
Version =1.0
-ServiceName =dmaap-v1.dev.dmaap.dt.saat.acsi.openecomp.org/events
+ServiceName =message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}/events
Environment =TEST
Partner = BOT_R
routeOffer=MR1
@@ -14,7 +14,7 @@ password =admin
contenttype =application/json
authKey=fxoW4jZrO7mdLWWa:f4KxkoBtToyoEG7suMoV8KhnkwM=
authDate=2016-02-18T13:57:37-0800
-host=dmaap.{{.Values.nsPrefix}}:3904
+host=message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}
topic=VCPE-DHCP-EVENT
group=jmsgrp
id=sdnc1
@@ -31,5 +31,5 @@ AFT_DME2_EP_READ_TIMEOUT_MS=50000
sessionstickinessrequired=NO
DME2preferredRouterFilePath=/opt/onap/sdnc/data/properties/dmaap-listener.preferredRoute.txt
sdnc.odl.user=admin
-sdnc.odl.password=admin
-sdnc.odl.url-base=https://sdnhost.{{.Values.nsPrefix}}:8443/restconf/operations
+sdnc.odl.password={{.Values.config.odlPassword}}
+sdnc.odl.url-base=http://sdnc.{{.Release.Namespace}}:{{.Values.config.sdncPort}}/restconf/operations
diff --git a/kubernetes/sdnc/charts/dmaap-listener/resources/config/lcm.properties b/kubernetes/sdnc/charts/dmaap-listener/resources/config/lcm.properties
new file mode 100644
index 0000000000..69085701d3
--- /dev/null
+++ b/kubernetes/sdnc/charts/dmaap-listener/resources/config/lcm.properties
@@ -0,0 +1,35 @@
+TransportType=HTTPAUTH
+Latitude =50.000000
+Longitude =-100.000000
+Version =1.0
+ServiceName =message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}/events
+Environment =TEST
+Partner = BOT_R
+routeOffer=MR1
+SubContextPath =/
+Protocol =http
+MethodType =GET
+username =admin
+password =admin
+contenttype =application/json
+authKey=fxoW4jZrO7mdLWWa:f4KxkoBtToyoEG7suMoV8KhnkwM=
+authDate=2016-02-18T13:57:37-0800
+host=message-router.{{.Release.Namespace}}:{{.Values.config.dmaapPort}}
+topic=SDNC-LCM-READ
+group=jmsgrp
+id=sdnc_1
+timeout=15000
+limit=1000
+filter=
+AFT_DME2_EXCHANGE_REQUEST_HANDLERS=com.att.nsa.test.PreferredRouteRequestHandler
+AFT_DME2_EXCHANGE_REPLY_HANDLERS=com.att.nsa.test.PreferredRouteReplyHandler
+AFT_DME2_REQ_TRACE_ON=true
+AFT_ENVIRONMENT=AFTUAT
+AFT_DME2_EP_CONN_TIMEOUT=15000
+AFT_DME2_ROUNDTRIP_TIMEOUT_MS=240000
+AFT_DME2_EP_READ_TIMEOUT_MS=50000
+sessionstickinessrequired=NO
+DME2preferredRouterFilePath=/opt/onap/sdnc/data/properties/dmaap-listener.preferredRoute.txt
+sdnc.odl.user=admin
+sdnc.odl.password={{.Values.config.odlPassword}}
+sdnc.odl.url-base=http://sdnc.{{.Release.Namespace}}:{{.Values.config.sdncPort}}/restconf/operations \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/dmaap-listener/templates/configmap.yaml b/kubernetes/sdnc/charts/dmaap-listener/templates/configmap.yaml
new file mode 100644
index 0000000000..fd8934b22c
--- /dev/null
+++ b/kubernetes/sdnc/charts/dmaap-listener/templates/configmap.yaml
@@ -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/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml b/kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml
new file mode 100644
index 0000000000..1a13cc3595
--- /dev/null
+++ b/kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml
@@ -0,0 +1,96 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.config.mysqlChartName }}
+ - --container-name
+ - {{ .Values.config.sdncChartName }}
+ - --container-name
+ - {{ .Values.config.msgRouterContainerName }}
+ 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:
+ - command:
+ - /opt/onap/sdnc/dmaap-listener/bin/start-dmaap-listener.sh
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: PROPERTY_DIR
+ value: "{{ .Values.config.configDir }}"
+ - name: SDNC_CONFIG_DIR
+ value: "{{ .Values.config.configDir }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: {{ .Values.config.configDir }}/dblib.properties
+ name: properties
+ subPath: dblib.properties
+ - mountPath: {{ .Values.config.configDir }}/dhcpalert.properties
+ name: properties
+ subPath: dhcpalert.properties
+ - mountPath: {{ .Values.config.configDir }}/lcm.properties
+ name: properties
+ subPath: lcm.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 }}
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties
+ configMap:
+ name: {{ include "common.fullname" . }}
+ defaultMode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/mock/templates/all-services.yaml b/kubernetes/sdnc/charts/dmaap-listener/templates/service.yaml
index 4c566eeed2..b2b34d0e08 100644
--- a/kubernetes/mock/templates/all-services.yaml
+++ b/kubernetes/sdnc/charts/dmaap-listener/templates/service.yaml
@@ -12,22 +12,17 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableMockSniroEmulator }}
apiVersion: v1
kind: Service
metadata:
- name: sniro-emulator
- namespace: "{{ .Values.nsPrefix }}"
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
labels:
- app: sniro-emulator
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
spec:
- type: NodePort
- ports:
- - port: 80
- nodePort: {{ .Values.nodePortPrefix }}88
- targetPort: 9999
- protocol: TCP
- name: http
- selector:
- app: sniro-emulator
-#{{ end }} \ No newline at end of file
+ type: ClusterIP
+ clusterIP: None
diff --git a/kubernetes/sdnc/charts/dmaap-listener/values.yaml b/kubernetes/sdnc/charts/dmaap-listener/values.yaml
new file mode 100644
index 0000000000..fec13eb654
--- /dev/null
+++ b/kubernetes/sdnc/charts/dmaap-listener/values.yaml
@@ -0,0 +1,83 @@
+# 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/sdnc-dmaap-listener-image:1.3-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ dmaapPort: 3904
+ mysqlChartName: sdnc-db
+ sdncChartName: sdnc
+ sdncPort: 8282
+ msgRouterContainerName: message-router
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# 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
+
+ingress:
+ enabled: false
+
+service:
+ name: sdnc-dmaap-listener
+
+mysql:
+ service:
+ name: sdnc-dbhost
+ internalPort: 3306
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/.helmignore b/kubernetes/sdnc/charts/sdnc-ansible-server/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/Chart.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/Chart.yaml
new file mode 100644
index 0000000000..82b9fc5f89
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/Chart.yaml
@@ -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: SDN-C Ansible Server
+name: sdnc-ansible-server
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/requirements.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/requirements.yaml
new file mode 100644
index 0000000000..1e8f788318
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/requirements.yaml
@@ -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' \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config b/kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config
new file mode 100644
index 0000000000..f63fe211f6
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config
@@ -0,0 +1,45 @@
+# Copyright © 2017 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.
+
+# 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: sdnc
+passwd: sdnc
+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/sdnc/charts/sdnc-ansible-server/templates/configmap.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/templates/configmap.yaml
new file mode 100644
index 0000000000..f57dc78107
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/templates/configmap.yaml
@@ -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/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml
new file mode 100644
index 0000000000..a19c33a7c6
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/templates/deployment.yaml
@@ -0,0 +1,96 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.config.sdncChartName }}
+ 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" \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/templates/service.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/templates/service.yaml
new file mode 100644
index 0000000000..3325d6bc0f
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/templates/service.yaml
@@ -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
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml
new file mode 100644
index 0000000000..088008bf7e
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml
@@ -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.
+
+#################################################################
+# 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/sdnc-ansible-server-image:1.3-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ sdncChartName: sdnc
+ configDir: /opt/onap/sdnc
+ mysqlServiceName: sdnc-dbhost
+
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: ClusterIP
+ name: sdnc-ansible-server
+ portName: sdnc-ansible-server
+ internalPort: 8000
+ externalPort: 8000
+
+ingress:
+ enabled: false
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/sdnc/charts/sdnc-portal/.helmignore b/kubernetes/sdnc/charts/sdnc-portal/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sdnc/charts/sdnc-portal/Chart.yaml b/kubernetes/sdnc/charts/sdnc-portal/Chart.yaml
new file mode 100644
index 0000000000..193c38ffce
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/Chart.yaml
@@ -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: SDN-C Admin Portal
+name: sdnc-portal
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/sdnc-portal/requirements.yaml b/kubernetes/sdnc/charts/sdnc-portal/requirements.yaml
new file mode 100644
index 0000000000..1e8f788318
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/requirements.yaml
@@ -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' \ No newline at end of file
diff --git a/kubernetes/sdnc/resources/config/conf/admportal.json b/kubernetes/sdnc/charts/sdnc-portal/resources/config/admportal.json
index ee575c22ac..f6d202ef09 100755..100644
--- a/kubernetes/sdnc/resources/config/conf/admportal.json
+++ b/kubernetes/sdnc/charts/sdnc-portal/resources/config/admportal.json
@@ -3,7 +3,7 @@
"dbConnLimit": "100",
"home": "/opt/admportal",
"sslEnabled": "false",
- "nonSslPort": "8843",
+ "nonSslPort": "{{.Values.service.internalPort}}",
"ConexusNetworkPort": "8443",
"AppNetworkPort": "8543",
"clusterPort": "8443",
@@ -25,9 +25,9 @@
"docker0": "172.17.0.1",
"virbr0": "192.168.122.1"
},
- "svclogicPropertiesDb01": "/opt/onap/sdnc/data/properties/svclogic.properties.sdnctldb01",
+ "svclogicPropertiesDb01": "{{.Values.config.configDir}}/svclogic.properties.sdnctldb01",
"databases": [
- "dbhost|sdnctldb01"
+ "sdnc-dbhost.{{.Release.Namespace}}|sdnc-sdnctldb01.{{.Release.Namespace}}"
],
"dbFabricServer": "localhost",
"dbFabricPort": "32275",
@@ -39,12 +39,12 @@
"dbPassword": "gamma",
"dbName": "sdnctl",
"odlProtocol": "http",
- "odlHost": "sdnhost.{{.Values.nsPrefix}}",
- "odlConexusHost": "sdnhost.{{.Values.nsPrefix}}",
+ "odlHost": "sdnc.{{.Release.Namespace}}",
+ "odlConexusHost": "sdnc.{{.Release.Namespace}}",
"odlPort": "8181",
"odlConexusPort": "8181",
"odlUser": "admin",
- "odlPasswd": "admin",
+ "odlPasswd": "{{.Values.config.odlPassword}}",
"ConexusNetwork_sslCert": "",
"ConexusNetwork_sslKey": "",
"AppNetwork_sslCert": "",
diff --git a/kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties b/kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties
new file mode 100644
index 0000000000..9e4c88a879
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties
@@ -0,0 +1,32 @@
+###
+# ============LICENSE_START=======================================================
+# Copyright (C) 2018 ONAP 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=========================================================
+###
+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}}:{{.Values.mysql.service.internalPort}}/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
+org.onap.ccsdk.sli.jdbc.password=gamma
+org.onap.ccsdk.sli.jdbc.connection.name=sdnctldb01
+org.onap.ccsdk.sli.jdbc.connection.timeout=50
+org.onap.ccsdk.sli.jdbc.request.timeout=100
+org.onap.ccsdk.sli.jdbc.limit.init=10
+org.onap.ccsdk.sli.jdbc.limit.min=10
+org.onap.ccsdk.sli.jdbc.limit.max=20
+org.onap.dblib.connection.recovery=false
diff --git a/kubernetes/sdnc/charts/sdnc-portal/resources/config/svclogic.properties b/kubernetes/sdnc/charts/sdnc-portal/resources/config/svclogic.properties
new file mode 100644
index 0000000000..e0e3295735
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/resources/config/svclogic.properties
@@ -0,0 +1,5 @@
+org.openecomp.sdnctl.sli.dbtype = jdbc
+org.openecomp.sdnctl.sli.jdbc.url = jdbc:mysql://sdnc-sdnctldb01:3306/sdnctl
+org.openecomp.sdnctl.sli.jdbc.database = sdnctl
+org.openecomp.sdnctl.sli.jdbc.user = sdnctl
+org.openecomp.sdnctl.sli.jdbc.password = gamma \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/sdnc-portal/resources/config/svclogic.properties.sdnctldb02 b/kubernetes/sdnc/charts/sdnc-portal/resources/config/svclogic.properties.sdnctldb02
new file mode 100644
index 0000000000..e665a56d75
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/resources/config/svclogic.properties.sdnctldb02
@@ -0,0 +1,5 @@
+org.openecomp.sdnctl.sli.dbtype = jdbc
+org.openecomp.sdnctl.sli.jdbc.url = jdbc:mysql://sdnc-sdnctldb02:3306/sdnctl
+org.openecomp.sdnctl.sli.jdbc.database = sdnctl
+org.openecomp.sdnctl.sli.jdbc.user = sdnctl
+org.openecomp.sdnctl.sli.jdbc.password = gamma \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/sdnc-portal/templates/configmap.yaml b/kubernetes/sdnc/charts/sdnc-portal/templates/configmap.yaml
new file mode 100644
index 0000000000..f57dc78107
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/templates/configmap.yaml
@@ -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/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml b/kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml
new file mode 100644
index 0000000000..87ed6aa283
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml
@@ -0,0 +1,118 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.config.mysqlChartName }}
+ - --container-name
+ - {{ .Values.config.sdncChartName }}
+ 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/admportal/shell && ./start_portal.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 }}
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ - name: SDNC_CONFIG_DIR
+ value: "{{ .Values.config.configDir }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: {{ .Values.config.configDir }}/admportal.json
+ name: properties
+ subPath: admportal.json
+ - mountPath: {{ .Values.config.configDir }}/dblib.properties
+ name: properties
+ subPath: dblib.properties
+ - mountPath: {{ .Values.config.configDir }}/svclogic.properties
+ name: properties
+ subPath: svclogic.properties
+ - mountPath: {{ .Values.config.configDir }}/svclogic.properties.sdnctldb01
+ name: properties
+ subPath: svclogic.properties
+ - mountPath: {{ .Values.config.configDir }}/svclogic.properties.sdnctldb02
+ name: properties
+ subPath: svclogic.properties.sdnctldb02
+ 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: properties
+ configMap:
+ name: {{ include "common.fullname" . }}
+ defaultMode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/sdnc/charts/sdnc-portal/templates/secrets.yaml b/kubernetes/sdnc/charts/sdnc-portal/templates/secrets.yaml
new file mode 100644
index 0000000000..345c194d96
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/templates/secrets.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }}
diff --git a/kubernetes/sdnc/charts/sdnc-portal/templates/service.yaml b/kubernetes/sdnc/charts/sdnc-portal/templates/service.yaml
new file mode 100644
index 0000000000..2976287341
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/templates/service.yaml
@@ -0,0 +1,50 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdnc-portal",
+ "version": "v1",
+ "url": "/",
+ "protocol": "UI",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"0|1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ 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/sdnc/charts/sdnc-portal/values.yaml b/kubernetes/sdnc/charts/sdnc-portal/values.yaml
new file mode 100644
index 0000000000..f5cd48c12f
--- /dev/null
+++ b/kubernetes/sdnc/charts/sdnc-portal/values.yaml
@@ -0,0 +1,86 @@
+# 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/admportal-sdnc-image:1.3-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ mysqlChartName: sdnc-db
+ dbRootPassword: openECOMP1.0
+ sdncChartName: sdnc
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: sdnc-portal
+ portName: sdnc-portal
+ internalPort: 8843
+ externalPort: 8843
+ nodePort: "01"
+
+ingress:
+ enabled: false
+
+mysql:
+ service:
+ name: sdnc-dbhost
+ internalPort: 3306
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/sdnc/charts/ueb-listener/Chart.yaml b/kubernetes/sdnc/charts/ueb-listener/Chart.yaml
new file mode 100644
index 0000000000..35b2a2e9c3
--- /dev/null
+++ b/kubernetes/sdnc/charts/ueb-listener/Chart.yaml
@@ -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: SDNC UEB Listener
+name: ueb-listener
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/sdnc/charts/ueb-listener/requirements.yaml b/kubernetes/sdnc/charts/ueb-listener/requirements.yaml
new file mode 100644
index 0000000000..ce82a2f838
--- /dev/null
+++ b/kubernetes/sdnc/charts/ueb-listener/requirements.yaml
@@ -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/sdnc/charts/ueb-listener/resources/config/dblib.properties b/kubernetes/sdnc/charts/ueb-listener/resources/config/dblib.properties
new file mode 100644
index 0000000000..15cb2182a2
--- /dev/null
+++ b/kubernetes/sdnc/charts/ueb-listener/resources/config/dblib.properties
@@ -0,0 +1,37 @@
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+# dblib.properties
+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}}:{{.Values.mysql.service.internalPort}}/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
+org.onap.ccsdk.sli.jdbc.password=gamma
+org.onap.ccsdk.sli.jdbc.connection.name=sdnctldb01
+org.onap.ccsdk.sli.jdbc.connection.timeout=50
+org.onap.ccsdk.sli.jdbc.request.timeout=100
+org.onap.ccsdk.sli.jdbc.limit.init=10
+org.onap.ccsdk.sli.jdbc.limit.min=10
+org.onap.ccsdk.sli.jdbc.limit.max=20
+org.onap.dblib.connection.recovery=false
diff --git a/kubernetes/sdnc/resources/config/ueb/ueb-listener.properties b/kubernetes/sdnc/charts/ueb-listener/resources/config/ueb-listener.properties
index fb6e26da11..b5c88241c4 100644
--- a/kubernetes/sdnc/resources/config/ueb/ueb-listener.properties
+++ b/kubernetes/sdnc/charts/ueb-listener/resources/config/ueb-listener.properties
@@ -1,12 +1,12 @@
-org.onap.ccsdk.sli.northbound.uebclient.asdc-address=sdc-be.{{.Values.nsPrefix}}:8443
+org.onap.ccsdk.sli.northbound.uebclient.asdc-address=sdc-be.{{.Release.Namespace}}:8443
org.onap.ccsdk.sli.northbound.uebclient.consumer-group=sdc-OpenSource-Env1-sdnc-dockero
org.onap.ccsdk.sli.northbound.uebclient.consumer-id=sdc-COpenSource-Env11-sdnc-dockero
org.onap.ccsdk.sli.northbound.uebclient.environment-name=AUTO
org.onap.ccsdk.sli.northbound.uebclient.password=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
org.onap.ccsdk.sli.northbound.uebclient.user=sdnc
org.onap.ccsdk.sli.northbound.uebclient.sdnc-user=admin
-org.onap.ccsdk.sli.northbound.uebclient.sdnc-passwd=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
-org.onap.ccsdk.sli.northbound.uebclient.asdc-api-base-url=http://sdnhost.{{.Values.nsPrefix}}:8282/restconf/operations/
+org.onap.ccsdk.sli.northbound.uebclient.sdnc-passwd={{.Values.config.odlPassword}}
+org.onap.ccsdk.sli.northbound.uebclient.asdc-api-base-url=http://sdnc.{{.Release.Namespace}}:{{.Values.config.sdncPort}}/restconf/operations/
org.onap.ccsdk.sli.northbound.uebclient.asdc-api-namespace=org:onap:ccsdk
org.onap.ccsdk.sli.northbound.uebclient.spool.incoming=/opt/onap/sdnc/ueb-listener/spool/incoming
org.onap.ccsdk.sli.northbound.uebclient.spool.archive=/opt/onap/sdnc/ueb-listener/spool/archive
@@ -19,3 +19,4 @@ org.onap.ccsdk.sli.northbound.uebclient.keystore-path=
org.onap.ccsdk.sli.northbound.uebclient.keystore-password=
org.onap.ccsdk.sli.northbound.uebclient.xslt-path-list=
org.onap.ccsdk.sli.northbound.uebclient.artifact-map=/opt/onap/sdnc/data/properties/artifact.map
+org.onap.ccsdk.sli.northbound.uebclient.msg-bus-address=message-router.{{.Release.Namespace}},message-router.{{.Release.Namespace}}
diff --git a/kubernetes/sdnc/charts/ueb-listener/templates/configmap.yaml b/kubernetes/sdnc/charts/ueb-listener/templates/configmap.yaml
new file mode 100644
index 0000000000..fd8934b22c
--- /dev/null
+++ b/kubernetes/sdnc/charts/ueb-listener/templates/configmap.yaml
@@ -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/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml b/kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml
new file mode 100644
index 0000000000..5aa1a31116
--- /dev/null
+++ b/kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml
@@ -0,0 +1,95 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.config.mysqlChartName }}
+ - --container-name
+ - {{ .Values.config.sdncChartName }}
+ - --container-name
+ - {{ .Values.config.sdcbeChartName }}
+ - --container-name
+ - {{ .Values.config.msgRouterContainerName }}
+ 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:
+ - command:
+ - /opt/onap/sdnc/ueb-listener/bin/start-ueb-listener.sh
+ name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: PROPERTY_DIR
+ value: "{{ .Values.config.configDir }}"
+ - name: SDNC_CONFIG_DIR
+ value: "{{ .Values.config.configDir }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: {{ .Values.config.configDir }}/dblib.properties
+ name: properties
+ subPath: dblib.properties
+ - mountPath: {{ .Values.config.configDir }}/ueb-listener.properties
+ name: properties
+ subPath: ueb-listener.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 }}
+
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: properties
+ configMap:
+ name: {{ include "common.fullname" . }}
+ defaultMode: 0644
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/sdnc/templates/mysql-configmap.yaml b/kubernetes/sdnc/charts/ueb-listener/templates/service.yaml
index e8c267261c..b2b34d0e08 100644
--- a/kubernetes/sdnc/templates/mysql-configmap.yaml
+++ b/kubernetes/sdnc/charts/ueb-listener/templates/service.yaml
@@ -13,22 +13,16 @@
# limitations under the License.
apiVersion: v1
-kind: ConfigMap
+kind: Service
metadata:
- name: sdnc-mysql
- namespace: "{{ .Values.nsPrefix }}"
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
labels:
- app: mysql
-data:
- master.cnf: |
- # Apply this config only on the master.
- [mysqld]
- log-bin
- [localpathprefix]
- master
- slave.cnf: |
- # Apply this config only on slaves.
- [mysqld]
- super-read-only
- [localpathprefix]
- slave
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: ClusterIP
+ clusterIP: None
diff --git a/kubernetes/sdnc/charts/ueb-listener/values.yaml b/kubernetes/sdnc/charts/ueb-listener/values.yaml
new file mode 100644
index 0000000000..12f675c0e4
--- /dev/null
+++ b/kubernetes/sdnc/charts/ueb-listener/values.yaml
@@ -0,0 +1,84 @@
+# 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/sdnc-ueb-listener-image:1.3-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ sdncPort: 8282
+ mysqlChartName: sdnc-db
+ sdncChartName: sdnc
+ sdcbeChartName: sdc-be
+ msgRouterContainerName: message-router
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+
+# 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:
+ name: sdnc-ueb-listener
+
+mysql:
+ service:
+ name: sdnc-dbhost
+ internalPort: 3306
+
+ingress:
+ enabled: false
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/sdnc/requirements.yaml b/kubernetes/sdnc/requirements.yaml
new file mode 100644
index 0000000000..c458755a85
--- /dev/null
+++ b/kubernetes/sdnc/requirements.yaml
@@ -0,0 +1,24 @@
+# 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'
+ - name: mysql
+ version: ~2.0.0
+ repository: '@local'
+ - name: dgbuilder
+ version: ~2.0.0
+ repository: '@local' \ No newline at end of file
diff --git a/kubernetes/sdnc/resources/config/bin/installSdncDb.sh b/kubernetes/sdnc/resources/config/bin/installSdncDb.sh
new file mode 100644
index 0000000000..e574bd7aec
--- /dev/null
+++ b/kubernetes/sdnc/resources/config/bin/installSdncDb.sh
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# ONAP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
+MYSQL_HOST=${MYSQL_HOST:-{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+
+SDNC_DB_USER=${SDNC_DB_USER:-sdnctl}
+SDNC_DB_PASSWD=${SDNC_DB_PASSWD:-gamma}
+SDNC_DB_DATABASE=${SDN_DB_DATABASE:-sdnctl}
+
+
+# Create tablespace and user account
+mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} mysql <<-END
+CREATE DATABASE ${SDNC_DB_DATABASE};
+CREATE USER '${SDNC_DB_USER}'@'localhost' IDENTIFIED BY '${SDNC_DB_PASSWD}';
+CREATE USER '${SDNC_DB_USER}'@'%' IDENTIFIED BY '${SDNC_DB_PASSWD}';
+GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'localhost' WITH GRANT OPTION;
+GRANT ALL PRIVILEGES ON ${SDNC_DB_DATABASE}.* TO '${SDNC_DB_USER}'@'%' WITH GRANT OPTION;
+commit;
+END
+
+# load schema
+if [ -f ${SDNC_HOME}/data/sdnctl.dump ]
+then
+ mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} sdnctl < ${SDNC_HOME}/data/sdnctl.dump
+fi
+
+for datafile in ${SDNC_HOME}/data/*.data.dump
+do
+ mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} sdnctl < $datafile
+done
+
+# Create VNIs 100-199
+${SDNC_HOME}/bin/addVnis.sh 100 199
diff --git a/kubernetes/sdnc/resources/config/bin/startODL.sh b/kubernetes/sdnc/resources/config/bin/startODL.sh
new file mode 100755
index 0000000000..86f45d3fbd
--- /dev/null
+++ b/kubernetes/sdnc/resources/config/bin/startODL.sh
@@ -0,0 +1,130 @@
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# SDNC
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+function enable_odl_cluster(){
+ if [ -z $SDNC_REPLICAS ]; then
+ echo "SDNC_REPLICAS is not configured in Env field"
+ exit
+ fi
+
+ echo "Installing Opendaylight cluster features"
+ ${ODL_HOME}/bin/client feature:install odl-mdsal-clustering
+ ${ODL_HOME}/bin/client feature:install odl-jolokia
+
+ echo "Update cluster information statically"
+ hm=$(hostname)
+ echo "Get current Hostname ${hm}"
+
+ node=($(echo ${hm} | sed 's/-[0-9]*$//g'))
+ node_index=($(echo ${hm} | awk -F"-" '{print $NF}'))
+ member_offset=1
+
+ if $GEO_ENABLED; then
+ echo "This is a Geo cluster"
+
+ if [ -z $IS_PRIMARY_CLUSTER ] || [ -z $MY_ODL_CLUSTER ] || [ -z $PEER_ODL_CLUSTER ]; then
+ echo "IS_PRIMARY_CLUSTER, MY_ODL_CLUSTER and PEER_ODL_CLUSTER must all be configured in Env field"
+ return
+ fi
+
+ if $IS_PRIMARY_CLUSTER; then
+ PRIMARY_NODE=${MY_ODL_CLUSTER}
+ SECONDARY_NODE=${PEER_ODL_CLUSTER}
+ else
+ PRIMARY_NODE=${PEER_ODL_CLUSTER}
+ SECONDARY_NODE=${MY_ODL_CLUSTER}
+ member_offset=4
+ fi
+
+ node_list="${PRIMARY_NODE} ${SECONDARY_NODE}"
+
+ /opt/onap/sdnc/bin/configure_geo_cluster.sh $((node_index+member_offset)) ${node_list}
+ else
+ echo "This is a local cluster"
+
+ node_list="${node}-0.{{.Values.service.name}}-cluster.{{.Release.Namespace}}";
+
+ for ((i=1;i<${SDNC_REPLICAS};i++));
+ do
+ node_list="${node_list} ${node}-$i.{{.Values.service.name}}-cluster.{{.Release.Namespace}}"
+ done
+
+ /opt/opendaylight/current/bin/configure_cluster.sh $((node_index+1)) ${node_list}
+ fi
+}
+
+
+# Install SDN-C platform components if not already installed and start container
+
+ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
+ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U}
+SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
+CCSDK_HOME=${CCSDK_HOME:-/opt/onap/ccsdk}
+SLEEP_TIME=${SLEEP_TIME:-120}
+MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
+MYSQL_HOST=${MYSQL_HOST:-{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}}
+ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false}
+GEO_ENABLED=${GEO_ENABLED:-false}
+
+#
+# Wait for database to init properly
+#
+echo "Waiting for mysql"
+until mysql -h ${MYSQL_HOST} -u root -p${MYSQL_PASSWD} mysql &> /dev/null
+do
+ printf "."
+ sleep 1
+done
+echo -e "\nmysql ready"
+
+if [ ! -f ${SDNC_HOME}/.installed ]
+then
+ echo "Installing SDNC database"
+ ${SDNC_HOME}/bin/installSdncDb.sh
+ echo "Installing SDN-C keyStore"
+ ${SDNC_HOME}/bin/addSdncKeyStore.sh
+ echo "Starting OpenDaylight"
+ ${CCSDK_HOME}/bin/installOdlHostKey.sh
+ ${ODL_HOME}/bin/start
+ echo "Waiting ${SLEEP_TIME} seconds for OpenDaylight to initialize"
+ sleep ${SLEEP_TIME}
+ echo "Installing SDN-C platform features"
+ ${SDNC_HOME}/bin/installFeatures.sh
+ if [ -x ${SDNC_HOME}/svclogic/bin/install.sh ]
+ then
+ echo "Installing directed graphs"
+ ${SDNC_HOME}/svclogic/bin/install.sh
+ fi
+
+ if $ENABLE_ODL_CLUSTER ; then enable_odl_cluster ; fi
+
+ echo "Restarting OpenDaylight"
+ ${ODL_HOME}/bin/stop
+
+ echo "Waiting 60 seconds for OpenDaylight stop to complete"
+ sleep 60
+
+ echo "Installed at `date`" > ${SDNC_HOME}/.installed
+fi
+
+exec ${ODL_HOME}/bin/karaf
+
diff --git a/kubernetes/sdnc/resources/config/conf/aaiclient.properties b/kubernetes/sdnc/resources/config/conf/aaiclient.properties
index 81f63ecdde..c925bfd07f 100755
--- a/kubernetes/sdnc/resources/config/conf/aaiclient.properties
+++ b/kubernetes/sdnc/resources/config/conf/aaiclient.properties
@@ -2,15 +2,15 @@
# ============LICENSE_START=======================================================
# openECOMP : SDN-C
# ================================================================================
-# Copyright (C) 2017 ONAP Intellectual Property. All rights
+# Copyright (C) 2018 ONAP 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.
@@ -26,219 +26,52 @@
#
# Certificate keystore and truststore
#
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks
-org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=adminadmin
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust=/opt/onap/sdnc/data/stores/truststoreONAPall.jks
+org.onap.ccsdk.sli.adaptors.aai.ssl.trust.psswd=changeit
org.onap.ccsdk.sli.adaptors.aai.host.certificate.ignore=true
-org.onap.ccsdk.sli.adaptors.aai.client.name=AAI
-org.onap.ccsdk.sli.adaptors.aai.client.psswd=AAI
+org.onap.ccsdk.sli.adaptors.aai.client.name=SDNC
+org.onap.ccsdk.sli.adaptors.aai.client.psswd=SDNC
org.onap.ccsdk.sli.adaptors.aai.application=openECOMP
-#connection.timeout=1000
-#read.timeout=2000
-
#
# Configuration file for A&AI Client
#
-org.onap.ccsdk.sli.adaptors.aai.uri=https://aai-service.{{.Values.nsPrefix}}:8443
-
+org.onap.ccsdk.sli.adaptors.aai.uri=https://aai.{{.Release.Namespace}}:8443
+connection.timeout=60000
+read.timeout=60000
# query
-org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v11/search/sdn-zone-query
-org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v11/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
-org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v11/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
+org.onap.ccsdk.sli.adaptors.aai.path.query=/aai/v13/search/sdn-zone-query
+org.onap.ccsdk.sli.adaptors.aai.query.nodes=/aai/v13/search/nodes-query?search-node-type={node-type}&filter={entity-identifier}:EQUALS:{entity-name}
+org.onap.ccsdk.sli.adaptors.aai.query.generic=/aai/v13/search/generic-query?key={identifier}:{value}&start-node-type={start-node-type}&include=complex&depth=3
# named query
org.onap.ccsdk.sli.adaptors.aai.query.named=/aai/search/named-query
-
#update
-org.onap.ccsdk.sli.adaptors.aai.update=/aai/v11/actions/update
-
-# vce
-org.onap.ccsdk.sli.adaptors.aai.path.vce =/aai/v11/network/vces/vce/
-org.onap.ccsdk.sli.adaptors.aai.path.vces=/aai/v11/network/vces/
-
-# vpe
-org.onap.ccsdk.sli.adaptors.aai.path.vpe =/aai/v11/network/vpes/vpe/
-org.onap.ccsdk.sli.adaptors.aai.path.vpes=/aai/v11/network/vpes/
-
-# customer
-org.onap.ccsdk.sli.adaptors.aai.path.customer=/aai/v11/business/customers/customer/{customer-id}
-
-# service subscription
-org.onap.ccsdk.sli.adaptors.aai.path.service.subscription=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
-
-# service instance
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst=/aai/v11/business/customers/customer/{customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances
-org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v11/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
-org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
-
-# complex
-org.onap.ccsdk.sli.adaptors.aai.path.complexes=/aai/v11/cloud-infrastructure/complexes
-org.onap.ccsdk.sli.adaptors.aai.path.complex=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}
-
-# tenant
-org.onap.ccsdk.sli.adaptors.aai.path.tenant=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
-org.onap.ccsdk.sli.adaptors.aai.path.tenant.query=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant?tenant-name={tenant-name}
-
-# vservers
-org.onap.ccsdk.sli.adaptors.aai.path.vservers=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/
-org.onap.ccsdk.sli.adaptors.aai.path.vserver=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
-
-# vpls-pe
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pes=/aai/v11/network/vpls-pes/
-org.onap.ccsdk.sli.adaptors.aai.path.vpls.pe =/aai/v11/network/vpls-pes/vpls-pe/
+org.onap.ccsdk.sli.adaptors.aai.update=/aai/v13/actions/update
-# ctag-pool
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pools=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools
-org.onap.ccsdk.sli.adaptors.aai.path.ctag.pool=/aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
-
-#
-#-------------- 1510 ----------------------
-#
-
-# pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pservers=/aai/v11/cloud-infrastructure/pservers
-org.onap.ccsdk.sli.adaptors.aai.path.pserver=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}
-
-# generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnfs=/aai/v11/network/generic-vnfs
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}
-
-# dvs-switch
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitches=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches
-org.onap.ccsdk.sli.adaptors.aai.path.dvsswitch=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
-
-# L3 Networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3networks=/aai/v11/network/l3-networks
-org.onap.ccsdk.sli.adaptors.aai.path.l3network=/aai/v11/network/l3-networks/l3-network/{network-id}
-org.onap.ccsdk.sli.adaptors.aai.path.l3network.query.name=/aai/v11/network/l3-networks/l3-network?network-name={network-name}
+# UBB Notify
+org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v13/actions/notify
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=<%= @ubbUri %>/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
+org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=<%= @ubbUri %>/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
# P-Interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
-org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
-
-# Physical Link
-org.onap.ccsdk.sli.adaptors.aai.path.physical.links=/aai/v11/network/physical-links
-org.onap.ccsdk.sli.adaptors.aai.path.physical.link=/aai/v11/network/physical-links/physical-link/{link-name}
-
-# VPN Bindings
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.bindings=/aai/v11/network/vpn-bindings/
-org.onap.ccsdk.sli.adaptors.aai.path.vpn.binding=/aai/v11/network/vpn-bindings/vpn-binding/{vpn-id}
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterfaces=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces
+org.onap.ccsdk.sli.adaptors.aai.path.pserver.pinterface=/aai/v13/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
# VNF IMAGES
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v11/service-design-and-creation/vnf-images
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v11/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v11/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
-
-# UBB Notify
-org.onap.ccsdk.sli.adaptors.aai.path.notify=/aai/v11/actions/notify
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.fqdn=https://aai-service.{{.Values.nsPrefix}}:8443/restconf/config/L3SDN-API:services/layer3-service-list/{service-instance-id}
-org.onap.ccsdk.sli.adaptors.aai.notify.selflink.avpn=https://aai-service.{{.Values.nsPrefix}}:8543/restconf/config/L3AVPN-EVC-API:services/service-list/{service-instance-id}/service-data/avpn-logicalchannel-information
-
-# Service
-org.onap.ccsdk.sli.adaptors.aai.path.service=/aai/v11/service-design-and-creation/services/service/{service-id}
-org.onap.ccsdk.sli.adaptors.aai.path.services=/aai/v11/service-design-and-creation/services
-
-
-#
-#-------------- 1604 ----------------------
-#
-
-# VNFC
-org.onap.ccsdk.sli.adaptors.aai.path.vnfc=/aai/v11/network/vnfcs/vnfc/{vnfc-name}
-
-# class-of-service
-org.onap.ccsdk.sli.adaptors.aai.path.class.of.service=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos-id}
-
-# site-pair
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
-
-# routing-instance
-org.onap.ccsdk.sli.adaptors.aai.path.routing.instance=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
-
-# site-pair-set
-org.onap.ccsdk.sli.adaptors.aai.path.site.pair.set=/aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}
-
-# license key resource
-org.onap.ccsdk.sli.adaptors.aai.path.license.acquire=/aai/v11/actions/assignment/license-management/assignment-group-uuid/{assignment-group-uuid}
-org.onap.ccsdk.sli.adaptors.aai.path.license=/aai/v11/license-management/license-key-resources/license-key-resource/{att-uuid}
-
-# logical-link
-org.onap.ccsdk.sli.adaptors.aai.path.logical.link =/aai/v11/network/logical-links/logical-link/{link-name}
-
-# virtual-data-center
-org.onap.ccsdk.sli.adaptors.aai.path.virtual.data.center=/aai/v11/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
-
-# wan-connector
-org.onap.ccsdk.sli.adaptors.aai.path.wan.connector=/aai/v11/business/connectors/connector/{resource-instance-id}
-
-# l-interface
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface=/aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# l-interface pnf
-org.onap.ccsdk.sli.adaptors.aai.path.lag.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.p.interface.l.interface.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# subinterface
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.lag.interface.subinterface=/aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{lag-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-org.onap.ccsdk.sli.adaptors.aai.path.pnf.p.interface.l.interface=/aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{p-interface.interface-name}/l-interfaces/l-interface/{interface-name}
-
-# vlans
-org.onap.ccsdk.sli.adaptors.aai.path.vlan=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.vlan=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.images=/aai/v13/service-design-and-creation/vnf-images
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image=/aai/v13/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v13/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
-# l3-interface-ipv4-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# l3-interface-ipv6-address-list
-org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-
-# ipsec-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.ipsec.configuration=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
-
-# vig server
-org.onap.ccsdk.sli.adaptors.aai.path.vig.server=/aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
-
-# l3-network
-org.onap.ccsdk.sli.adaptors.aai.path.l3.network=/aai/v11/network/l3-networks/l3-network/{network-id}
-
-# subnet
-org.onap.ccsdk.sli.adaptors.aai.path.subnet=/aai/v11/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
-
-# multicast-configuration
-org.onap.ccsdk.sli.adaptors.aai.path.multicast.configuration=/aai/v11/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.vlan.ipv4.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.vlan.ipv4.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-
-# org.onap.ccsdk.sli.adaptors.aai.path.l.interface.ipv6.address.list
-org.onap.ccsdk.sli.adaptors.aai.path.l3-interface.ipv6.address.list=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-
-# volume.group
-org.onap.ccsdk.sli.adaptors.aai.path.volume.group=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
-
-#cloud region
-org.onap.ccsdk.sli.adaptors.aai.path.cloud.region=/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
-
-# vf-module
-org.onap.ccsdk.sli.adaptors.aai.path.vf.module=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
-
-# l-interface through generic-vnf
-org.onap.ccsdk.sli.adaptors.aai.path.generic.vnf.linterface=/aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
-
-# network-policy
-org.onap.ccsdk.sli.adaptors.aai.path.network.policy=/aai/v11/network/network-policies/network-policy/{network-policy-id}
+# service instance
+org.onap.ccsdk.sli.adaptors.aai.path.svcinst.query=/aai/v13/search/generic-query?key=service-instance.service-instance-id:{svc-instance-id}&start-node-type=service-instance&include=service-instance
+org.onap.ccsdk.sli.adaptors.aai.path.service.instance=/aai/v13/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
-# pnf
-org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}
+# VNF IMAGES QUERY
+org.onap.ccsdk.sli.adaptors.aai.path.vnf.image.query=/aai/v13/service-design-and-creation/vnf-images/vnf-image?application={application_model}&application-vendor={application_vendor}
#
# Formatting
@@ -246,4 +79,4 @@ org.onap.ccsdk.sli.adaptors.aai.path.pnf=/aai/v11/network/pnfs/pnf/{pnf-name}
org.onap.ccsdk.sli.adaptors.aai.param.format=filter=%s:%s
org.onap.ccsdk.sli.adaptors.aai.param.vnf_type=vnf-type
org.onap.ccsdk.sli.adaptors.aai.param.physical.location.id=physical-location-id
-org.onap.ccsdk.sli.adaptors.aai.param.service.type=service-type
+org.onap.ccsdk.sli.adaptors.aai.param.service.type=service-type \ No newline at end of file
diff --git a/kubernetes/sdnc/resources/config/conf/dblib.properties b/kubernetes/sdnc/resources/config/conf/dblib.properties
new file mode 100644
index 0000000000..362726a6d8
--- /dev/null
+++ b/kubernetes/sdnc/resources/config/conf/dblib.properties
@@ -0,0 +1,32 @@
+###
+# ============LICENSE_START=======================================================
+# Copyright (C) 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=========================================================
+###
+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}}:{{.Values.mysql.service.internalPort}}/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
+org.onap.ccsdk.sli.jdbc.password=gamma
+org.onap.ccsdk.sli.jdbc.connection.name=sdnctldb01
+org.onap.ccsdk.sli.jdbc.connection.timeout=50
+org.onap.ccsdk.sli.jdbc.request.timeout=100
+org.onap.ccsdk.sli.jdbc.limit.init=10
+org.onap.ccsdk.sli.jdbc.limit.min=10
+org.onap.ccsdk.sli.jdbc.limit.max=20
+org.onap.dblib.connection.recovery=false
diff --git a/kubernetes/sdnc/resources/config/conf/lcm-dg.properties b/kubernetes/sdnc/resources/config/conf/lcm-dg.properties
new file mode 100644
index 0000000000..625cf63e03
--- /dev/null
+++ b/kubernetes/sdnc/resources/config/conf/lcm-dg.properties
@@ -0,0 +1,18 @@
+ansible.agenturl=http://{{.Values.config.ansibleServiceName}}:{{.Values.config.ansiblePort}}/Dispatch
+ansible.user=sdnc
+ansible.password=sdnc
+ansible.lcm.localparameters=
+ansible.nodelist=
+ansible.timeout=60
+ansible.version=0.00
+lcm.upgrade-pre-check.playbookname=ansible_precheck
+lcm.upgrade-post-check.playbookname=ansible_postcheck
+lcm.upgrade-software.playbookname=ansible_upgradesw
+restapi.templateDir=/opt/onap/sdnc/restapi/templates
+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=admin
+lcm.dmaap.password=admin
+lcm.dmaap.version=1.0
+lcm.dmaap.partition=SDNC-LCM-WRITE
+lcm.dmaap.type=response \ No newline at end of file
diff --git a/kubernetes/sdnc/resources/config/conf/svclogic.properties b/kubernetes/sdnc/resources/config/conf/svclogic.properties
new file mode 100644
index 0000000000..99f6cf84b7
--- /dev/null
+++ b/kubernetes/sdnc/resources/config/conf/svclogic.properties
@@ -0,0 +1,27 @@
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+org.onap.ccsdk.sli.dbtype = jdbc
+org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.database = sdnctl
+org.onap.ccsdk.sli.jdbc.user = sdnctl
+org.onap.ccsdk.sli.jdbc.password = gamma
+
diff --git a/kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg b/kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg
index 50818a3d18..7b6563656b 100644
--- a/kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg
+++ b/kubernetes/sdnc/resources/config/log/org.ops4j.pax.logging.cfg
@@ -1,57 +1,151 @@
-################################################################################
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-################################################################################
-
-# Root logger
-log4j.rootLogger=INFO, async, osgi:*
-log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer
-
-# Log Directory
-logDir=/var/log/onap
-componentName=sdnc
-logDirectory=${logDir}/${componentName}
-maxFileSize=100MB
-maxBackupIndex=20
-
-# CONSOLE appender not used by default
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd'T'HH:mm:ss.SSS}\t%-16.16t\t%-5.5p\t%c{36}\t%X{bundle.id} - %X{bundle.name} - %X{bundle.version}\t%m%n
-
-# Async appender forwarding to file appender
-log4j.appender.async=org.apache.log4j.AsyncAppender
-log4j.appender.async.appenders=out
-
-# File appender
-log4j.appender.out=org.apache.log4j.RollingFileAppender
-log4j.appender.out.layout=org.apache.log4j.xml.XMLLayout
-log4j.appender.out.layout.Properties=true
-log4j.appender.out.file=${logDirectory}/karaf.log
-log4j.appender.out.append=true
-log4j.appender.out.maxFileSize=${maxFileSize}
-log4j.appender.out.maxBackupIndex=${maxBackupIndex}
-
-# Sift appender
-log4j.appender.sift=org.apache.log4j.sift.MDCSiftingAppender
-log4j.appender.sift.key=bundle.name
-log4j.appender.sift.default=karaf
-log4j.appender.sift.appender=org.apache.log4j.RollingFileAppender
-log4j.appender.sift.appender.layout=org.apache.log4j.xml.XMLLayout
-log4j.appender.sift.appender.layout.Properties=true
-log4j.appender.sift.appender.file=${logDirectory}/$\\{bundle.name\\}.log
-log4j.appender.sift.appender.append=true
+################################################################################
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+################################################################################
+
+# Root logger
+log4j.rootLogger=INFO, async, osgi:*
+log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer
+
+maxFileSize=100MB
+maxBackupIndex=20
+logDir=/var/log/onap
+componentName=sdnc
+logDirectory=${logDir}/${componentName}
+karafLogName=karaf
+errorLogName=error
+metricsLogName=metrics
+auditLogName=audit
+debugLogName=debug
+
+
+# CONSOLE appender not used by default
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd'T'HH:mm:ss.SSS}\t%-16.16t\t%-5.5p\t%c{36}\t%X{bundle.id} - %X{bundle.name} - %X{bundle.version}\t%m%n
+
+# Async appender forwarding to file appender
+log4j.appender.async=org.apache.log4j.AsyncAppender
+log4j.appender.async.appenders=out
+
+# File appender
+log4j.appender.out=org.apache.log4j.RollingFileAppender
+log4j.appender.out.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.out.layout.Properties=true
+log4j.appender.out.file=${logDirectory}/${karafLogName}.log
+log4j.appender.out.append=true
+log4j.appender.out.maxFileSize=${maxFileSize}
+log4j.appender.out.maxBackupIndex=${maxBackupIndex}
+
+# Sift appender
+log4j.appender.sift=org.apache.log4j.sift.MDCSiftingAppender
+log4j.appender.sift.key=bundle.name
+log4j.appender.sift.default=karaf
+log4j.appender.sift.appender=org.apache.log4j.RollingFileAppender
+log4j.appender.sift.appender.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.sift.appender.layout.Properties=true
+log4j.appender.sift.appender.file=${logDirectory}/$\\{bundle.name\\}.log
+log4j.appender.sift.appender.append=true
+
+
+
+log4j.category.org.opendaylight.controller.netconf.persist.impl.osgi.ConfigPusherImpl=DEBUG
+log4j.category.org.opendaylight.controller.netconf.persist.impl.osgi.ConfigPersisterActivator=DEBUG
+
+
+#ECOMP Debug appender
+log4j.appender.debug=org.apache.log4j.RollingFileAppender
+log4j.appender.debug.key=bundle.name
+log4j.appender.debug.default=karaf
+log4j.appender.debug.appName=EELFDebug
+log4j.appender.debug.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.debug.layout.Properties=true
+log4j.appender.debug.file=${logDirectory}/${debugLogName}.log
+log4j.appender.debug.append=true
+log4j.appender.debug.maxFileSize=${maxFileSize}
+log4j.appender.debug.maxBackupIndex=${maxBackupIndex}
+#log4j.appender.debug.filter.f1=org.apache.log4j.varia.LevelRangeFilter
+#log4j.appender.debug.filter.f1.LevelMax=WARN
+#log4j.appender.debug.filter.f1.LevelMin=TRACE
+
+
+#Error appender
+log4j.appender.error=org.apache.log4j.RollingFileAppender
+log4j.appender.error.appName=EELFError
+log4j.appender.error.File=${logDirectory}/${errorLogName}.log
+log4j.appender.error.Threshold=ERROR
+log4j.appender.error.maxFileSize=${maxFileSize}
+log4j.appender.error.maxBackupIndex=${maxBackupIndex}
+log4j.appender.error.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.error.layout.Properties=true
+
+#Metrics appender
+log4j.appender.metric=org.apache.log4j.RollingFileAppender
+log4j.appender.metric.appName=EELFMetrics
+log4j.appender.metric.File=${logDirectory}/${metricsLogName}.log
+log4j.appender.metric.maxFileSize=${maxFileSize}
+log4j.appender.metric.maxBackupIndex=${maxBackupIndex}
+log4j.appender.metric.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.metric.layout.Properties=true
+
+#Audit appender
+log4j.appender.audit=org.apache.log4j.RollingFileAppender
+log4j.appender.audit.appName=EELFAudit
+log4j.appender.audit.File=${logDirectory}/${auditLogName}.log
+log4j.appender.audit.maxFileSize=${maxFileSize}
+log4j.appender.audit.maxBackupIndex=${maxBackupIndex}
+log4j.appender.audit.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.audit.layout.Properties=true
+
+#Loggers
+#Routing of all messages from root logger
+log4j.logger.com.att=TRACE, debug, error
+#Store to the same log file messages from upper level appender or not
+log4j.additivity.com.att=false
+
+#EELFManager loggers
+#EELF parent logger
+log4j.logger.com.att.eelf=TRACE, debug
+log4j.additivity.com.att.eelf=false
+
+#Audit logger routing
+log4j.logger.com.att.eelf.audit=DEBUG, audit
+log4j.additivity.com.att.eelf.audit=false
+
+#Metric logger routing
+log4j.logger.com.att.eelf.metrics=DEBUG, metric
+log4j.additivity.com.att.eelf.metrics=false
+
+#Performance logger routing
+log4j.logger.com.att.eelf.perf=DEBUG, metric
+log4j.additivity.com.att.eelf.perf=false
+
+#Server logger routing
+log4j.logger.com.att.eelf.server=DEBUG, debug
+log4j.additivity.com.att.eelf.server=false
+
+#Policy logger routing
+log4j.logger.com.att.eelf.policy=DEBUG, debug
+log4j.additivity.com.att.eelf.policy=false
+
+#Error logger routing
+log4j.logger.com.att.eelf.error=DEBUG, error
+log4j.additivity.com.att.eelf.error=false
+
+#Debug logger routing
+log4j.logger.com.att.eelf.debug=DEBUG, debug
+log4j.additivity.com.att.eelf.debug=false
diff --git a/kubernetes/sdnc/resources/geo/bin/sdnc.cluster b/kubernetes/sdnc/resources/geo/bin/sdnc.cluster
new file mode 100755
index 0000000000..d59718fa27
--- /dev/null
+++ b/kubernetes/sdnc/resources/geo/bin/sdnc.cluster
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+OOM_HOME=${OOM_HOME:-$HOME}
+
+if ! [ "$(command -v jq)" ]; then
+ echo "Error: jq is not installed."
+ echo "use: sudo apt install jq"
+ exit 1
+fi
+
+IS_PRIMARY_CLUSTER=`./sdnc.isPrimaryCluster`
+
+case $IS_PRIMARY_CLUSTER in
+true)
+ MEMBER_NUMBER=1
+ ;;
+false)
+ MEMBER_NUMBER=4
+ ;;
+*)
+ echo "Error: isPrimaryODLCluster not defined in ${OOM_HOME}/oom/kubernetes/sdnc/values.yaml."
+ exit 1
+ ;;
+esac
+
+for pod_number in {0..2}
+do
+ curl "http://localhost:3026$((${pod_number} + 1))" > /dev/null 2>&1
+ if [ "$?" = "7" ]; then
+ continue
+ fi
+
+ VOTING_RESULT=`curl -u admin:admin -H "Content-Type: application/json" -H "Accept: application/json" -X GET http://localhost:3026$((${pod_number} + 1))/jolokia/read/org.opendaylight.controller:Category=Shards,name=member-$((${MEMBER_NUMBER} + ${pod_number}))-shard-default-config,type=DistributedConfigDatastore 2>/dev/null | jq '.value.Voting'`
+
+ case $VOTING_RESULT in
+ true)
+ echo "active"
+ exit 0
+ ;;
+ false)
+ echo "standby"
+ exit 0
+ ;;
+ *)
+ echo "Error: Voting status could not be determined."
+ exit 1
+ ;;
+ esac
+done
+
+echo "Error: Voting status could not be determined."
+exit 1
diff --git a/kubernetes/sdnc/resources/geo/bin/sdnc.failover b/kubernetes/sdnc/resources/geo/bin/sdnc.failover
new file mode 100755
index 0000000000..961a5cb5cf
--- /dev/null
+++ b/kubernetes/sdnc/resources/geo/bin/sdnc.failover
@@ -0,0 +1,65 @@
+#!/usr/bin/perl -s
+use strict;
+
+my $keyWord_standby = "standby";
+my $keyWord_active = "active";
+my $keyWord_true = "true";
+my $keyWord_false = "false";
+my $keyWord_success = "success";
+my $keyWord_failure = "failure";
+my $file_cluster = "sdnc.cluster";
+my $file_switchVoting = "switchVoting.sh";
+my $file_isPrimaryCluster = "sdnc.isPrimaryCluster";
+
+if ((!(-e $file_cluster)) || (!(-e $file_switchVoting))|| (!(-e $file_isPrimaryCluster))) {
+ # file not exist.
+ print qq|$keyWord_failure\n|;
+ exit 1;
+}
+
+my $roleRes = qx("./$file_isPrimaryCluster");
+my $clusterRes = qx("./$file_cluster");
+
+if ( index ($clusterRes, $keyWord_standby) != -1) {
+ # We are at standby side
+ if ( index ($roleRes, $keyWord_false) != -1) {
+ # We are at Secondary cluster
+ sub_activate_secondary();
+ } elsif ( index ($roleRes, $keyWord_true) != -1) {
+ # We are at Primary cluster
+ sub_activate_primary();
+ } else {
+ # Error.
+ print qq|$keyWord_failure\n|;
+ exit 1;
+ }
+} elsif ( index ($clusterRes, $keyWord_active) != -1) {
+ # We are at active side
+ if ( index ($roleRes, $keyWord_false) != -1) {
+ # We are at Secondary cluster
+ sub_activate_primary();
+ } elsif ( index ($roleRes, $keyWord_true) != -1) {
+ # We are at Primary cluster
+ sub_activate_secondary();
+ } else {
+ # Error.
+ print qq|$keyWord_failure\n|;
+ exit 1;
+ }
+} else {
+ # Error.
+ print qq|$keyWord_failure\n|;
+ exit 1;
+}
+
+sub sub_activate_primary {
+ #Switching voting in Primary cluster
+ system("./$file_switchVoting primary");
+ print qq|$keyWord_success\n|;
+}
+
+sub sub_activate_secondary {
+ #Switching voting in secondary cluster
+ system("./$file_switchVoting secondary");
+ print qq|$keyWord_success\n|;
+}
diff --git a/kubernetes/sdnc/resources/geo/bin/sdnc.isPrimaryCluster b/kubernetes/sdnc/resources/geo/bin/sdnc.isPrimaryCluster
new file mode 100755
index 0000000000..77fc65fe39
--- /dev/null
+++ b/kubernetes/sdnc/resources/geo/bin/sdnc.isPrimaryCluster
@@ -0,0 +1,19 @@
+#!/bin/bash
+
+OOM_HOME=${OOM_HOME:-$HOME}
+
+IS_PRIMARY_CLUSTER=`awk '/isPrimaryCluster/ {print $2}' ${OOM_HOME}/oom/kubernetes/sdnc/values.yaml`
+
+if [ "$?" -eq "2" ]; then
+ echo "Make sure you are ubuntu user." >&2
+fi
+
+case $IS_PRIMARY_CLUSTER in
+true|false)
+ echo $IS_PRIMARY_CLUSTER
+ ;;
+*)
+ echo "NOT CLUSTERED"
+ exit 1
+ ;;
+esac
diff --git a/kubernetes/sdnc/resources/geo/bin/switchVoting.sh b/kubernetes/sdnc/resources/geo/bin/switchVoting.sh
new file mode 100755
index 0000000000..27e4ead99d
--- /dev/null
+++ b/kubernetes/sdnc/resources/geo/bin/switchVoting.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+function usage()
+{
+ echo usage: switchVoting.sh primary\|secondary
+ exit 1
+}
+
+if [ $# -ne 1 ]; then
+ usage
+fi
+
+partition=$1
+
+if [ "$partition" == "primary" ]; then
+ curl -u admin:{{.Values.config.odlPassword}} -H "Content-Type: application/json" -H "Accept: application/json" -X POST http://localhost:30202/restconf/operations/cluster-admin:change-member-voting-states-for-all-shards -d '{ "input" : { "member-voting-state" : [ { "member-name" : "member-1", "voting":true}, { "member-name" : "member-2", "voting":true}, { "member-name" : "member-3", "voting":true},{ "member-name" : "member-4", "voting":false},{ "member-name" : "member-5", "voting":false},{ "member-name" : "member-6", "voting":false}] } }' > switch_voting_resp.json 2>/dev/null
+ echo "" >> switch_voting_resp.json
+ exit 0
+fi
+
+if [ "$partition" == "secondary" ]; then
+ curl -u admin:{{.Values.config.odlPassword}} -H "Content-Type: application/json" -H "Accept: application/json" -X POST http://localhost:30202/restconf/operations/cluster-admin:change-member-voting-states-for-all-shards -d '{ "input" : { "member-voting-state" : [ { "member-name" : "member-1", "voting":false}, { "member-name" : "member-2", "voting":false}, { "member-name" : "member-3", "voting":false},{ "member-name" : "member-4", "voting":true},{ "member-name" : "member-5", "voting":true},{ "member-name" : "member-6", "voting":true}] } }' > switch_voting_resp.json 2>/dev/null
+ echo "" >> switch_voting_resp.json
+ exit 0
+fi
+
+usage
diff --git a/kubernetes/sdnc/templates/all-services.yaml b/kubernetes/sdnc/templates/all-services.yaml
deleted file mode 100644
index 14d7b01a59..0000000000
--- a/kubernetes/sdnc/templates/all-services.yaml
+++ /dev/null
@@ -1,200 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncSdncDbhost }}
-apiVersion: v1
-kind: Service
-metadata:
- name: dbhost
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dbhost
-spec:
- ports:
- - port: 3306
- selector:
- app: sdnc-dbhost
- clusterIP: None
----
-# Client service for connecting to any MySQL instance for reads.
-# Only master: sdnc-dbhost-0 accepts the write request.
-apiVersion: v1
-kind: Service
-metadata:
- name: dbhost-read
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dbhost
-spec:
- ports:
- - name: sdnc-dbhost
- port: 3306
- selector:
- app: sdnc-dbhost
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnctldb01
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dbhost
-spec:
- ports:
- - port: 3306
- selector:
- app: sdnc-dbhost
- clusterIP: None
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnctldb02
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dbhost
-spec:
- ports:
- - port: 3306
- selector:
- app: sdnc-dbhost
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableSdncSdnc }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnc-dgbuilder
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-dgbuilder
-spec:
- ports:
- - name: "sdnc-dgbuilder-port"
- port: 3000
- targetPort: 3100
- nodePort: {{ .Values.nodePortPrefix }}03
- type: NodePort
- selector:
- app: sdnc-dgbuilder
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnhost
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdnc",
- "version": "v1",
- "url": "/",
- "protocol": "REST",
- "port": "8282",
- "visualRange":"1",
- "path": "/"
- }
- ]'
-spec:
- ports:
- - name: "sdnc-port-8181"
- port: 8282
- targetPort: 8181
- nodePort: {{ .Values.nodePortPrefix }}02
- - name: "sdnc-port-8101"
- port: 8201
- targetPort: 8101
- nodePort: {{ .Values.nodePortPrefix }}08
- - name: "sdnc-jolokia-port-8080"
- port: 8280
- targetPort: 8080
- nodePort: {{ .Values.nodePortPrefix }}46
- type: NodePort
- selector:
- app: sdnc
----
-kind: Service
-apiVersion: v1
-metadata:
- name: nfs-provisioner
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: nfs-provisioner
-spec:
- ports:
- - name: nfs
- port: 2049
- - name: mountd
- port: 20048
- - name: rpcbind
- port: 111
- - name: rpcbind-udp
- port: 111
- protocol: UDP
- selector:
- app: nfs-provisioner
-#{{ end }}
-#{{ if not .Values.disableSdncSdncPortal }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnc-portal
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc-portal
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "sdnc-portal",
- "version": "v1",
- "url": "/",
- "protocol": "UI",
- "port": "8843",
- "visualRange":"0|1"
- }
- ]'
-spec:
- ports:
- - name: "sdnc-portal-port"
- port: 8843
- nodePort: {{ .Values.nodePortPrefix }}01
- type: NodePort
- selector:
- app: sdnc-portal
-#{{ end }}
-#{{ if .Values.enableODLCluster }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnhost-cluster
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: sdnc
- annotations:
- service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
-spec:
- ports:
- - name: "sdnc-cluster-port"
- port: 2550
- clusterIP: None
- selector:
- app: sdnc
- sessionAffinity: None
- type: ClusterIP
-#{{ end }}
diff --git a/kubernetes/sdnc/templates/configmap.yaml b/kubernetes/sdnc/templates/configmap.yaml
new file mode 100644
index 0000000000..e9498cb8dc
--- /dev/null
+++ b/kubernetes/sdnc/templates/configmap.yaml
@@ -0,0 +1,45 @@
+# 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" . }}-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/log4j/*").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 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-bin
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/bin/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-properties
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/conf/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/sdnc/templates/db-statefulset.yaml b/kubernetes/sdnc/templates/db-statefulset.yaml
deleted file mode 100644
index 29d592a6a7..0000000000
--- a/kubernetes/sdnc/templates/db-statefulset.yaml
+++ /dev/null
@@ -1,220 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncSdncDbhost }}
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
- name: sdnc-dbhost
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- serviceName: "dbhost"
- replicas: {{ .Values.numberOfDbReplicas }}
- selector:
- matchLabels:
- app: sdnc-dbhost
- template:
- metadata:
- labels:
- app: sdnc-dbhost
- name: sdnc-dbhost
- spec:
- initContainers:
- - name: init-mysql
- image: {{ .Values.image.mysql }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- command:
- - bash
- - "-c"
- - |
- set -ex
- # Generate mysql server-id from pod ordinal index.
- [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
- ordinal=${BASH_REMATCH[1]}
- echo BASH_REMATCH=${BASH_REMATCH}
- echo [mysqld] > /mnt/conf.d/server-id.cnf
- # Add an offset to avoid reserved server-id=0 value.
- echo server-id=$((100 + $ordinal)) >> /mnt/conf.d/server-id.cnf
- # Copy appropriate conf.d files from config-map to emptyDir.
- if [[ $ordinal -eq 0 ]]; then
- cp /mnt/config-map/master.cnf /mnt/conf.d/
- else
- cp /mnt/config-map/slave.cnf /mnt/conf.d/
- fi
- volumeMounts:
- - name: conf
- mountPath: /mnt/conf.d
- - name: config-map
- mountPath: /mnt/config-map
- - name: clone-mysql
- image: {{ .Values.image.xtrabackup }}
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- command:
- - bash
- - "-c"
- - |
- set -ex
- # Skip the clone if data already exists.
- [[ -d /var/lib/mysql/mysql ]] && exit 0
- # Skip the clone on master (ordinal index 0).
- [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
- ordinal=${BASH_REMATCH[1]}
- echo ${BASH_REMATCH}
- [[ $ordinal -eq 0 ]] && exit 0
- # Clone data from previous peer.
- ncat --recv-only sdnc-dbhost-$(($ordinal-1)).dbhost.{{ .Values.nsPrefix }} 3307 | xbstream -x -C /var/lib/mysql
- # Prepare the backup.
- xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --prepare --target-dir=/var/lib/mysql
- ls -l /var/lib/mysql
- volumeMounts:
- - name: sdnc-data
- mountPath: /var/lib/mysql
-#{{ if not .Values.disableNfsProvisioner }}
- subPath: mysql
-#{{ end }}
- - name: conf
- mountPath: /etc/mysql/conf.d
- containers:
- - env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- - name: MYSQL_ROOT_HOST
- value: '%'
- - name: MYSQL_ALLOW_EMPTY_PASSWORD
- value: "0"
- image: {{ .Values.image.mysql }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-db-container
- volumeMounts:
- - mountPath: /var/lib/mysql
- name: sdnc-data
-#{{ if not .Values.disableNfsProvisioner }}
- subPath: mysql
-#{{ end }}
- - name: conf
- mountPath: /etc/mysql/conf.d
- ports:
- - containerPort: 3306
- resources:
- requests:
- cpu: 500m
- memory: 1Gi
- livenessProbe:
- exec:
- command: ["mysqladmin", "ping"]
- initialDelaySeconds: 30
- periodSeconds: 10
- timeoutSeconds: 5
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- - name: xtrabackup
- image: {{ .Values.image.xtrabackup }}
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- ports:
- - name: xtrabackup
- containerPort: 3307
- command:
- - bash
- - "-c"
- - |
- set -ex
- cd /var/lib/mysql
- ls -l
- # Determine binlog position of cloned data, if any.
- if [[ -f xtrabackup_slave_info ]]; then
- echo "Inside xtrabackup_slave_info"
- # XtraBackup already generated a partial "CHANGE MASTER TO" query
- # because we're cloning from an existing slave.
- mv xtrabackup_slave_info change_master_to.sql.in
- # Ignore xtrabackup_binlog_info in this case (it's useless).
- rm -f xtrabackup_binlog_info
- elif [[ -f xtrabackup_binlog_info ]]; then
- echo "Inside xtrabackup_binlog_info"
- # We're cloning directly from master. Parse binlog position.
- [[ `cat xtrabackup_binlog_info` =~ ^(.*?)[[:space:]]+(.*?)$ ]] || exit 1
- rm xtrabackup_binlog_info
- echo "CHANGE MASTER TO MASTER_LOG_FILE='${BASH_REMATCH[1]}',\
- MASTER_LOG_POS=${BASH_REMATCH[2]}" > change_master_to.sql.in
- fi
-
- # Check if we need to complete a clone by starting replication.
- if [[ -f change_master_to.sql.in ]]; then
- echo "Waiting for mysqld to be ready (accepting connections)"
- [[ `hostname` =~ -([0-9]+)$ ]] || exit 1
- ordinal=${BASH_REMATCH[1]}
- echo $ordinal
- until mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h 127.0.0.1 -e "SELECT 1"; do sleep 1; done
-
- echo "Initializing replication from clone position"
- # In case of container restart, attempt this at-most-once.
- mv change_master_to.sql.in change_master_to.sql.orig
- mysql --user=root --password=$MYSQL_ROOT_PASSWORD -h 127.0.0.1 <<EOF
- $(<change_master_to.sql.orig),
- MASTER_HOST="sdnc-dbhost-0.dbhost.{{ .Values.nsPrefix }}",
- MASTER_USER="root",
- MASTER_PASSWORD="$MYSQL_ROOT_PASSWORD",
- MASTER_CONNECT_RETRY=10;
- START SLAVE;
- EOF
- fi
-
- # Start a server to send backups when requested by peers.
- exec ncat --listen --keep-open --send-only --max-conns=1 3307 -c \
- "xtrabackup --user=root --password=$MYSQL_ROOT_PASSWORD --backup --slave-info --stream=xbstream --host=127.0.0.1"
- volumeMounts:
- - name: sdnc-data
- mountPath: /var/lib/mysql
-#{{ if not .Values.disableNfsProvisioner }}
- subPath: mysql
-#{{ end }}
- - name: conf
- mountPath: /etc/mysql/conf.d
- resources:
- requests:
- cpu: 100m
- memory: 100Mi
- volumes:
- - name: conf
- emptyDir: {}
- - name: config-map
- configMap:
- name: sdnc-mysql
- - name: localtime
- hostPath:
- path: /etc/localtime
-#{{ if .Values.disableNfsProvisioner }}
- - name: sdnc-data
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdnc/data/mysql
-#{{ else }}
- volumeClaimTemplates:
- - metadata:
- name: sdnc-data
- annotations:
- volume.beta.kubernetes.io/storage-class: "{{ .Values.nsPrefix }}-sdnc-data"
- spec:
- accessModes: ["ReadWriteMany"]
- resources:
- requests:
- storage: 1Gi
-#{{ end }}
-#{{ end }}
-
diff --git a/kubernetes/sdnc/templates/dgbuilder-deployment.yaml b/kubernetes/sdnc/templates/dgbuilder-deployment.yaml
deleted file mode 100644
index 62f1d004d0..0000000000
--- a/kubernetes/sdnc/templates/dgbuilder-deployment.yaml
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncSdncDgbuilder }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sdnc-dgbuilder
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dgbuilderReplicas }}
- selector:
- matchLabels:
- app: sdnc-dgbuilder
- template:
- metadata:
- labels:
- app: sdnc-dgbuilder
- name: sdnc-dgbuilder
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- - --container-name
- - sdnc-controller-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-dgbuilder-readiness
- containers:
- - command:
- - /bin/bash
- - -c
- - cd /opt/onap/sdnc/dgbuilder/ && ./start.sh sdnc1.0 && wait
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- image: {{ .Values.image.dgbuilderSdnc }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-dgbuilder-container
- ports:
- - containerPort: 3100
- readinessProbe:
- tcpSocket:
- port: 3100
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdnc/templates/dmaap-deployment.yaml b/kubernetes/sdnc/templates/dmaap-deployment.yaml
deleted file mode 100644
index ca092ff261..0000000000
--- a/kubernetes/sdnc/templates/dmaap-deployment.yaml
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncDmaap }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sdnc-dmaap-listener
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dmaapReplicas }}
- selector:
- matchLabels:
- app: dmaap-listener
- template:
- metadata:
- labels:
- app: dmaap-listener
- name: sdnc-dmaap-listener
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- - --container-name
- - sdnc-controller-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-dmaap-readiness
- containers:
- - command:
- - /opt/onap/sdnc/dmaap-listener/bin/start-dmaap-listener.sh
- env:
- - name: PROPERTY_DIR
- value: /opt/onap/sdnc/data/properties
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- image: {{ .Values.image.dmaaplistener }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: dmaapp-listener-container
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/onap/sdnc/data/properties/dhcpalert.properties
- subPath: dhcpalert.properties
- name: dmaap-dhcapalert-config
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: dmaap-dhcapalert-config
- configMap:
- name: sdnc-dmaap-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdnc/templates/nfs-provisoner-deployment.yaml b/kubernetes/sdnc/templates/nfs-provisoner-deployment.yaml
deleted file mode 100644
index 12713a1dbb..0000000000
--- a/kubernetes/sdnc/templates/nfs-provisoner-deployment.yaml
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncSdncDbhost }}
-#{{ if not .Values.disableNfsProvisioner }}
-kind: Deployment
-apiVersion: extensions/v1beta1
-metadata:
- name: sdnc-nfs-provisioner
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.nfsReplicas }}
- strategy:
- type: Recreate
- template:
- metadata:
- labels:
- app: nfs-provisioner
- name: sdnc-nfs-provisioner
- spec:
- containers:
- - name: nfs-provisioner
- image: quay.io/kubernetes_incubator/nfs-provisioner:v1.0.8
- ports:
- - name: nfs
- containerPort: 2049
- - name: mountd
- containerPort: 20048
- - name: rpcbind
- containerPort: 111
- - name: rpcbind-udp
- containerPort: 111
- protocol: UDP
- securityContext:
- capabilities:
- add:
- - DAC_READ_SEARCH
- - SYS_RESOURCE
- args:
- - "-provisioner=sdnc/nfs"
- env:
- - name: POD_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: SERVICE_NAME
- value: nfs-provisioner
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- imagePullPolicy: "IfNotPresent"
- volumeMounts:
- - name: export-volume
- mountPath: /export
- volumes:
- - name: export-volume
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/sdnc/data
-#{{ end }}
-#{{ end }}
diff --git a/kubernetes/sdnc/templates/pv.yaml b/kubernetes/sdnc/templates/pv.yaml
new file mode 100644
index 0000000000..f10d67ad68
--- /dev/null
+++ b/kubernetes/sdnc/templates/pv.yaml
@@ -0,0 +1,84 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+{{ $pvNum := default 1 .Values.replicaCount | int }}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-mdsal0
+ 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" . }}-mdsal"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}0
+{{ if gt $pvNum 1 }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-mdsal1
+ 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" . }}-mdsal"
+ 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" . }}-mdsal2
+ 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" . }}-mdsal"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}2
+{{ end }}
+{{- end -}}
diff --git a/kubernetes/sdnc/templates/sdnc-data-storageclass.yaml b/kubernetes/sdnc/templates/sdnc-data-storageclass.yaml
deleted file mode 100644
index 1e6bf53b21..0000000000
--- a/kubernetes/sdnc/templates/sdnc-data-storageclass.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncSdncDbhost }}
-#{{ if not .Values.disableNfsProvisioner }}
-kind: StorageClass
-apiVersion: storage.k8s.io/v1
-metadata:
- name: "{{ .Values.nsPrefix }}-sdnc-data"
- namespace: "{{ .Values.nsPrefix }}"
-provisioner: sdnc/nfs
-#{{ end }}
-#{{ end }}
diff --git a/kubernetes/sdnc/templates/sdnc-statefulset.yaml b/kubernetes/sdnc/templates/sdnc-statefulset.yaml
deleted file mode 100644
index 3b07896462..0000000000
--- a/kubernetes/sdnc/templates/sdnc-statefulset.yaml
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncSdnc }}
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
- name: sdnc
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- serviceName: "sdnhost-cluster"
- replicas: {{ .Values.numberOfODLReplicas }}
- podManagementPolicy: Parallel
- selector:
- matchLabels:
- app: sdnc
- template:
- metadata:
- labels:
- app: sdnc
- name: sdnc
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-readiness
- containers:
- - command:
- - bash
- - "-c"
- - |
- sed -i 's/dbhost/sdnc-dbhost-0.dbhost.{{ .Values.nsPrefix }}.svc.cluster.local/g' /opt/onap/sdnc/data/properties/svclogic.properties
- sed -i 's/^\(org.onap.ccsdk.sli.jdbc.hosts=\).*/\1sdnc-dbhost-0.dbhost.{{ .Values.nsPrefix }}.svc.cluster.local/' /opt/onap/sdnc/data/properties/dblib.properties
- /opt/onap/sdnc/bin/startODL.sh
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- - name: ENABLE_ODL_CLUSTER
- value: "{{ .Values.enableODLCluster }}"
- - name: SDNC_REPLICAS
- value: "{{ .Values.numberOfODLReplicas }}"
- image: {{ .Values.image.sdnc }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-controller-container
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/onap/sdnc/data/properties/admportal.json
- name: sdnc-conf
- subPath: admportal.json
- - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties
- name: sdnc-conf
- subPath: aaiclient.properties
- - mountPath: /var/log/onap
- name: sdnc-logs
- - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg
- name: sdnc-logging-cfg-config
- subPath: org.ops4j.pax.logging.cfg
- ports:
- - containerPort: 8181
- - containerPort: 8101
- - containerPort: 2550
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8181
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: sdnc-logs
- - mountPath: /usr/share/filebeat/data
- name: sdnc-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: sdnc-log-configmap
- - name: sdnc-logging-cfg-config
- configMap:
- name: sdnc-logging-cfg-configmap
- - name: sdnc-logs
- emptyDir: {}
- - name: sdnc-data-filebeat
- emptyDir: {}
- - name: sdnc-conf
- configMap:
- name: sdnc-conf-configmap
- items:
- - key: admportal.json
- path: admportal.json
- mode: 0755
- - key: aaiclient.properties
- path: aaiclient.properties
- mode: 0755
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdnc/templates/secrets.yaml b/kubernetes/sdnc/templates/secrets.yaml
new file mode 100644
index 0000000000..754f117e38
--- /dev/null
+++ b/kubernetes/sdnc/templates/secrets.yaml
@@ -0,0 +1,27 @@
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ db-root-password: {{ .Values.config.dbRootPassword | b64enc | quote }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-odl
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ odl-password: {{ .Values.config.odlPassword | b64enc | quote }}
diff --git a/kubernetes/sdnc/templates/service.yaml b/kubernetes/sdnc/templates/service.yaml
new file mode 100644
index 0000000000..63a85a39aa
--- /dev/null
+++ b/kubernetes/sdnc/templates/service.yaml
@@ -0,0 +1,155 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "sdnc",
+ "version": "v1",
+ "url": "/",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"1",
+ "path": "/"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: "{{ .Values.service.portName }}-8282"
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: "{{ .Values.service.portName }}-8202"
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: "{{ .Values.service.portName }}-8280"
+ - port: {{ .Values.service.externalPort4 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort4 }}
+ name: "{{ .Values.service.portName }}-8443"
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.portName }}-cluster
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ annotations:
+ service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
+spec:
+ ports:
+ - name: "{{ .Values.service.portName }}-cluster-port"
+ port: {{ .Values.service.clusterPort }}
+ clusterIP: None
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ sessionAffinity: None
+ type: ClusterIP
+
+{{ if .Values.config.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.servicename" . }}-0
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+spec:
+ ports:
+ - 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 }}
+ - 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 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+{{ end }}
+{{ if .Values.config.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.servicename" . }}-1
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-1
+spec:
+ ports:
+ - 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 }}
+ - 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 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-1
+{{ end }}
+{{ if .Values.config.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.servicename" . }}-2
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-2
+spec:
+ ports:
+ - 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 }}
+ - 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 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-2
+{{ end }}
diff --git a/kubernetes/sdnc/templates/statefulset.yaml b/kubernetes/sdnc/templates/statefulset.yaml
new file mode 100644
index 0000000000..69816dffb4
--- /dev/null
+++ b/kubernetes/sdnc/templates/statefulset.yaml
@@ -0,0 +1,187 @@
+# 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: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ include "common.servicename" . }}-cluster
+ replicas: {{ .Values.replicaCount }}
+ podManagementPolicy: Parallel
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.mysql.nameOverride }}
+ 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"]
+ args: ["-c", "/opt/sdnc/bin/startODL.sh"]
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.internalPort2 }}
+ - containerPort: {{ .Values.service.internalPort3 }}
+ - containerPort: {{ .Values.service.clusterPort }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ - name: ODL_ADMIN_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-odl
+ key: odl-password
+ - name: SDNC_CONFIG_DIR
+ value: "{{ .Values.config.configDir }}"
+ - name: ENABLE_ODL_CLUSTER
+ value: "{{ .Values.config.enableClustering }}"
+ - name: MY_ODL_CLUSTER
+ value: "{{ .Values.config.myODLCluster }}"
+ - name: PEER_ODL_CLUSTER
+ value: "{{ .Values.config.peerODLCluster }}"
+ - name: IS_PRIMARY_CLUSTER
+ value: "{{ .Values.config.isPrimaryCluster }}"
+ - name: GEO_ENABLED
+ value: "{{ .Values.config.geoEnabled}}"
+ - name: SDNC_REPLICAS
+ value: "{{ .Values.replicaCount }}"
+ - name: MYSQL_HOST
+ value: "{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg
+ name: sdnc-logging-cfg-config
+ subPath: org.ops4j.pax.logging.cfg
+ - mountPath: {{ .Values.config.binDir }}/startODL.sh
+ name: bin
+ subPath: startODL.sh
+ - mountPath: {{ .Values.config.binDir }}/installSdncDb.sh
+ name: bin
+ subPath: installSdncDb.sh
+ - mountPath: {{ .Values.config.configDir }}/aaiclient.properties
+ name: properties
+ subPath: aaiclient.properties
+ - mountPath: {{ .Values.config.configDir }}/dblib.properties
+ name: properties
+ subPath: dblib.properties
+ - mountPath: {{ .Values.config.configDir }}/lcm-dg.properties
+ name: properties
+ subPath: lcm-dg.properties
+ - mountPath: {{ .Values.config.configDir }}/svclogic.properties
+ name: properties
+ subPath: svclogic.properties
+ - mountPath: /opt/onap/sdnc/svclogic/config/svclogic.properties
+ name: properties
+ subPath: svclogic.properties
+ - mountPath: {{ .Values.persistence.mdsalPath }}
+ name: {{ include "common.fullname" . }}-mdsal
+ - mountPath: /var/log/onap
+ name: 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
+ name: filebeat-conf
+ subPath: filebeat.yml
+ - mountPath: /var/log/onap
+ name: logs
+ - mountPath: /usr/share/filebeat/data
+ name: data-filebeat
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: logs
+ emptyDir: {}
+ - name: data-filebeat
+ emptyDir: {}
+ - name: filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: sdnc-logging-cfg-config
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ - name: bin
+ configMap:
+ name: {{ include "common.fullname" . }}-bin
+ defaultMode: 0755
+ - name: properties
+ configMap:
+ name: {{ include "common.fullname" . }}-properties
+ defaultMode: 0644
+ {{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-mdsal
+ emptyDir: {}
+ {{ else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-mdsal
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-mdsal
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+ {{ end }}
diff --git a/kubernetes/sdnc/templates/ueb-deployment.yaml b/kubernetes/sdnc/templates/ueb-deployment.yaml
deleted file mode 100644
index f785cf7411..0000000000
--- a/kubernetes/sdnc/templates/ueb-deployment.yaml
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncUeb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sdnc-ueb-listener
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.uebReplicas }}
- selector:
- matchLabels:
- app: ueb-listener
- template:
- metadata:
- labels:
- app: ueb-listener
- name: sdnc-ueb-listener
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- - --container-name
- - sdnc-controller-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-ueb-readiness
- containers:
- - command:
- - /opt/onap/sdnc/ueb-listener/bin/start-ueb-listener.sh
- env:
- - name: PROPERTY_DIR
- value: /opt/onap/sdnc/data/properties
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- image: {{ .Values.image.ueblistener }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: ueb-listener-container
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/onap/sdnc/data/properties/ueb-listener.properties
- subPath: ueb-listener.properties
- name: ueb-config
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: ueb-config
- configMap:
- name: sdnc-ueb-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdnc/templates/web-deployment.yaml b/kubernetes/sdnc/templates/web-deployment.yaml
deleted file mode 100644
index ef469ac523..0000000000
--- a/kubernetes/sdnc/templates/web-deployment.yaml
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableSdncSdncPortal }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: sdnc-portal
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.portalReplicas }}
- selector:
- matchLabels:
- app: sdnc-portal
- template:
- metadata:
- labels:
- app: sdnc-portal
- name: sdnc-portal
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - sdnc-db-container
- - --container-name
- - sdnc-controller-container
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-portal-readiness
- containers:
- - command:
- - /bin/bash
- - -c
- - cd /opt/onap/sdnc/admportal/shell && ./start_portal.sh
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: openECOMP1.0
- - name: SDNC_CONFIG_DIR
- value: /opt/onap/sdnc/data/properties
- image: {{ .Values.image.admportalSdnc }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: sdnc-portal-container
- ports:
- - containerPort: 8843
- volumeMounts:
- - name: localtime
- mountPath: /etc/localtime
- readOnly: true
- - mountPath: /opt/onap/sdnc/data/properties/
- name: sdnc-conf
- readinessProbe:
- tcpSocket:
- port: 8843
- initialDelaySeconds: 5
- periodSeconds: 10
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: sdnc-conf
- configMap:
- name: sdnc-conf-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/sdnc/values.yaml b/kubernetes/sdnc/values.yaml
index 94029179db..a550b22e11 100644
--- a/kubernetes/sdnc/values.yaml
+++ b/kubernetes/sdnc/values.yaml
@@ -12,31 +12,190 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: IfNotPresent
-nodePortPrefix: 302
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- mysql: mysql:5.7
- xtrabackup: gcr.io/google-samples/xtrabackup:1.0
- dgbuilderSdnc: nexus3.onap.org:10001/onap/ccsdk-dgbuilder-image:v0.1.0
- sdnc: nexus3.onap.org:10001/onap/sdnc-image:v1.2.1
- admportalSdnc: nexus3.onap.org:10001/onap/admportal-sdnc-image:v1.2.1
- ueblistener: nexus3.onap.org:10001/onap/sdnc-ueb-listener-image:v1.2.1
- dmaaplistener: nexus3.onap.org:10001/onap/sdnc-dmaap-listener-image:v1.2.1
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
-enableODLCluster: false
-numberOfODLReplicas: 1
-numberOfDbReplicas: 1
-dgbuilderReplicas: 1
-dmaapReplicas: 1
-nfsReplicas: 1
-uebReplicas: 1
-portalReplicas: 1
-disableSdncSdncDgbuilder: false
-disableSdncSdncPortal: false
-disableNfsProvisioner: false
+#################################################################
+# 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
+ persistence:
+ mountPath: /dockerdata-nfs
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application images
+repository: nexus3.onap.org:10001
+pullPolicy: Always
+image: onap/sdnc-image:1.3-STAGING-latest
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
config:
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+ dbRootPassword: openECOMP1.0
+ enableClustering: true
+ binDir: /opt/onap/sdnc/bin
+ geoEnabled: false
+# if geoEnabled is set to true the following 3 values must be set to their proper values
+ myODLCluster: 127.0.0.1
+ peerODLCluster: 127.0.0.1
+ isPrimaryCluster: false
+ configDir: /opt/onap/sdnc/data/properties
+ dmaapTopic: SUCCESS
+ dmaapPort: 3904
logstashServiceName: log-ls
logstashPort: 5044
+ ansibleServiceName: sdnc-ansible-server
+ ansiblePort: 8000
+
+
+# dependency / sub-chart configuration
+dmaap-listener:
+ nameOverride: sdnc-dmaap-listener
+ config:
+ sdncChartName: sdnc
+ mysqlChartName: sdnc-db
+ dmaapPort: 3904
+ sdncPort: 8282
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+ueb-listener:
+ nameOverride: sdnc-ueb-listener
+ config:
+ sdncPort: 8282
+ sdncChartName: sdnc
+ mysqlChartName: sdnc-db
+ configDir: /opt/onap/sdnc/data/properties
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+sdnc-portal:
+ config:
+ sdncChartName: sdnc
+ mysqlChartName: sdnc-db
+ configDir: /opt/onap/sdnc/data/properties
+ dbRootPassword: openECOMP1.0
+ odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+sdnc-ansible-server:
+ service:
+ name: sdnc-ansible-server
+ internalPort: 8000
+ config:
+ mysqlServiceName: sdnc-dbhost
+
+mysql:
+ nameOverride: sdnc-db
+ service:
+ name: sdnc-dbhost
+ internalPort: 3306
+ nfsprovisionerPrefix: sdnc
+ sdnctlPrefix: sdnc
+ persistence:
+ mountSubPath: sdnc/mysql
+ enabled: true
+ disableNfsProvisioner: true
+ replicaCount: 1
+
+dgbuilder:
+ nameOverride: sdnc-dgbuilder
+ config:
+ dbPodName: sdnc-db
+ dbServiceName: sdnc-dbhost
+ dbRootPassword: openECOMP1.0
+ service:
+ name: sdnc-dgbuilder
+ nodePort: "03"
+
+# 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: sdnc
+ portName: sdnc
+ internalPort: 8181
+ internalPort2: 8101
+ internalPort3: 8080
+ internalPort4: 2550
+
+ #port
+ externalPort: 8282
+ nodePort: "02"
+
+ externalPort2: 8202
+ nodePort2: "08"
+
+ externalPort3: 8280
+ nodePort3: 46
+
+ externalPort4: 8443
+ nodePort4: 67
+
+ clusterPort: 2550
+ clusterPort2: 2650
+ clusterPort3: 2681
+
+ geoNodePort1: 61
+ geoNodePort2: 62
+ geoNodePort3: 63
+ geoNodePort4: 64
+ geoNodePort5: 65
+ geoNodePort6: 66
+
+## 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)
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sdnc/mdsal
+ mdsalPath: /opt/opendaylight/current/daexim
+
+ingress:
+ enabled: false
+
+resources: {}
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/sniro-emulator/.helmignore b/kubernetes/sniro-emulator/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/sniro-emulator/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/sniro-emulator/Chart.yaml b/kubernetes/sniro-emulator/Chart.yaml
new file mode 100644
index 0000000000..8916167b7e
--- /dev/null
+++ b/kubernetes/sniro-emulator/Chart.yaml
@@ -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 Mock Sniro Emulator
+name: sniro-emulator
+version: 2.0.0
diff --git a/kubernetes/sniro-emulator/requirements.yaml b/kubernetes/sniro-emulator/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/sniro-emulator/requirements.yaml
@@ -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.
+
+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/sniro-emulator/templates/NOTES.txt b/kubernetes/sniro-emulator/templates/NOTES.txt
new file mode 100644
index 0000000000..409d59e470
--- /dev/null
+++ b/kubernetes/sniro-emulator/templates/NOTES.txt
@@ -0,0 +1,34 @@
+{{/*
+# Copyright © 2017 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+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={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/sniro-emulator/templates/deployment.yaml b/kubernetes/sniro-emulator/templates/deployment.yaml
new file mode 100644
index 0000000000..da5266a1ca
--- /dev/null
+++ b/kubernetes/sniro-emulator/templates/deployment.yaml
@@ -0,0 +1,62 @@
+# 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 }}
+ {{ 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 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/sniro-emulator/templates/service.yaml b/kubernetes/sniro-emulator/templates/service.yaml
new file mode 100644
index 0000000000..73edbd96f3
--- /dev/null
+++ b/kubernetes/sniro-emulator/templates/service.yaml
@@ -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
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName | 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/sniro-emulator/values.yaml b/kubernetes/sniro-emulator/values.yaml
new file mode 100644
index 0000000000..389696061b
--- /dev/null
+++ b/kubernetes/sniro-emulator/values.yaml
@@ -0,0 +1,76 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global: # global defaults
+ nodePortPrefix: 302
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/sniroemulator
+pullPolicy: IfNotPresent
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: sniro-emulator
+ internalPort: 9999
+ externalPort: 80
+ nodePort: 88
+ portName: httpd
+
+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/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/02-load-additional-changes.sh b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/02-load-additional-changes.sh
deleted file mode 100644
index a163801083..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/02-load-additional-changes.sh
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/sh
-#
-# ============LICENSE_START==========================================
-# ===================================================================
-# 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 and OpenECOMP are trademarks
-# and service marks of AT&T Intellectual Property.
-#
-#
-
-# TODO: update this script to work with the new DB schema
-
-# mysql -uroot -p$MYSQL_ROOT_PASSWORD -e "UPDATE heat_environment SET ENVIRONMENT='parameters:\n vfw_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vfw_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n unprotected_private_net_id: zdfw1fwl01_unprotected\n protected_private_net_id: zdfw1fwl01_protected\n ecomp_private_net_id: oam_ecomp\n unprotected_private_net_cidr: 192.168.10.0/24\n protected_private_net_cidr: 192.168.20.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vfw_private_ip_0: 192.168.10.100\n vfw_private_ip_1: 192.168.20.100\n vfw_private_ip_2: 192.168.9.100\n vpg_private_ip_0: 192.168.10.200\n vpg_private_ip_1: 192.168.9.200\n vsn_private_ip_0: 192.168.20.250\n vsn_private_ip_1: 192.168.9.250\n vfw_name_0: zdfw1fwl01fwl01\n vpg_name_0: zdfw1fwl01pgn01\n vsn_name_0: zdfw1fwl01snk01\n vnf_id: vFirewall_demo_app\n vf_module_id: vFirewall\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vfw_key\n pub_key: INSERT YOUR PUBLIC KEY HERE' where id=5;" mso_catalog
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/create_mso_db-tests.sql b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/create_mso_db-tests.sql
deleted file mode 100644
index 146ad01605..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/create_mso_db-tests.sql
+++ /dev/null
@@ -1,49 +0,0 @@
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-LOCK TABLES `NETWORK_RESOURCE` WRITE;
-/*!40000 ALTER TABLE `NETWORK_RESOURCE` DISABLE KEYS */;
-/*!40000 ALTER TABLE `NETWORK_RESOURCE` ENABLE KEYS */;
-insert into NETWORK_RESOURCE (id, NETWORK_TYPE, VERSION_STR, ORCHESTRATION_MODE ,DESCRIPTION, TEMPLATE_ID, NEUTRON_NETWORK_TYPE, AIC_VERSION_MIN) values
-(1, "vlan",'1',"NEUTRON","Cool network",1,"BASIC","0");
-UNLOCK TABLES;
-
-LOCK TABLES `NETWORK_RECIPE` WRITE;
-/*!40000 ALTER TABLE `NETWORK_RECIPE` DISABLE KEYS */;
-INSERT INTO `NETWORK_RECIPE`(`NETWORK_TYPE`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES
-('vlan','CREATE','1',NULL,'/active-bpel/services/REST/CreateNetwork',NULL,180,NULL),
-('vlan','DELETE','1',NULL,'/active-bpel/services/REST/DeleteNetwork',NULL,180,NULL);
-/*!40000 ALTER TABLE `NETWORK_RECIPE` ENABLE KEYS */;
-UNLOCK TABLES;
-
-LOCK TABLES `VNF_RECIPE` WRITE;
-INSERT INTO `VNF_RECIPE`(`ID`, `VNF_TYPE`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES
-(100,'VPE','CREATE','1','','/active-bpel/services/REST/CreateGenericVNF','',180,'SDN-ETHERNET-INTERNET'),
-(101,'VPE','DELETE','1','','/active-bpel/services/REST/DeleteGenericVNF','',180,'SDN-ETHERNET-INTERNET');
-UNLOCK TABLES;
-
-LOCK TABLES `VF_MODULE` WRITE;
-INSERT INTO `VF_MODULE`(`ID`, `TYPE`, `ASDC_SERVICE_MODEL_VERSION`, `MODEL_NAME`, `MODEL_VERSION`, `IS_BASE`, `VNF_RESOURCE_ID`) VALUES
-(100,'dns-servicetest/DNSResource-1::VF_DNS::module-1','1.0','VF_DNS::module-1','1.0','1','7'),
-(101,'dns-servicetest/DNSResource-1::Mog111..mog_psm..module-1','1.0','Mog111..mog_psm..module-1','1.0','1','7');
-UNLOCK TABLES;
-
-LOCK TABLES `VNF_RESOURCE` WRITE;
-INSERT INTO `VNF_RESOURCE`(`ID`, `VNF_TYPE`, `ASDC_SERVICE_MODEL_VERSION`, `ORCHESTRATION_MODE`, `MODEL_VERSION`) VALUES
-(100,'dns-servicetest/DNSResource-1','1.0','VF_DNS::module-1','1.0');
-UNLOCK TABLES;
-
-DELETE FROM HEAT_TEMPLATE_PARAMS;
-DELETE FROM HEAT_TEMPLATE;
-DELETE FROM HEAT_ENVIRONMENT;
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/create_mso_db-default.sql b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/create_mso_db-default.sql
deleted file mode 100644
index 7d2eed16bd..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/create_mso_db-default.sql
+++ /dev/null
@@ -1,139 +0,0 @@
-SOURCE ../../camunda/mariadb_engine_7.7.3-ee.sql
-
---
--- Create an admin user automatically for the cockpit
---
-SOURCE ../../camunda/mysql_create_camunda_admin.sql
-
---
--- Current Database: `mso_requests`
---
-
-DROP DATABASE IF EXISTS `mso_requests`;
-
-CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mso_requests` /*!40100 DEFAULT CHARACTER SET latin1 */;
-
-USE `mso_requests`;
-
-SOURCE ../../main-schemas/MySQL-Requests-schema.sql
-
---
--- Current Database: `mso_catalog`
---
-
-DROP DATABASE IF EXISTS `mso_catalog`;
-
-CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mso_catalog` /*!40100 DEFAULT CHARACTER SET latin1 */;
-
-USE `mso_catalog`;
-
-SOURCE ../../main-schemas/MySQL-Catalog-schema.sql
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','Contrail30-l2nodhcp','1',NULL,'heat_template_version: 2015-04-30\n\ndescription:\n HOT template that creates a Contrail Virtual Network with L2NODHCP\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n shared:\n type: boolean\n description: Shared amongst tenants\n default: False\n external:\n type: boolean\n description: router_external for the VirtualNetwork\n default: False\n route_targets:\n type: comma_delimited_list\n description: Network route-targets (RT)\n default: \"\"\n subnet_list:\n type: json\n description: Network subnets\n default: []\n policy_refs:\n type: comma_delimited_list\n description: Policies referenced by Network\n default: \"\"\n policy_refsdata:\n type: json\n description: Policies referenced by Network\n default: []\n route_table_refs:\n type: comma_delimited_list\n description: Route Tables referenced by Network\n default: \"\"\n virtual_network_properties_allow_transit:\n type: boolean\n description: allow_transit for the VirtualNetwork\n default: True\n virtual_network_properties_forwarding_mode:\n type: string\n description: forwarding_mode for the VirtualNetwork\n default: l2\n virtual_network_properties_rpf:\n type: string\n description: rpf for the VirtualNetwork\n default: disable\n flood_unknown_unicast:\n type: boolean\n description: flood_unknown_unicast for the VirtualNetwork\n default: True\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n networkIpam:\n type: OS::ContrailV2::NetworkIpam\n properties:\n name: { get_param: network_name }\n\n network:\n type: OS::ContrailV2::VirtualNetwork\n properties:\n name: { get_param: network_name }\n is_shared: {get_param: shared}\n router_external: { get_param: external }\n route_target_list:\n {\n route_target_list_route_target: { get_param: route_targets }\n }\n network_ipam_refs: [{ get_resource: networkIpam }]\n network_ipam_refs_data:\n [\n {\n network_ipam_refs_data_ipam_subnets: { get_param: subnet_list }\n }\n ]\n network_policy_refs: { get_param: policy_refs }\n network_policy_refs_data: { get_param: policy_refsdata }\n route_table_refs: { get_param: route_table_refs }\n flood_unknown_unicast: { get_param: flood_unknown_unicast } \n virtual_network_properties:\n {\n virtual_network_properties_allow_transit: { get_param: virtual_network_properties_allow_transit },\n virtual_network_properties_forwarding_mode: { get_param: virtual_network_properties_forwarding_mode },\n virtual_network_properties_rpf: { get_param: virtual_network_properties_rpf },\n }\n',10,'MANUAL RECORD','2017-10-05 18:52:03');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','Contrail30-gndirect','1',NULL,'heat_template_version: 2015-04-30\n\ndescription:\n HOT template that creates a Contrail Virtual Network for GNDIRECT\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n shared:\n type: boolean\n description: Shared amongst tenants\n default: False\n external:\n type: boolean\n description: router_external for the VirtualNetwork\n default: False\n route_targets:\n type: comma_delimited_list\n description: Network route-targets (RT)\n default: \"\"\n subnet_list:\n type: json\n description: Network subnets\n default: []\n policy_refs:\n type: comma_delimited_list\n description: Policies referenced by Network\n default: \"\"\n policy_refsdata:\n type: json\n description: Policies referenced by Network\n default: []\n route_table_refs:\n type: comma_delimited_list\n description: Route Tables referenced by Network\n default: \"\"\n virtual_network_properties_rpf:\n type: string\n description: rpf for the VirtualNetwork\n default: disable\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n networkIpam:\n type: OS::ContrailV2::NetworkIpam\n properties:\n name: { get_param: network_name }\n\n network:\n type: OS::ContrailV2::VirtualNetwork\n properties:\n name: { get_param: network_name }\n is_shared: {get_param: shared}\n router_external: { get_param: external }\n route_target_list:\n {\n route_target_list_route_target: { get_param: route_targets }\n }\n network_ipam_refs: [{ get_resource: networkIpam }]\n network_ipam_refs_data:\n [\n {\n network_ipam_refs_data_ipam_subnets: { get_param: subnet_list }\n }\n ]\n network_policy_refs: { get_param: policy_refs }\n network_policy_refs_data: { get_param: policy_refsdata }\n route_table_refs: { get_param: route_table_refs }\n virtual_network_properties:\n {\n virtual_network_properties_rpf: { get_param: virtual_network_properties_rpf }\n }\n',10,'MANUAL RECORD','2017-10-05 18:52:03');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`,`NAME`,`VERSION`,`BODY`,`TIMEOUT_MINUTES`,`DESCRIPTION`,`CREATION_TIMESTAMP`,`ARTIFACT_CHECKSUM`) VALUES ('efee1d84-b8ec-11e7-abc4-cec278b6b50a','Generic NeutronNet','1','heat_template_version: 2013-05-23\n\ndescription:\n HOT template that creates a Generic Neutron Network\n\nparameters:\n network_name:\n type: string\n description: Name of direct network (e.g. core, dmz)\n default: ECOMPNetwork\n network_subnet_name:\n type: string\n description: Name of subnet network (e.g. core, dmz)\n default: ECOMPNetwork\n network_subnet_cidr:\n type: string\n description: CIDR of subnet network (e.g. core, dmz)\n default: 10.0.0.0/16\n\noutputs:\n network_id:\n description: Openstack network identifier\n value: { get_resource: network }\n network_fqdn:\n description: Openstack network identifier\n value: {list_join: [\':\', { get_attr: [network, fq_name] } ] }\n\nresources:\n network:\n type: OS::Neutron::Net\n properties:\n name: {get_param: network_name }\n\n subnet:\n type: OS::Neutron::Subnet\n properties:\n name: { get_param: network_subnet_name }\n network_id: { get_resource: network }\n cidr: { get_param: network_subnet_cidr }\n enable_dhcp: false\n',10,'Generic Neutron Template','2017-10-26 14:44:00', 'MANUAL RECORD');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','external','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','flood_unknown_unicast','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','network_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','policy_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','policy_refsdata','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','route_table_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','route_targets','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','shared','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_allow_transit','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_forwarding_mode','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c198-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_rpf','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','external','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','network_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','policy_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','policy_refsdata','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','route_table_refs','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','route_targets','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','shared','\0','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('4885c7a1-a9fe-11e7-8b4b-0242ac120002','virtual_network_properties_rpf','\0','string',NULL);
-
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (1,'CONTRAIL_BASIC','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (2,'CONTRAIL_BASIC','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (3,'CONTRAIL_BASIC','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (4,'CONTRAIL_SHARED','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (5,'CONTRAIL_SHARED','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (6,'CONTRAIL_SHARED','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (7,'CONTRAIL_EXTERNAL','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (8,'CONTRAIL_EXTERNAL','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (9,'CONTRAIL_EXTERNAL','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (10,'CONTRAIL30_BASIC','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (11,'CONTRAIL30_BASIC','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (12,'CONTRAIL30_BASIC','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (13,'CONTRAIL30_MPSCE','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (14,'CONTRAIL30_MPSCE','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (15,'CONTRAIL30_MPSCE','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (16,'VID_DEFAULT','createInstance','VID_DEFAULT recipe to create network if no custom BPMN flow is found','/mso/async/services/CreateNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (17,'VID_DEFAULT','updateInstance','VID_DEFAULT recipe to update network if no custom BPMN flow is found','/mso/async/services/UpdateNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (18,'VID_DEFAULT','deleteInstance','VID_DEFAULT recipe to delete network if no custom BPMN flow is found','/mso/async/services/DeleteNetworkInstance',NULL,180,NULL,'2017-10-05 18:52:03','1.0');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (19,'CONTRAIL30_L2NODHCP','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (20,'CONTRAIL30_L2NODHCP','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (21,'CONTRAIL30_L2NODHCP','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (22,'CONTRAIL30_GNDIRECT','CREATE',NULL,'/mso/async/services/CreateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (23,'CONTRAIL30_GNDIRECT','UPDATE',NULL,'/mso/async/services/UpdateNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-INSERT INTO `network_recipe` (`id`, `MODEL_NAME`, `ACTION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `NETWORK_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`, `CREATION_TIMESTAMP`, `VERSION_STR`) VALUES (24,'CONTRAIL30_GNDIRECT','DELETE',NULL,'/mso/async/services/DeleteNetworkV2',NULL,180,NULL,'2017-10-05 18:52:03','1');
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('48cc36cc-a9fe-11e7-8b4b-0242ac120002','VID_DEFAULT','48cd56c8-a9fe-11e7-8b4b-0242ac120002','1.0','Default service for VID to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-05 18:52:03',NULL);
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('48cc3acd-a9fe-11e7-8b4b-0242ac120002','*','48ce2256-a9fe-11e7-8b4b-0242ac120002','1.0','Default service to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-05 18:52:03',NULL);
-
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (1,'createInstance','1','VID_DEFAULT recipe to create service-instance if no custom BPMN flow is found','/mso/async/services/CreateGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc36cc-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (2,'deleteInstance','1','VID_DEFAULT recipe to delete service-instance if no custom BPMN flow is found','/mso/async/services/DeleteGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc36cc-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (3,'createInstance','1','DEFAULT recipe to create service-instance if no custom BPMN flow is found','/mso/async/services/CreateGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc3acd-a9fe-11e7-8b4b-0242ac120002');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (4,'deleteInstance','1','DEFAULT recipe to delete service-instance if no custom BPMN flow is found','/mso/async/services/DeleteGenericALaCarteServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','48cc3acd-a9fe-11e7-8b4b-0242ac120002');
-
---
--- Custom Reciepe for the VoLTE service added temporarily
---
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('dfcd7471-16c7-444e-8268-d4c50d90593a','UUI_DEFAULT','dfcd7471-16c7-444e-8268-d4c50d90593a','1.0','Default service for UUI to use for infra APIH orchestration1707MIGRATED1707MIGRATED','2017-10-23 18:52:03',NULL);
-
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (11,'createInstance','1','Custom recipe to create E2E service-instance if no custom BPMN flow is found','/mso/async/services/CreateCustomE2EServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','dfcd7471-16c7-444e-8268-d4c50d90593a');
-INSERT INTO `service_recipe` (`id`, `ACTION`, `VERSION_STR`, `DESCRIPTION`, `ORCHESTRATION_URI`, `SERVICE_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TIMEOUT_INTERIM`, `CREATION_TIMESTAMP`, `SERVICE_MODEL_UUID`) VALUES (12,'deleteInstance','1','Custom recipe to delete E2E service-instance if no custom BPMN flow is found','/mso/async/services/DeleteCustomE2EServiceInstance',NULL,180,NULL,'2017-10-05 18:52:03','dfcd7471-16c7-444e-8268-d4c50d90593a');
-
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`) VALUES ('CONTRAIL30_GNDIRECT','4885c7a1-a9fe-11e7-8b4b-0242ac120002','3.0',NULL);
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`) VALUES ('CONTRAIL30_L2NODHCP','4885c198-a9fe-11e7-8b4b-0242ac120002','3.0',NULL);
-INSERT INTO `temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`, `HEAT_TEMPLATE_ARTIFACT_UUID`,`AIC_VERSION_MIN` , `AIC_VERSION_MAX` ) VALUES ('Generic NeutronNet','efee1d84-b8ec-11e7-abc4-cec278b6b50a','2.0','NULL');
-
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (1,'*','VOLUME_GROUP',NULL,'CREATE',NULL,'1','Recipe Match All for','/mso/async/services/createCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (2,'*','VOLUME_GROUP',NULL,'DELETE',NULL,'1','Recipe Match All for','/mso/async/services/deleteCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (3,'*','VOLUME_GROUP',NULL,'UPDATE',NULL,'1','Recipe Match All for','/mso/async/services/updateCinderVolumeV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (4,NULL,'VOLUME_GROUP',NULL,'CREATE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/CreateVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (5,NULL,'VOLUME_GROUP',NULL,'DELETE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/DeleteVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (6,NULL,'VOLUME_GROUP',NULL,'UPDATE_VF_MODULE_VOL',NULL,'1','Recipe Match All for','/mso/async/services/UpdateVfModuleVolume',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (7,NULL,'volumeGroup','VID_DEFAULT','createInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/CreateVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (8,NULL,'volumeGroup','VID_DEFAULT','deleteInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/DeleteVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (9,NULL,'volumeGroup','VID_DEFAULT','updateInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/UpdateVfModuleVolumeInfraV1',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (10,NULL,'vfModule','VID_DEFAULT','createInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/CreateVfModuleInfra',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (11,NULL,'vfModule','VID_DEFAULT','deleteInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/DeleteVfModuleInfra',null,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_components_recipe` (`id`, `VNF_TYPE`, `VNF_COMPONENT_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `SERVICE_TYPE`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (12,NULL,'vfModule','VID_DEFAULT','updateInstance',NULL,'1','VID_DEFAULT recipe t','/mso/async/services/UpdateVfModuleInfra',null,180,'2017-10-05 18:52:03');
-
---
--- Default Reciepe for the VNF componnets added start #SO-334, to unblock the VNF operations
---
-
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','createInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/CreateVfModuleInfra','vfModule',NULL,180,NULL);
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','updateInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/UpdateVfModuleInfra','vfModule',NULL,180,NULL);
-INSERT INTO `vnf_components_recipe` (`VNF_TYPE`, `VF_MODULE_MODEL_UUID`, `ACTION`, `VERSION`, `DESCRIPTION`, `ORCHESTRATION_URI`,`VNF_COMPONENT_TYPE`, `VNF_COMPONENT_PARAM_XSD`, `RECIPE_TIMEOUT`, `SERVICE_TYPE`) VALUES (NULL,'POLICY_DEFAULT','deleteInstance','1','Recipe Match POLICY_DEFAULT for VF Modules if no custom flow exists','/mso/async/services/DeleteVfModuleInfra','vfModule',NULL,180,NULL);
---
--- Default Reciepe for the VNF componnets added End
---
-
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (1,NULL,'CREATE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/workflow/services/CreateGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (2,NULL,'DELETE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/async/services//deleteGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (3,NULL,'UPDATE',NULL,'1','*','Recipe Match All for VNFs if no custom flow exists','/mso/workflow/services/updateGenericVNFV1',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (4,'*','CREATE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/CreateVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (5,'*','DELETE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/DeleteVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (6,'*','UPDATE_VF_MODULE',NULL,'1',NULL,'Recipe Match All for VNFs if no custom flow exists','/mso/async/services/UpdateVfModule',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (7,NULL,'createInstance',NULL,'1','VID_DEFAULT','VID_DEFAULT recipe to create VNF if no custom BPMN flow is found','/mso/async/services/CreateVnfInfra',NULL,180,'2017-10-05 18:52:03');
-INSERT INTO `vnf_recipe` (`id`, `VF_MODULE_ID`, `ACTION`, `SERVICE_TYPE`, `VERSION_STR`, `VNF_TYPE`, `DESCRIPTION`, `ORCHESTRATION_URI`, `VNF_PARAM_XSD`, `RECIPE_TIMEOUT`, `CREATION_TIMESTAMP`) VALUES (8,NULL,'deleteInstance',NULL,'1','VID_DEFAULT','VID_DEFAULT recipe to delete VNF if no custom BPMN flow is found','/mso/async/services/DeleteVnfInfra',NULL,180,'2017-10-05 18:52:03');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/create_mso_db-demo-dns.sql b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/create_mso_db-demo-dns.sql
deleted file mode 100644
index b5063defda..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/create_mso_db-demo-dns.sql
+++ /dev/null
@@ -1,77 +0,0 @@
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID1','base_vlb.env','1.0','BASE VLB ENV file','parameters:\n vlb_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vlb_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n vlb_private_net_id: zdfw1lb01_private\n ecomp_private_net_id: oam_ecomp\n vlb_private_net_cidr: 192.168.10.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vlb_private_ip_0: 192.168.10.111\n vlb_private_ip_1: 192.168.9.111\n vdns_private_ip_0: 192.168.10.211\n vdns_private_ip_1: 192.168.9.211\n vlb_name_0: zdfw1lb01lb01\n vdns_name_0: zdfw1lb01dns01\n vnf_id: vLoadBalancer_demo_app\n vf_module_id: vLoadBalancer\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vlb_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID2','dnsscaling.env','1.0','DNS Scaling ENV file','parameters:\n vlb_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vlb_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n vlb_private_net_id: zdfw1lb01_private\n ecomp_private_net_id: oam_ecomp\n vlb_private_ip_0: 192.168.10.111\n vlb_private_ip_1: 192.168.9.111\n vdns_private_ip_0: 192.168.10.222\n vdns_private_ip_1: 192.168.9.222\n vdns_name_0: zdfw1lb01dns02\n vnf_id: vLoadBalancer_demo_app\n vf_module_id: vLoadBalancer\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vlb_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID1','base_vlb.yaml','1.0','Base VLB Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy vLoadBalancer/vDNS demo app for OpenECOMP\n\nparameters:\n vlb_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vlb_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n vlb_private_net_id:\n type: string\n label: vLoadBalancer private network name or ID\n description: Private network that connects vLoadBalancer with vDNSs\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n vlb_private_net_cidr:\n type: string\n label: vLoadBalancer private network CIDR\n description: The CIDR of the vLoadBalancer private network\n ecomp_private_net_cidr:\n type: string\n label: ECOMP private network CIDR\n description: The CIDR of the protected private network\n vlb_private_ip_0:\n type: string\n label: vLoadBalancer private IP address towards the private network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs\n vlb_private_ip_1:\n type: string\n label: vLoadBalancer private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components\n vdns_private_ip_0:\n type: string\n label: vDNS private IP address towards the private network\n description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer\n vdns_private_ip_1:\n type: string\n label: vDNS private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vDNS to communicate with ECOMP components\n vlb_name_0:\n type: string\n label: vLoadBalancer name\n description: Name of the vLoadBalancer\n vdns_name_0:\n type: string\n label: vDNS name\n description: Name of the vDNS\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vLoadBalancer Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n my_keypair:\n type: OS::Nova::KeyPair\n properties:\n name: { get_param: key_name }\n public_key: { get_param: pub_key }\n save_private_key: false\n\n vlb_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: vlb_private_net_id }\n\n vlb_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n name: { get_param: vlb_private_net_id }\n network_id: { get_resource: vlb_private_network }\n cidr: { get_param: vlb_private_net_cidr }\n\n vlb_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vlb_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vlb_private_0_port }\n - port: { get_resource: vlb_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __dcae_collector_ip__: { get_param: dcae_collector_ip }\n __local_private_ipaddr__: { get_param: vlb_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n DCAE_COLLECTOR_IP=__dcae_collector_ip__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_lb_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vlb.sh\n chmod +x v_lb_init.sh\n chmod +x vlb.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $DCAE_COLLECTOR_IP > config/dcae_collector_ip.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n LOCAL_PUBLIC_IPADDR=$(ifconfig eth0 | grep \"inet addr\" | tr -s \' \' | cut -d\' \' -f3 | cut -d\':\' -f2)\n echo $LOCAL_PUBLIC_IPADDR > config/local_public_ipaddr.txt\n mv vlb.sh /etc/init.d\n update-rc.d vlb.sh defaults\n ./v_lb_init.sh\n\n vlb_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: vlb_private_network }\n fixed_ips: [{\"subnet\": { get_resource: vlb_private_subnet }, \"ip_address\": { get_param: vlb_private_ip_0 }}]\n\n vlb_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vlb_private_ip_1 }}]\n\n vdns_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vdns_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vdns_private_0_port }\n - port: { get_resource: vdns_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __lb_oam_int__ : { get_param: vlb_private_ip_1 }\n __lb_private_ipaddr__: { get_param: vlb_private_ip_0 }\n __local_private_ipaddr__: { get_param: vdns_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n LB_OAM_INT=__lb_oam_int__\n LB_PRIVATE_IPADDR=__lb_private_ipaddr__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_dns_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vdns.sh\n chmod +x v_dns_init.sh\n chmod +x vdns.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $LB_OAM_INT > config/lb_oam_int.txt\n echo $LB_PRIVATE_IPADDR > config/lb_private_ipaddr.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vdns.sh /etc/init.d\n update-rc.d vdns.sh defaults\n ./v_dns_init.sh\n\n vdns_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: vlb_private_network }\n fixed_ips: [{\"subnet\": { get_resource: vlb_private_subnet }, \"ip_address\": { get_param: vdns_private_ip_0 }}]\n\n vdns_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_1 }}]\n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID2','dnsscaling.yaml','1.0','DNS Scaling Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy a vDNS for OpenECOMP (scaling-up scenario)\n\nparameters:\n vlb_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vlb_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n vlb_private_net_id:\n type: string\n label: vLoadBalancer private network name or ID\n description: Private network that connects vLoadBalancer with vDNSs\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n vlb_private_ip_0:\n type: string\n label: vLoadBalancer private IP address towards the private network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with the vDNSs\n vlb_private_ip_1:\n type: string\n label: vLoadBalancer private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vLoadBalancer to communicate with ECOMP components\n vdns_private_ip_0:\n type: string\n label: vDNS private IP address towards the private network\n description: Private IP address that is assigned to the vDNS to communicate with the vLoadBalancer\n vdns_private_ip_1:\n type: string\n label: vDNS private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vDNS to communicate with ECOMP components\n vdns_name_0:\n type: string\n label: vDNS name\n description: Name of the vDNS\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vLoadBalancer Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n vdns_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vlb_image_name }\n flavor: { get_param: vlb_flavor_name }\n name: { get_param: vdns_name_0 }\n key_name: { get_param: key_name }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vdns_private_0_port }\n - port: { get_resource: vdns_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __lb_oam_int__ : { get_param: vlb_private_ip_1 }\n __lb_private_ipaddr__: { get_param: vlb_private_ip_0 }\n __local_private_ipaddr__: { get_param: vdns_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n LB_OAM_INT=__lb_oam_int__\n LB_PRIVATE_IPADDR=__lb_private_ipaddr__\n LOCAL_PRIVATE_IPADDR=__local_private_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_dns_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vdns.sh\n chmod +x v_dns_init.sh\n chmod +x vdns.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $LB_OAM_INT > config/lb_oam_int.txt\n echo $LB_PRIVATE_IPADDR > config/lb_private_ipaddr.txt\n echo $LOCAL_PRIVATE_IPADDR > config/local_private_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vdns.sh /etc/init.d\n update-rc.d vdns.sh defaults\n ./v_dns_init.sh\n\n vdns_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: vlb_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: vlb_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_0 }}]\n\n vdns_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vdns_private_ip_1 }}]\n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','dcae_collector_ip','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','ecomp_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','ecomp_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','key_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','public_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','pub_key','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdns_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdns_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vdsn_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vf_module_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_flavor_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_image_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vlb_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','vnf_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID1','webserver_ip','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','dcae_collector_ip','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','ecomp_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','key_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','public_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','pub_key','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdns_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdns_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vdsn_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vf_module_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_flavor_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_image_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vlb_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','vnf_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID2','webserver_ip','','string',NULL);
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('1e34774e-715e-4fd6-bd09-7b654622f35i','dns-service','585822c8-4027-4f84-ba50-e9248606f111','1.0','dns service for unit test','2016-11-14 13:04:07',NULL);
-
-INSERT INTO `service_to_resource_customizations` (`SERVICE_MODEL_UUID`, `RESOURCE_MODEL_CUSTOMIZATION_UUID`, `MODEL_TYPE`, `CREATION_TIMESTAMP`) VALUES ('1e34774e-715e-4fd6-bd09-7b654622f35i','302aa6be-a9fe-11e7-8b4b-0242ac120002','vnf','2017-10-05 18:51:28');
-
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-1::module-1.group','585822c7-4027-4f84-ba50-e9248606f132','1.0','VF_RI1_DNS::module-1',NULL,1,'Artifact-UUID1',NULL,'2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131');
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-2::module-1.group','585822c7-4027-4f84-ba50-e9248606f133','1.0','VF_RI1_DNS::module-2',NULL,0,'Artifact-UUID2',NULL,'2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131');
-
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('30316d81-a9fe-11e7-8b4b-0242ac120002',NULL,1,0,NULL,NULL,'EnvArtifact-UUID1',NULL,'2017-10-05 18:51:25','1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-1::module-1.group');
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('303170ae-a9fe-11e7-8b4b-0242ac120002',NULL,0,0,NULL,NULL,'EnvArtifact-UUID2',NULL,'2017-10-05 18:51:25','1e34774e-715e-4fd5-bd08-7b654622f33e.VF_RI1_DNS::module-2::module-1.group');
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','30316d81-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:51:26');
-
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','303170ae-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:51:26');
-
-INSERT INTO `vnf_resource` (`ORCHESTRATION_MODE`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `MODEL_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `TOSCA_NODE_TYPE`, `HEAT_TEMPLATE_ARTIFACT_UUID`) VALUES ('HEAT','dns service for unit test1707MIGRATED','2016-11-14 13:04:07','585822c7-4027-4f84-ba50-e9248606f131',NULL,NULL,'585822c7-4027-4f84-ba50-e9248606f112','1.0','DNSResource',NULL,NULL);
-
-INSERT INTO `vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`, `MODEL_INSTANCE_NAME`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_MAX_COUNT`, `NF_TYPE`, `NF_ROLE`, `NF_FUNCTION`, `NF_NAMING_CODE`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('302aa6be-a9fe-11e7-8b4b-0242ac120002','DNSResource-1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2017-10-05 18:51:25','585822c7-4027-4f84-ba50-e9248606f131');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/create_mso_db-demo-vfw.sql b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/create_mso_db-demo-vfw.sql
deleted file mode 100644
index 15001050b2..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/create_mso_db-demo-vfw.sql
+++ /dev/null
@@ -1,59 +0,0 @@
-SOURCE ../default/create_mso_db-default.sql
-
-USE `mso_requests`;
-DROP USER 'mso';
-CREATE USER 'mso';
-GRANT ALL on mso_requests.* to 'mso' identified by 'mso123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `mso_catalog`;
-DROP USER 'catalog';
-CREATE USER 'catalog';
-GRANT ALL on mso_catalog.* to 'catalog' identified by 'catalog123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
-
-INSERT INTO `heat_environment` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('EnvArtifact-UUID3','base_vfw.env','1.0','base_vfw ENV file','parameters:\n vfw_image_name: Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)\n vfw_flavor_name: 4 GB General Purpose v1\n public_net_id: 00000000-0000-0000-0000-000000000000\n unprotected_private_net_id: zdfw1fwl01_unprotected\n protected_private_net_id: zdfw1fwl01_protected\n ecomp_private_net_id: oam_ecomp\n unprotected_private_net_cidr: 192.168.10.0/24\n protected_private_net_cidr: 192.168.20.0/24\n ecomp_private_net_cidr: 192.168.9.0/24\n vfw_private_ip_0: 192.168.10.100\n vfw_private_ip_1: 192.168.20.100\n vfw_private_ip_2: 192.168.9.100\n vpg_private_ip_0: 192.168.10.200\n vpg_private_ip_1: 192.168.9.200\n vsn_private_ip_0: 192.168.20.250\n vsn_private_ip_1: 192.168.9.250\n vfw_name_0: zdfw1fwl01fwl01\n vpg_name_0: zdfw1fwl01pgn01\n vsn_name_0: zdfw1fwl01snk01\n vnf_id: vFirewall_demo_app\n vf_module_id: vFirewall\n webserver_ip: 162.242.237.182\n dcae_collector_ip: 192.168.9.1\n key_name: vfw_key\n pub_key: INSERT YOUR PUBLIC KEY HERE','MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template` (`ARTIFACT_UUID`, `NAME`, `VERSION`, `DESCRIPTION`, `BODY`, `TIMEOUT_MINUTES`, `ARTIFACT_CHECKSUM`, `CREATION_TIMESTAMP`) VALUES ('Artifact-UUID3','base_vfw.yaml','1.0','Base VFW Heat','heat_template_version: 2013-05-23\n\ndescription: Heat template to deploy vFirewall demo app for OpenECOMP\n\nparameters:\n vfw_image_name:\n type: string\n label: Image name or ID\n description: Image to be used for compute instance\n vfw_flavor_name:\n type: string\n label: Flavor\n description: Type of instance (flavor) to be used\n public_net_id:\n type: string\n label: Public network name or ID\n description: Public network that enables remote connection to VNF\n unprotected_private_net_id:\n type: string\n label: Unprotected private network name or ID\n description: Private network that connects vPacketGenerator with vFirewall\n protected_private_net_id:\n type: string\n label: Protected private network name or ID\n description: Private network that connects vFirewall with vSink\n ecomp_private_net_id:\n type: string\n label: ECOMP management network name or ID\n description: Private network that connects ECOMP component and the VNF\n unprotected_private_net_cidr:\n type: string\n label: Unprotected private network CIDR\n description: The CIDR of the unprotected private network\n protected_private_net_cidr:\n type: string\n label: Protected private network CIDR\n description: The CIDR of the protected private network\n ecomp_private_net_cidr:\n type: string\n label: ECOMP private network CIDR\n description: The CIDR of the protected private network\n vfw_private_ip_0:\n type: string\n label: vFirewall private IP address towards the unprotected network\n description: Private IP address that is assigned to the vFirewall to communicate with the vPacketGenerator\n vfw_private_ip_1:\n type: string\n label: vFirewall private IP address towards the protected network\n description: Private IP address that is assigned to the vFirewall to communicate with the vSink\n vfw_private_ip_2:\n type: string\n label: vFirewall private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vFirewall to communicate with ECOMP components\n vpg_private_ip_0:\n type: string\n label: vPacketGenerator private IP address towards the unprotected network\n description: Private IP address that is assigned to the vPacketGenerator to communicate with the vFirewall\n vpg_private_ip_1:\n type: string\n label: vPacketGenerator private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vPacketGenerator to communicate with ECOMP components\n vsn_private_ip_0:\n type: string\n label: vSink private IP address towards the protected network\n description: Private IP address that is assigned to the vSink to communicate with the vFirewall\n vsn_private_ip_1:\n type: string\n label: vSink private IP address towards the ECOMP management network\n description: Private IP address that is assigned to the vSink to communicate with ECOMP components\n vfw_name_0:\n type: string\n label: vFirewall name\n description: Name of the vFirewall\n vpg_name_0:\n type: string\n label: vPacketGenerator name\n description: Name of the vPacketGenerator\n vsn_name_0:\n type: string\n label: vSink name\n description: Name of the vSink\n vnf_id:\n type: string\n label: VNF ID\n description: The VNF ID is provided by ECOMP\n vf_module_id:\n type: string\n label: vFirewall module ID\n description: The vFirewall Module ID is provided by ECOMP\n webserver_ip:\n type: string\n label: Webserver IP address\n description: IP address of the webserver that hosts the source code and binaries\n dcae_collector_ip:\n type: string\n label: DCAE collector IP address\n description: IP address of the DCAE collector\n key_name:\n type: string\n label: Key pair name\n description: Public/Private key pair name\n pub_key:\n type: string\n label: Public key\n description: Public key to be installed on the compute instance\n\nresources:\n my_keypair:\n type: OS::Nova::KeyPair\n properties:\n name: { get_param: key_name }\n public_key: { get_param: pub_key }\n save_private_key: false\n\n unprotected_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: unprotected_private_net_id }\n\n protected_private_network:\n type: OS::Neutron::Net\n properties:\n name: { get_param: protected_private_net_id }\n\n unprotected_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n network_id: { get_resource: unprotected_private_network }\n cidr: { get_param: unprotected_private_net_cidr }\n\n protected_private_subnet:\n type: OS::Neutron::Subnet\n properties:\n network_id: { get_resource: protected_private_network }\n cidr: { get_param: protected_private_net_cidr }\n\n vfw_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vfw_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vfw_private_0_port }\n - port: { get_resource: vfw_private_1_port }\n - port: { get_resource: vfw_private_2_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __dcae_collector_ip__ : { get_param: dcae_collector_ip }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n DCAE_COLLECTOR_IP=__dcae_collector_ip__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_firewall_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vfirewall.sh\n chmod +x v_firewall_init.sh\n chmod +x vfirewall.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $DCAE_COLLECTOR_IP > config/dcae_collector_ip.txt\n echo \"no\" > config/install.txt\n mv vfirewall.sh /etc/init.d\n sudo update-rc.d vfirewall.sh defaults\n ./v_firewall_init.sh\n\n vfw_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: unprotected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: unprotected_private_subnet }, \"ip_address\": { get_param: vfw_private_ip_0 }}]\n\n vfw_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: protected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: protected_private_subnet }, \"ip_address\": { get_param: vfw_private_ip_1 }}]\n\n vfw_private_2_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vfw_private_ip_2 }}]\n\n vpg_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vpg_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vpg_private_0_port }\n - port: { get_resource: vpg_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __fw_ipaddr__: { get_param: vfw_private_ip_0 }\n __protected_net_cidr__: { get_param: protected_private_net_cidr }\n __sink_ipaddr__: { get_param: vsn_private_ip_0 }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n FW_IPADDR=__fw_ipaddr__\n PROTECTED_NET_CIDR=__protected_net_cidr__\n SINK_IPADDR=__sink_ipaddr__\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_packetgen_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vpacketgen.sh\n chmod +x v_packetgen_init.sh\n chmod +x vpacketgen.sh\n echo $WEBSERVER_IP > config/webserver_ip.txt\n echo $FW_IPADDR > config/fw_ipaddr.txt\n echo $PROTECTED_NET_CIDR > config/protected_net_cidr.txt\n echo $SINK_IPADDR > config/sink_ipaddr.txt\n echo \"no\" > config/install.txt\n mv vpacketgen.sh /etc/init.d\n sudo update-rc.d vpacketgen.sh defaults\n ./v_packetgen_init.sh\n\n vpg_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: unprotected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: unprotected_private_subnet }, \"ip_address\": { get_param: vpg_private_ip_0 }}]\n\n vpg_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vpg_private_ip_1 }}]\n\n vsn_0:\n type: OS::Nova::Server\n properties:\n image: { get_param: vfw_image_name }\n flavor: { get_param: vfw_flavor_name }\n name: { get_param: vsn_name_0 }\n key_name: { get_resource: my_keypair }\n networks:\n - network: { get_param: public_net_id }\n - port: { get_resource: vsn_private_0_port }\n - port: { get_resource: vsn_private_1_port }\n metadata: {vnf_id: { get_param: vnf_id }, vf_module_id: { get_param: vf_module_id }}\n user_data_format: RAW\n user_data:\n str_replace:\n params:\n __webserver__: { get_param: webserver_ip }\n __protected_net_gw__: { get_param: vfw_private_ip_1 }\n __unprotected_net__: { get_param: unprotected_private_net_cidr }\n template: |\n #!/bin/bash\n\n WEBSERVER_IP=__webserver__\n PROTECTED_NET_GW=__protected_net_gw__\n UNPROTECTED_NET=__unprotected_net__\n UNPROTECTED_NET=$(echo $UNPROTECTED_NET | cut -d\'/\' -f1)\n\n mkdir /opt/config\n cd /opt\n wget http://$WEBSERVER_IP/demo_repo/v_sink_init.sh\n wget http://$WEBSERVER_IP/demo_repo/vsink.sh\n chmod +x v_sink_init.sh\n chmod +x vsink.sh\n echo $PROTECTED_NET_GW > config/protected_net_gw.txt\n echo $UNPROTECTED_NET > config/unprotected_net.txt\n echo \"no\" > config/install.txt\n mv vsink.sh /etc/init.d\n sudo update-rc.d vsink.sh defaults\n ./v_sink_init.sh\n\n vsn_private_0_port:\n type: OS::Neutron::Port\n properties:\n network: { get_resource: protected_private_network }\n fixed_ips: [{\"subnet\": { get_resource: protected_private_subnet }, \"ip_address\": { get_param: vsn_private_ip_0 }}]\n\n vsn_private_1_port:\n type: OS::Neutron::Port\n properties:\n network: { get_param: ecomp_private_net_id }\n fixed_ips: [{\"subnet\": { get_param: ecomp_private_net_id }, \"ip_address\": { get_param: vsn_private_ip_1 }}]\n \n',300,'MANUAL RECORD','2016-11-14 13:04:07');
-
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','dcae_collector_ip','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','ecomp_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','ecomp_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','key_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','protected_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','protected_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','public_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','pub_key','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','unprotected_private_net_cidr','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','unprotected_private_net_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_flavor_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_image_name','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vfw_private_ip_2','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vf_module_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vnf_id','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vpg_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_name_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_private_ip_0','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','vsn_private_ip_1','','string',NULL);
-INSERT INTO `heat_template_params` (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`, `IS_REQUIRED`, `PARAM_TYPE`, `PARAM_ALIAS`) VALUES ('Artifact-UUID3','webserver_ip','','string',NULL);
-
-INSERT INTO `service` (`MODEL_UUID`, `MODEL_NAME`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `TOSCA_CSAR_ARTIFACT_UUID`) VALUES ('2e34774e-715e-4fd5-bd09-7b654622f35i','vfw-service','585822c7-4027-4f84-ba50-e9248606f112','1.0','VFW service','2016-11-14 13:04:07',NULL);
-
-INSERT INTO `vf_module` (`MODEL_UUID`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `DESCRIPTION`, `IS_BASE`, `HEAT_TEMPLATE_ARTIFACT_UUID`, `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('1e34774e-715e-4fd5-bd08-7b654622f33f.VF_RI1_VFW::module-1::module-1.group','585822c7-4027-4f84-ba50-e9248606f134','1.0','VF_RI1_VFW::module-1',NULL,1,'Artifact-UUID3',NULL,'2016-11-14 13:04:07','685822c7-4027-4f84-ba50-e9248606f132');
-
-INSERT INTO `vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`, `LABEL`, `INITIAL_COUNT`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_COUNT`, `HEAT_ENVIRONMENT_ARTIFACT_UUID`, `VOL_ENVIRONMENT_ARTIFACT_UUID`, `CREATION_TIMESTAMP`, `VF_MODULE_MODEL_UUID`) VALUES ('5aa23938-a9fe-11e7-8b4b-0242ac120002',NULL,1,0,NULL,NULL,'EnvArtifact-UUID3',NULL,'2017-10-05 18:52:03','1e34774e-715e-4fd5-bd08-7b654622f33f.VF_RI1_VFW::module-1::module-1.group');
-
-INSERT INTO `vnf_res_custom_to_vf_module_custom` (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`, `CREATION_TIMESTAMP`) VALUES ('5a9bd247-a9fe-11e7-8b4b-0242ac120002','5aa23938-a9fe-11e7-8b4b-0242ac120002','2017-10-05 18:52:03');
-
-INSERT INTO `vnf_resource` (`ORCHESTRATION_MODE`, `DESCRIPTION`, `CREATION_TIMESTAMP`, `MODEL_UUID`, `AIC_VERSION_MIN`, `AIC_VERSION_MAX`, `MODEL_INVARIANT_UUID`, `MODEL_VERSION`, `MODEL_NAME`, `TOSCA_NODE_TYPE`, `HEAT_TEMPLATE_ARTIFACT_UUID`) VALUES ('HEAT','VFW service1707MIGRATED','2016-11-14 13:04:07','685822c7-4027-4f84-ba50-e9248606f132',NULL,NULL,'585822c7-4027-4f84-ba50-e9248606f113','1.0','VFWResource',NULL,NULL);
-
-INSERT INTO `vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`, `MODEL_INSTANCE_NAME`, `MIN_INSTANCES`, `MAX_INSTANCES`, `AVAILABILITY_ZONE_MAX_COUNT`, `NF_TYPE`, `NF_ROLE`, `NF_FUNCTION`, `NF_NAMING_CODE`, `CREATION_TIMESTAMP`, `VNF_RESOURCE_MODEL_UUID`) VALUES ('5a9bd247-a9fe-11e7-8b4b-0242ac120002','VFWResource-1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2017-10-05 18:52:03','685822c7-4027-4f84-ba50-e9248606f132');
-
-SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mariadb_engine_7.7.3-ee.sql b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mariadb_engine_7.7.3-ee.sql
deleted file mode 100644
index b9b8dd62c9..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mariadb_engine_7.7.3-ee.sql
+++ /dev/null
@@ -1,1195 +0,0 @@
-DROP DATABASE IF EXISTS `camundabpmn`;
-
-CREATE DATABASE `camundabpmn`;
-
-USE `camundabpmn`;
-
-# DROP USER IF EXISTS 'camunda';
-delete from mysql.user where User='camunda';
-CREATE USER 'camunda';
-GRANT ALL on camundabpmn.* to 'camunda' identified by 'camunda123' with GRANT OPTION;
-FLUSH PRIVILEGES;
-
-USE `camundabpmn`;
-
-create table ACT_GE_PROPERTY (
- NAME_ varchar(64),
- VALUE_ varchar(300),
- REV_ integer,
- primary key (NAME_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-insert into ACT_GE_PROPERTY
-values ('schema.version', 'fox', 1);
-
-insert into ACT_GE_PROPERTY
-values ('schema.history', 'create(fox)', 1);
-
-insert into ACT_GE_PROPERTY
-values ('next.dbid', '1', 1);
-
-insert into ACT_GE_PROPERTY
-values ('deployment.lock', '0', 1);
-
-insert into ACT_GE_PROPERTY
-values ('history.cleanup.job.lock', '0', 1);
-
-create table ACT_GE_BYTEARRAY (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- DEPLOYMENT_ID_ varchar(64),
- BYTES_ LONGBLOB,
- GENERATED_ TINYINT,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RE_DEPLOYMENT (
- ID_ varchar(64),
- NAME_ varchar(255),
- DEPLOY_TIME_ timestamp(3),
- SOURCE_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EXECUTION (
- ID_ varchar(64),
- REV_ integer,
- PROC_INST_ID_ varchar(64),
- BUSINESS_KEY_ varchar(255),
- PARENT_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- SUPER_EXEC_ varchar(64),
- SUPER_CASE_EXEC_ varchar(64),
- CASE_INST_ID_ varchar(64),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- IS_ACTIVE_ TINYINT,
- IS_CONCURRENT_ TINYINT,
- IS_SCOPE_ TINYINT,
- IS_EVENT_SCOPE_ TINYINT,
- SUSPENSION_STATE_ integer,
- CACHED_ENT_STATE_ integer,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_JOB (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- TYPE_ varchar(255) NOT NULL,
- LOCK_EXP_TIME_ timestamp(3) NULL,
- LOCK_OWNER_ varchar(255),
- EXCLUSIVE_ boolean,
- EXECUTION_ID_ varchar(64),
- PROCESS_INSTANCE_ID_ varchar(64),
- PROCESS_DEF_ID_ varchar(64),
- PROCESS_DEF_KEY_ varchar(255),
- RETRIES_ integer,
- EXCEPTION_STACK_ID_ varchar(64),
- EXCEPTION_MSG_ varchar(4000),
- DUEDATE_ timestamp(3) NULL,
- REPEAT_ varchar(255),
- HANDLER_TYPE_ varchar(255),
- HANDLER_CFG_ varchar(4000),
- DEPLOYMENT_ID_ varchar(64),
- SUSPENSION_STATE_ integer NOT NULL DEFAULT 1,
- JOB_DEF_ID_ varchar(64),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_JOBDEF (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- ACT_ID_ varchar(255),
- JOB_TYPE_ varchar(255) NOT NULL,
- JOB_CONFIGURATION_ varchar(255),
- SUSPENSION_STATE_ integer,
- JOB_PRIORITY_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RE_PROCDEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- HAS_START_FORM_KEY_ TINYINT,
- SUSPENSION_STATE_ integer,
- TENANT_ID_ varchar(64),
- VERSION_TAG_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_TASK (
- ID_ varchar(64),
- REV_ integer,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- NAME_ varchar(255),
- PARENT_TASK_ID_ varchar(64),
- DESCRIPTION_ varchar(4000),
- TASK_DEF_KEY_ varchar(255),
- OWNER_ varchar(255),
- ASSIGNEE_ varchar(255),
- DELEGATION_ varchar(64),
- PRIORITY_ integer,
- CREATE_TIME_ timestamp(3),
- DUE_DATE_ datetime(3),
- FOLLOW_UP_DATE_ datetime(3),
- SUSPENSION_STATE_ integer,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_IDENTITYLINK (
- ID_ varchar(64),
- REV_ integer,
- GROUP_ID_ varchar(255),
- TYPE_ varchar(255),
- USER_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_VARIABLE (
- ID_ varchar(64) not null,
- REV_ integer,
- TYPE_ varchar(255) not null,
- NAME_ varchar(255) not null,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- TASK_ID_ varchar(64),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- VAR_SCOPE_ varchar(64) not null,
- SEQUENCE_COUNTER_ bigint,
- IS_CONCURRENT_LOCAL_ TINYINT,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EVENT_SUBSCR (
- ID_ varchar(64) not null,
- REV_ integer,
- EVENT_TYPE_ varchar(255) not null,
- EVENT_NAME_ varchar(255),
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- ACTIVITY_ID_ varchar(255),
- CONFIGURATION_ varchar(255),
- CREATED_ timestamp(3) not null,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_INCIDENT (
- ID_ varchar(64) not null,
- REV_ integer not null,
- INCIDENT_TIMESTAMP_ timestamp(3) not null,
- INCIDENT_MSG_ varchar(4000),
- INCIDENT_TYPE_ varchar(255) not null,
- EXECUTION_ID_ varchar(64),
- ACTIVITY_ID_ varchar(255),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- CAUSE_INCIDENT_ID_ varchar(64),
- ROOT_CAUSE_INCIDENT_ID_ varchar(64),
- CONFIGURATION_ varchar(255),
- TENANT_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_AUTHORIZATION (
- ID_ varchar(64) not null,
- REV_ integer not null,
- TYPE_ integer not null,
- GROUP_ID_ varchar(255),
- USER_ID_ varchar(255),
- RESOURCE_TYPE_ integer not null,
- RESOURCE_ID_ varchar(64),
- PERMS_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_FILTER (
- ID_ varchar(64) not null,
- REV_ integer not null,
- RESOURCE_TYPE_ varchar(255) not null,
- NAME_ varchar(255) not null,
- OWNER_ varchar(255),
- QUERY_ LONGTEXT not null,
- PROPERTIES_ LONGTEXT,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_METER_LOG (
- ID_ varchar(64) not null,
- NAME_ varchar(64) not null,
- REPORTER_ varchar(255),
- VALUE_ bigint,
- TIMESTAMP_ timestamp(3),
- MILLISECONDS_ bigint DEFAULT 0,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_EXT_TASK (
- ID_ varchar(64) not null,
- REV_ integer not null,
- WORKER_ID_ varchar(255),
- TOPIC_NAME_ varchar(255),
- RETRIES_ integer,
- ERROR_MSG_ varchar(4000),
- ERROR_DETAILS_ID_ varchar(64),
- LOCK_EXP_TIME_ timestamp(3) NULL,
- SUSPENSION_STATE_ integer,
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_RU_BATCH (
- ID_ varchar(64) not null,
- REV_ integer not null,
- TYPE_ varchar(255),
- TOTAL_JOBS_ integer,
- JOBS_CREATED_ integer,
- JOBS_PER_SEED_ integer,
- INVOCATIONS_PER_JOB_ integer,
- SEED_JOB_DEF_ID_ varchar(64),
- BATCH_JOB_DEF_ID_ varchar(64),
- MONITOR_JOB_DEF_ID_ varchar(64),
- SUSPENSION_STATE_ integer,
- CONFIGURATION_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_EXEC_BUSKEY on ACT_RU_EXECUTION(BUSINESS_KEY_);
-create index ACT_IDX_EXEC_TENANT_ID on ACT_RU_EXECUTION(TENANT_ID_);
-create index ACT_IDX_TASK_CREATE on ACT_RU_TASK(CREATE_TIME_);
-create index ACT_IDX_TASK_ASSIGNEE on ACT_RU_TASK(ASSIGNEE_);
-create index ACT_IDX_TASK_TENANT_ID on ACT_RU_TASK(TENANT_ID_);
-create index ACT_IDX_IDENT_LNK_USER on ACT_RU_IDENTITYLINK(USER_ID_);
-create index ACT_IDX_IDENT_LNK_GROUP on ACT_RU_IDENTITYLINK(GROUP_ID_);
-create index ACT_IDX_EVENT_SUBSCR_CONFIG_ on ACT_RU_EVENT_SUBSCR(CONFIGURATION_);
-create index ACT_IDX_EVENT_SUBSCR_TENANT_ID on ACT_RU_EVENT_SUBSCR(TENANT_ID_);
-create index ACT_IDX_VARIABLE_TASK_ID on ACT_RU_VARIABLE(TASK_ID_);
-create index ACT_IDX_VARIABLE_TENANT_ID on ACT_RU_VARIABLE(TENANT_ID_);
-create index ACT_IDX_ATHRZ_PROCEDEF on ACT_RU_IDENTITYLINK(PROC_DEF_ID_);
-create index ACT_IDX_INC_CONFIGURATION on ACT_RU_INCIDENT(CONFIGURATION_);
-create index ACT_IDX_INC_TENANT_ID on ACT_RU_INCIDENT(TENANT_ID_);
--- CAM-5914
-create index ACT_IDX_JOB_EXECUTION_ID on ACT_RU_JOB(EXECUTION_ID_);
--- this index needs to be limited in mariadb see CAM-6938
-create index ACT_IDX_JOB_HANDLER on ACT_RU_JOB(HANDLER_TYPE_(100),HANDLER_CFG_(155));
-create index ACT_IDX_JOB_PROCINST on ACT_RU_JOB(PROCESS_INSTANCE_ID_);
-create index ACT_IDX_JOB_TENANT_ID on ACT_RU_JOB(TENANT_ID_);
-create index ACT_IDX_JOBDEF_TENANT_ID on ACT_RU_JOBDEF(TENANT_ID_);
-
--- new metric milliseconds column
-CREATE INDEX ACT_IDX_METER_LOG_MS ON ACT_RU_METER_LOG(MILLISECONDS_);
-CREATE INDEX ACT_IDX_METER_LOG_NAME_MS ON ACT_RU_METER_LOG(NAME_, MILLISECONDS_);
-CREATE INDEX ACT_IDX_METER_LOG_REPORT ON ACT_RU_METER_LOG(NAME_, REPORTER_, MILLISECONDS_);
-
--- old metric timestamp column
-CREATE INDEX ACT_IDX_METER_LOG_TIME ON ACT_RU_METER_LOG(TIMESTAMP_);
-CREATE INDEX ACT_IDX_METER_LOG ON ACT_RU_METER_LOG(NAME_, TIMESTAMP_);
-
-create index ACT_IDX_EXT_TASK_TOPIC on ACT_RU_EXT_TASK(TOPIC_NAME_);
-create index ACT_IDX_EXT_TASK_TENANT_ID on ACT_RU_EXT_TASK(TENANT_ID_);
-create index ACT_IDX_EXT_TASK_PRIORITY ON ACT_RU_EXT_TASK(PRIORITY_);
-create index ACT_IDX_EXT_TASK_ERR_DETAILS ON ACT_RU_EXT_TASK(ERROR_DETAILS_ID_);
-create index ACT_IDX_AUTH_GROUP_ID ON ACT_RU_AUTHORIZATION(GROUP_ID_);
-create index ACT_IDX_JOB_JOB_DEF_ID on ACT_RU_JOB(JOB_DEF_ID_);
-
-alter table ACT_GE_BYTEARRAY
- add constraint ACT_FK_BYTEARR_DEPL
- foreign key (DEPLOYMENT_ID_)
- references ACT_RE_DEPLOYMENT (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PARENT
- foreign key (PARENT_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_SUPER
- foreign key (SUPER_EXEC_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_EXECUTION
- add constraint ACT_FK_EXE_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_IDENTITYLINK
- add constraint ACT_FK_TSKASS_TASK
- foreign key (TASK_ID_)
- references ACT_RU_TASK (ID_);
-
-alter table ACT_RU_IDENTITYLINK
- add constraint ACT_FK_ATHRZ_PROCEDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF(ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION(ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_BYTEARRAY
- foreign key (BYTEARRAY_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-alter table ACT_RU_JOB
- add constraint ACT_FK_JOB_EXCEPTION
- foreign key (EXCEPTION_STACK_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-alter table ACT_RU_EVENT_SUBSCR
- add constraint ACT_FK_EVENT_EXEC
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION(ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_PROCINST
- foreign key (PROC_INST_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_PROCDEF
- foreign key (PROC_DEF_ID_)
- references ACT_RE_PROCDEF (ID_);
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_CAUSE
- foreign key (CAUSE_INCIDENT_ID_)
- references ACT_RU_INCIDENT (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_RCAUSE
- foreign key (ROOT_CAUSE_INCIDENT_ID_)
- references ACT_RU_INCIDENT (ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_EXT_TASK
- add constraint ACT_FK_EXT_TASK_ERROR_DETAILS
- foreign key (ERROR_DETAILS_ID_)
- references ACT_GE_BYTEARRAY (ID_);
-
-create index ACT_IDX_INC_JOB_DEF on ACT_RU_INCIDENT(JOB_DEF_ID_);
-alter table ACT_RU_INCIDENT
- add constraint ACT_FK_INC_JOB_DEF
- foreign key (JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-alter table ACT_RU_AUTHORIZATION
- add constraint ACT_UNIQ_AUTH_USER
- unique (USER_ID_,TYPE_,RESOURCE_TYPE_,RESOURCE_ID_);
-
-alter table ACT_RU_AUTHORIZATION
- add constraint ACT_UNIQ_AUTH_GROUP
- unique (GROUP_ID_,TYPE_,RESOURCE_TYPE_,RESOURCE_ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_UNIQ_VARIABLE
- unique (VAR_SCOPE_, NAME_);
-
-alter table ACT_RU_EXT_TASK
- add constraint ACT_FK_EXT_TASK_EXE
- foreign key (EXECUTION_ID_)
- references ACT_RU_EXECUTION (ID_);
-
-create index ACT_IDX_BATCH_SEED_JOB_DEF ON ACT_RU_BATCH(SEED_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_SEED_JOB_DEF
- foreign key (SEED_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-create index ACT_IDX_BATCH_MONITOR_JOB_DEF ON ACT_RU_BATCH(MONITOR_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_MONITOR_JOB_DEF
- foreign key (MONITOR_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
-create index ACT_IDX_BATCH_JOB_DEF ON ACT_RU_BATCH(BATCH_JOB_DEF_ID_);
-alter table ACT_RU_BATCH
- add constraint ACT_FK_BATCH_JOB_DEF
- foreign key (BATCH_JOB_DEF_ID_)
- references ACT_RU_JOBDEF (ID_);
-
--- indexes for deadlock problems - https://app.camunda.com/jira/browse/CAM-2567 --
-create index ACT_IDX_INC_CAUSEINCID on ACT_RU_INCIDENT(CAUSE_INCIDENT_ID_);
-create index ACT_IDX_INC_EXID on ACT_RU_INCIDENT(EXECUTION_ID_);
-create index ACT_IDX_INC_PROCDEFID on ACT_RU_INCIDENT(PROC_DEF_ID_);
-create index ACT_IDX_INC_PROCINSTID on ACT_RU_INCIDENT(PROC_INST_ID_);
-create index ACT_IDX_INC_ROOTCAUSEINCID on ACT_RU_INCIDENT(ROOT_CAUSE_INCIDENT_ID_);
--- index for deadlock problem - https://app.camunda.com/jira/browse/CAM-4440 --
-create index ACT_IDX_AUTH_RESOURCE_ID on ACT_RU_AUTHORIZATION(RESOURCE_ID_);
--- index to prevent deadlock on fk constraint - https://app.camunda.com/jira/browse/CAM-5440 --
-create index ACT_IDX_EXT_TASK_EXEC on ACT_RU_EXT_TASK(EXECUTION_ID_);
-
--- indexes to improve deployment
-create index ACT_IDX_BYTEARRAY_NAME on ACT_GE_BYTEARRAY(NAME_);
-create index ACT_IDX_DEPLOYMENT_NAME on ACT_RE_DEPLOYMENT(NAME_);
-create index ACT_IDX_DEPLOYMENT_TENANT_ID on ACT_RE_DEPLOYMENT(TENANT_ID_);
-create index ACT_IDX_JOBDEF_PROC_DEF_ID ON ACT_RU_JOBDEF(PROC_DEF_ID_);
-create index ACT_IDX_JOB_HANDLER_TYPE ON ACT_RU_JOB(HANDLER_TYPE_);
-create index ACT_IDX_EVENT_SUBSCR_EVT_NAME ON ACT_RU_EVENT_SUBSCR(EVENT_NAME_);
-create index ACT_IDX_PROCDEF_DEPLOYMENT_ID ON ACT_RE_PROCDEF(DEPLOYMENT_ID_);
-create index ACT_IDX_PROCDEF_TENANT_ID ON ACT_RE_PROCDEF(TENANT_ID_);
-create index ACT_IDX_PROCDEF_VER_TAG ON ACT_RE_PROCDEF(VERSION_TAG_);
--- create case definition table --
-create table ACT_RE_CASE_DEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- TENANT_ID_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create case execution table --
-create table ACT_RU_CASE_EXECUTION (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CASE_INST_ID_ varchar(64),
- SUPER_CASE_EXEC_ varchar(64),
- SUPER_EXEC_ varchar(64),
- BUSINESS_KEY_ varchar(255),
- PARENT_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- ACT_ID_ varchar(255),
- PREV_STATE_ integer,
- CURRENT_STATE_ integer,
- REQUIRED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create case sentry part table --
-
-create table ACT_RU_CASE_SENTRY_PART (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CASE_INST_ID_ varchar(64),
- CASE_EXEC_ID_ varchar(64),
- SENTRY_ID_ varchar(255),
- TYPE_ varchar(255),
- SOURCE_CASE_EXEC_ID_ varchar(64),
- STANDARD_EVENT_ varchar(255),
- SOURCE_ varchar(255),
- VARIABLE_EVENT_ varchar(255),
- VARIABLE_NAME_ varchar(255),
- SATISFIED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create index on business key --
-create index ACT_IDX_CASE_EXEC_BUSKEY on ACT_RU_CASE_EXECUTION(BUSINESS_KEY_);
-
--- create foreign key constraints on ACT_RU_CASE_EXECUTION --
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_) on delete cascade on update cascade;
-
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_PARENT
- foreign key (PARENT_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_CASE_EXECUTION
- add constraint ACT_FK_CASE_EXE_CASE_DEF
- foreign key (CASE_DEF_ID_)
- references ACT_RE_CASE_DEF(ID_);
-
--- create foreign key constraints on ACT_RU_VARIABLE --
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_CASE_EXE
- foreign key (CASE_EXECUTION_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_VARIABLE
- add constraint ACT_FK_VAR_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
--- create foreign key constraints on ACT_RU_TASK --
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_CASE_EXE
- foreign key (CASE_EXECUTION_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_TASK
- add constraint ACT_FK_TASK_CASE_DEF
- foreign key (CASE_DEF_ID_)
- references ACT_RE_CASE_DEF(ID_);
-
--- create foreign key constraints on ACT_RU_CASE_SENTRY_PART --
-alter table ACT_RU_CASE_SENTRY_PART
- add constraint ACT_FK_CASE_SENTRY_CASE_INST
- foreign key (CASE_INST_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-alter table ACT_RU_CASE_SENTRY_PART
- add constraint ACT_FK_CASE_SENTRY_CASE_EXEC
- foreign key (CASE_EXEC_ID_)
- references ACT_RU_CASE_EXECUTION(ID_);
-
-create index ACT_IDX_CASE_DEF_TENANT_ID on ACT_RE_CASE_DEF(TENANT_ID_);
-create index ACT_IDX_CASE_EXEC_TENANT_ID on ACT_RU_CASE_EXECUTION(TENANT_ID_);
--- create decision definition table --
-create table ACT_RE_DECISION_DEF (
- ID_ varchar(64) not null,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) not null,
- VERSION_ integer not null,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- DEC_REQ_ID_ varchar(64),
- DEC_REQ_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- HISTORY_TTL_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create decision requirements definition table --
-create table ACT_RE_DECISION_REQ_DEF (
- ID_ varchar(64) NOT NULL,
- REV_ integer,
- CATEGORY_ varchar(255),
- NAME_ varchar(255),
- KEY_ varchar(255) NOT NULL,
- VERSION_ integer NOT NULL,
- DEPLOYMENT_ID_ varchar(64),
- RESOURCE_NAME_ varchar(4000),
- DGRM_RESOURCE_NAME_ varchar(4000),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-alter table ACT_RE_DECISION_DEF
- add constraint ACT_FK_DEC_REQ
- foreign key (DEC_REQ_ID_)
- references ACT_RE_DECISION_REQ_DEF(ID_);
-
-create index ACT_IDX_DEC_DEF_TENANT_ID on ACT_RE_DECISION_DEF(TENANT_ID_);
-create index ACT_IDX_DEC_DEF_REQ_ID on ACT_RE_DECISION_DEF(DEC_REQ_ID_);
-create index ACT_IDX_DEC_REQ_DEF_TENANT_ID on ACT_RE_DECISION_REQ_DEF(TENANT_ID_);
-create table ACT_HI_PROCINST (
- ID_ varchar(64) not null,
- PROC_INST_ID_ varchar(64) not null,
- BUSINESS_KEY_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64) not null,
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- START_USER_ID_ varchar(255),
- START_ACT_ID_ varchar(255),
- END_ACT_ID_ varchar(255),
- SUPER_PROCESS_INSTANCE_ID_ varchar(64),
- SUPER_CASE_INSTANCE_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- DELETE_REASON_ varchar(4000),
- TENANT_ID_ varchar(64),
- STATE_ varchar(255),
- primary key (ID_),
- unique (PROC_INST_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_ACTINST (
- ID_ varchar(64) not null,
- PARENT_ACT_INST_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64) not null,
- PROC_INST_ID_ varchar(64) not null,
- EXECUTION_ID_ varchar(64) not null,
- ACT_ID_ varchar(255) not null,
- TASK_ID_ varchar(64),
- CALL_PROC_INST_ID_ varchar(64),
- CALL_CASE_INST_ID_ varchar(64),
- ACT_NAME_ varchar(255),
- ACT_TYPE_ varchar(255) not null,
- ASSIGNEE_ varchar(64),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- ACT_INST_STATE_ integer,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_TASKINST (
- ID_ varchar(64) not null,
- TASK_DEF_KEY_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- NAME_ varchar(255),
- PARENT_TASK_ID_ varchar(64),
- DESCRIPTION_ varchar(4000),
- OWNER_ varchar(255),
- ASSIGNEE_ varchar(255),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- DELETE_REASON_ varchar(4000),
- PRIORITY_ integer,
- DUE_DATE_ datetime(3),
- FOLLOW_UP_DATE_ datetime(3),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_VARINST (
- ID_ varchar(64) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- NAME_ varchar(255) not null,
- VAR_TYPE_ varchar(100),
- REV_ integer,
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_DETAIL (
- ID_ varchar(64) not null,
- TYPE_ varchar(255) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- VAR_INST_ID_ varchar(64),
- NAME_ varchar(255) not null,
- VAR_TYPE_ varchar(255),
- REV_ integer,
- TIME_ datetime(3) not null,
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- OPERATION_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_IDENTITYLINK (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- TYPE_ varchar(255),
- USER_ID_ varchar(255),
- GROUP_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- OPERATION_TYPE_ varchar(64),
- ASSIGNER_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_COMMENT (
- ID_ varchar(64) not null,
- TYPE_ varchar(255),
- TIME_ datetime(3) not null,
- USER_ID_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- ACTION_ varchar(255),
- MESSAGE_ varchar(4000),
- FULL_MSG_ LONGBLOB,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_ATTACHMENT (
- ID_ varchar(64) not null,
- REV_ integer,
- USER_ID_ varchar(255),
- NAME_ varchar(255),
- DESCRIPTION_ varchar(4000),
- TYPE_ varchar(255),
- TASK_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- URL_ varchar(4000),
- CONTENT_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_OP_LOG (
- ID_ varchar(64) not null,
- DEPLOYMENT_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- CASE_EXECUTION_ID_ varchar(64),
- TASK_ID_ varchar(64),
- JOB_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- BATCH_ID_ varchar(64),
- USER_ID_ varchar(255),
- TIMESTAMP_ timestamp(3) not null,
- OPERATION_TYPE_ varchar(64),
- OPERATION_ID_ varchar(64),
- ENTITY_TYPE_ varchar(30),
- PROPERTY_ varchar(64),
- ORG_VALUE_ varchar(4000),
- NEW_VALUE_ varchar(4000),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_INCIDENT (
- ID_ varchar(64) not null,
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- CREATE_TIME_ timestamp(3) not null,
- END_TIME_ timestamp(3) null,
- INCIDENT_MSG_ varchar(4000),
- INCIDENT_TYPE_ varchar(255) not null,
- ACTIVITY_ID_ varchar(255),
- CAUSE_INCIDENT_ID_ varchar(64),
- ROOT_CAUSE_INCIDENT_ID_ varchar(64),
- CONFIGURATION_ varchar(255),
- INCIDENT_STATE_ integer,
- TENANT_ID_ varchar(64),
- JOB_DEF_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_JOB_LOG (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- JOB_ID_ varchar(64) not null,
- JOB_DUEDATE_ timestamp(3) NULL,
- JOB_RETRIES_ integer,
- JOB_PRIORITY_ bigint NOT NULL DEFAULT 0,
- JOB_EXCEPTION_MSG_ varchar(4000),
- JOB_EXCEPTION_STACK_ID_ varchar(64),
- JOB_STATE_ integer,
- JOB_DEF_ID_ varchar(64),
- JOB_DEF_TYPE_ varchar(255),
- JOB_DEF_CONFIGURATION_ varchar(255),
- ACT_ID_ varchar(255),
- EXECUTION_ID_ varchar(64),
- PROCESS_INSTANCE_ID_ varchar(64),
- PROCESS_DEF_ID_ varchar(64),
- PROCESS_DEF_KEY_ varchar(255),
- DEPLOYMENT_ID_ varchar(64),
- SEQUENCE_COUNTER_ bigint,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_BATCH (
- ID_ varchar(64) not null,
- TYPE_ varchar(255),
- TOTAL_JOBS_ integer,
- JOBS_PER_SEED_ integer,
- INVOCATIONS_PER_JOB_ integer,
- SEED_JOB_DEF_ID_ varchar(64),
- MONITOR_JOB_DEF_ID_ varchar(64),
- BATCH_JOB_DEF_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- START_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_EXT_TASK_LOG (
- ID_ varchar(64) not null,
- TIMESTAMP_ timestamp(3) not null,
- EXT_TASK_ID_ varchar(64) not null,
- RETRIES_ integer,
- TOPIC_NAME_ varchar(255),
- WORKER_ID_ varchar(255),
- PRIORITY_ bigint NOT NULL DEFAULT 0,
- ERROR_MSG_ varchar(4000),
- ERROR_DETAILS_ID_ varchar(64),
- ACT_ID_ varchar(255),
- ACT_INST_ID_ varchar(64),
- EXECUTION_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- PROC_DEF_ID_ varchar(64),
- PROC_DEF_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- STATE_ integer,
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_HI_PRO_INST_END on ACT_HI_PROCINST(END_TIME_);
-create index ACT_IDX_HI_PRO_I_BUSKEY on ACT_HI_PROCINST(BUSINESS_KEY_);
-create index ACT_IDX_HI_PRO_INST_TENANT_ID on ACT_HI_PROCINST(TENANT_ID_);
-create index ACT_IDX_HI_PRO_INST_PROC_DEF_KEY on ACT_HI_PROCINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_ACT_INST_START on ACT_HI_ACTINST(START_TIME_);
-create index ACT_IDX_HI_ACT_INST_END on ACT_HI_ACTINST(END_TIME_);
-create index ACT_IDX_HI_ACT_INST_PROCINST on ACT_HI_ACTINST(PROC_INST_ID_, ACT_ID_);
-create index ACT_IDX_HI_ACT_INST_COMP on ACT_HI_ACTINST(EXECUTION_ID_, ACT_ID_, END_TIME_, ID_);
-create index ACT_IDX_HI_ACT_INST_STATS on ACT_HI_ACTINST(PROC_DEF_ID_, ACT_ID_, END_TIME_, ACT_INST_STATE_);
-create index ACT_IDX_HI_ACT_INST_TENANT_ID on ACT_HI_ACTINST(TENANT_ID_);
-create index ACT_IDX_HI_ACT_INST_PROC_DEF_KEY on ACT_HI_ACTINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_TASK_INST_TENANT_ID on ACT_HI_TASKINST(TENANT_ID_);
-create index ACT_IDX_HI_TASK_INST_PROC_DEF_KEY on ACT_HI_TASKINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_DETAIL_PROC_INST on ACT_HI_DETAIL(PROC_INST_ID_);
-create index ACT_IDX_HI_DETAIL_ACT_INST on ACT_HI_DETAIL(ACT_INST_ID_);
-create index ACT_IDX_HI_DETAIL_CASE_INST on ACT_HI_DETAIL(CASE_INST_ID_);
-create index ACT_IDX_HI_DETAIL_CASE_EXEC on ACT_HI_DETAIL(CASE_EXECUTION_ID_);
-create index ACT_IDX_HI_DETAIL_TIME on ACT_HI_DETAIL(TIME_);
-create index ACT_IDX_HI_DETAIL_NAME on ACT_HI_DETAIL(NAME_);
-create index ACT_IDX_HI_DETAIL_TASK_ID on ACT_HI_DETAIL(TASK_ID_);
-create index ACT_IDX_HI_DETAIL_TENANT_ID on ACT_HI_DETAIL(TENANT_ID_);
-create index ACT_IDX_HI_DETAIL_PROC_DEF_KEY on ACT_HI_DETAIL(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_IDENT_LNK_USER on ACT_HI_IDENTITYLINK(USER_ID_);
-create index ACT_IDX_HI_IDENT_LNK_GROUP on ACT_HI_IDENTITYLINK(GROUP_ID_);
-create index ACT_IDX_HI_IDENT_LNK_TENANT_ID on ACT_HI_IDENTITYLINK(TENANT_ID_);
-create index ACT_IDX_HI_IDENT_LNK_PROC_DEF_KEY on ACT_HI_IDENTITYLINK(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_PROCVAR_PROC_INST on ACT_HI_VARINST(PROC_INST_ID_);
-create index ACT_IDX_HI_PROCVAR_NAME_TYPE on ACT_HI_VARINST(NAME_, VAR_TYPE_);
-create index ACT_IDX_HI_CASEVAR_CASE_INST on ACT_HI_VARINST(CASE_INST_ID_);
-create index ACT_IDX_HI_VAR_INST_TENANT_ID on ACT_HI_VARINST(TENANT_ID_);
-create index ACT_IDX_HI_VAR_INST_PROC_DEF_KEY on ACT_HI_VARINST(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_INCIDENT_TENANT_ID on ACT_HI_INCIDENT(TENANT_ID_);
-create index ACT_IDX_HI_INCIDENT_PROC_DEF_KEY on ACT_HI_INCIDENT(PROC_DEF_KEY_);
-
-create index ACT_IDX_HI_JOB_LOG_PROCINST on ACT_HI_JOB_LOG(PROCESS_INSTANCE_ID_);
-create index ACT_IDX_HI_JOB_LOG_PROCDEF on ACT_HI_JOB_LOG(PROCESS_DEF_ID_);
-create index ACT_IDX_HI_JOB_LOG_TENANT_ID on ACT_HI_JOB_LOG(TENANT_ID_);
-create index ACT_IDX_HI_JOB_LOG_JOB_DEF_ID on ACT_HI_JOB_LOG(JOB_DEF_ID_);
-create index ACT_IDX_HI_JOB_LOG_PROC_DEF_KEY on ACT_HI_JOB_LOG(PROCESS_DEF_KEY_);
-
-create index ACT_HI_EXT_TASK_LOG_PROCINST on ACT_HI_EXT_TASK_LOG(PROC_INST_ID_);
-create index ACT_HI_EXT_TASK_LOG_PROCDEF on ACT_HI_EXT_TASK_LOG(PROC_DEF_ID_);
-create index ACT_HI_EXT_TASK_LOG_PROC_DEF_KEY on ACT_HI_EXT_TASK_LOG(PROC_DEF_KEY_);
-create index ACT_HI_EXT_TASK_LOG_TENANT_ID on ACT_HI_EXT_TASK_LOG(TENANT_ID_);
-
-create index ACT_IDX_HI_OP_LOG_PROCINST on ACT_HI_OP_LOG(PROC_INST_ID_);
-create index ACT_IDX_HI_OP_LOG_PROCDEF on ACT_HI_OP_LOG(PROC_DEF_ID_);
-create table ACT_HI_CASEINST (
- ID_ varchar(64) not null,
- CASE_INST_ID_ varchar(64) not null,
- BUSINESS_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64) not null,
- CREATE_TIME_ datetime(3) not null,
- CLOSE_TIME_ datetime(3),
- DURATION_ bigint,
- STATE_ integer,
- CREATE_USER_ID_ varchar(255),
- SUPER_CASE_INSTANCE_ID_ varchar(64),
- SUPER_PROCESS_INSTANCE_ID_ varchar(64),
- TENANT_ID_ varchar(64),
- primary key (ID_),
- unique (CASE_INST_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_HI_CASEACTINST (
- ID_ varchar(64) not null,
- PARENT_ACT_INST_ID_ varchar(64),
- CASE_DEF_ID_ varchar(64) not null,
- CASE_INST_ID_ varchar(64) not null,
- CASE_ACT_ID_ varchar(255) not null,
- TASK_ID_ varchar(64),
- CALL_PROC_INST_ID_ varchar(64),
- CALL_CASE_INST_ID_ varchar(64),
- CASE_ACT_NAME_ varchar(255),
- CASE_ACT_TYPE_ varchar(255),
- CREATE_TIME_ datetime(3) not null,
- END_TIME_ datetime(3),
- DURATION_ bigint,
- STATE_ integer,
- REQUIRED_ boolean,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create index ACT_IDX_HI_CAS_I_CLOSE on ACT_HI_CASEINST(CLOSE_TIME_);
-create index ACT_IDX_HI_CAS_I_BUSKEY on ACT_HI_CASEINST(BUSINESS_KEY_);
-create index ACT_IDX_HI_CAS_I_TENANT_ID on ACT_HI_CASEINST(TENANT_ID_);
-create index ACT_IDX_HI_CAS_A_I_CREATE on ACT_HI_CASEACTINST(CREATE_TIME_);
-create index ACT_IDX_HI_CAS_A_I_END on ACT_HI_CASEACTINST(END_TIME_);
-create index ACT_IDX_HI_CAS_A_I_COMP on ACT_HI_CASEACTINST(CASE_ACT_ID_, END_TIME_, ID_);
-create index ACT_IDX_HI_CAS_A_I_CASEINST on ACT_HI_CASEACTINST(CASE_INST_ID_, CASE_ACT_ID_);
-create index ACT_IDX_HI_CAS_A_I_TENANT_ID on ACT_HI_CASEACTINST(TENANT_ID_);
--- create history decision instance table --
-create table ACT_HI_DECINST (
- ID_ varchar(64) NOT NULL,
- DEC_DEF_ID_ varchar(64) NOT NULL,
- DEC_DEF_KEY_ varchar(255) NOT NULL,
- DEC_DEF_NAME_ varchar(255),
- PROC_DEF_KEY_ varchar(255),
- PROC_DEF_ID_ varchar(64),
- PROC_INST_ID_ varchar(64),
- CASE_DEF_KEY_ varchar(255),
- CASE_DEF_ID_ varchar(64),
- CASE_INST_ID_ varchar(64),
- ACT_INST_ID_ varchar(64),
- ACT_ID_ varchar(255),
- EVAL_TIME_ datetime(3) not null,
- COLLECT_VALUE_ double,
- USER_ID_ varchar(255),
- ROOT_DEC_INST_ID_ varchar(64),
- DEC_REQ_ID_ varchar(64),
- DEC_REQ_KEY_ varchar(255),
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create history decision input table --
-create table ACT_HI_DEC_IN (
- ID_ varchar(64) NOT NULL,
- DEC_INST_ID_ varchar(64) NOT NULL,
- CLAUSE_ID_ varchar(64),
- CLAUSE_NAME_ varchar(255),
- VAR_TYPE_ varchar(100),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
--- create history decision output table --
-create table ACT_HI_DEC_OUT (
- ID_ varchar(64) NOT NULL,
- DEC_INST_ID_ varchar(64) NOT NULL,
- CLAUSE_ID_ varchar(64),
- CLAUSE_NAME_ varchar(255),
- RULE_ID_ varchar(64),
- RULE_ORDER_ integer,
- VAR_NAME_ varchar(255),
- VAR_TYPE_ varchar(100),
- BYTEARRAY_ID_ varchar(64),
- DOUBLE_ double,
- LONG_ bigint,
- TEXT_ LONGBLOB NULL,
- TEXT2_ LONGBLOB NULL,
- TENANT_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-
-create index ACT_IDX_HI_DEC_INST_ID on ACT_HI_DECINST(DEC_DEF_ID_);
-create index ACT_IDX_HI_DEC_INST_KEY on ACT_HI_DECINST(DEC_DEF_KEY_);
-create index ACT_IDX_HI_DEC_INST_PI on ACT_HI_DECINST(PROC_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_CI on ACT_HI_DECINST(CASE_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_ACT on ACT_HI_DECINST(ACT_ID_);
-create index ACT_IDX_HI_DEC_INST_ACT_INST on ACT_HI_DECINST(ACT_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_TIME on ACT_HI_DECINST(EVAL_TIME_);
-create index ACT_IDX_HI_DEC_INST_TENANT_ID on ACT_HI_DECINST(TENANT_ID_);
-create index ACT_IDX_HI_DEC_INST_ROOT_ID on ACT_HI_DECINST(ROOT_DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_INST_REQ_ID on ACT_HI_DECINST(DEC_REQ_ID_);
-create index ACT_IDX_HI_DEC_INST_REQ_KEY on ACT_HI_DECINST(DEC_REQ_KEY_);
-
-
-create index ACT_IDX_HI_DEC_IN_INST on ACT_HI_DEC_IN(DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_IN_CLAUSE on ACT_HI_DEC_IN(DEC_INST_ID_, CLAUSE_ID_);
-
-create index ACT_IDX_HI_DEC_OUT_INST on ACT_HI_DEC_OUT(DEC_INST_ID_);
-create index ACT_IDX_HI_DEC_OUT_RULE on ACT_HI_DEC_OUT(RULE_ORDER_, CLAUSE_ID_);
-
-
--- mariadb identity:
-
-create table ACT_ID_GROUP (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- TYPE_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_MEMBERSHIP (
- USER_ID_ varchar(64),
- GROUP_ID_ varchar(64),
- primary key (USER_ID_, GROUP_ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_USER (
- ID_ varchar(64),
- REV_ integer,
- FIRST_ varchar(255),
- LAST_ varchar(255),
- EMAIL_ varchar(255),
- PWD_ varchar(255),
- SALT_ varchar(255),
- PICTURE_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_INFO (
- ID_ varchar(64),
- REV_ integer,
- USER_ID_ varchar(64),
- TYPE_ varchar(64),
- KEY_ varchar(255),
- VALUE_ varchar(255),
- PASSWORD_ LONGBLOB,
- PARENT_ID_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_TENANT (
- ID_ varchar(64),
- REV_ integer,
- NAME_ varchar(255),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-create table ACT_ID_TENANT_MEMBER (
- ID_ varchar(64) not null,
- TENANT_ID_ varchar(64) not null,
- USER_ID_ varchar(64),
- GROUP_ID_ varchar(64),
- primary key (ID_)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
-alter table ACT_ID_MEMBERSHIP
- add constraint ACT_FK_MEMB_GROUP
- foreign key (GROUP_ID_)
- references ACT_ID_GROUP (ID_);
-
-alter table ACT_ID_MEMBERSHIP
- add constraint ACT_FK_MEMB_USER
- foreign key (USER_ID_)
- references ACT_ID_USER (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_UNIQ_TENANT_MEMB_USER
- unique (TENANT_ID_, USER_ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_UNIQ_TENANT_MEMB_GROUP
- unique (TENANT_ID_, GROUP_ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB
- foreign key (TENANT_ID_)
- references ACT_ID_TENANT (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB_USER
- foreign key (USER_ID_)
- references ACT_ID_USER (ID_);
-
-alter table ACT_ID_TENANT_MEMBER
- add constraint ACT_FK_TENANT_MEMB_GROUP
- foreign key (GROUP_ID_)
- references ACT_ID_GROUP (ID_);
-
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mysql_create_camunda_admin.sql b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mysql_create_camunda_admin.sql
deleted file mode 100644
index 3658c6c235..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/mysql_create_camunda_admin.sql
+++ /dev/null
@@ -1,25 +0,0 @@
-USE camundabpmn;
-
-INSERT INTO `act_id_group` (`ID_`, `REV_`, `NAME_`, `TYPE_`) VALUES ('camunda-admin',1,'camunda BPM Administrators','SYSTEM');
-
-INSERT INTO `act_id_user` (`ID_`, `REV_`, `FIRST_`, `LAST_`, `EMAIL_`, `PWD_`, `SALT_`, `PICTURE_ID_`) VALUES ('admin',1,'admin','user','camundaadmin@onap.org','{SHA-512}n5jUw7fvXM9sZBcrIkLiAOCqiPHutaqEkbg6IQVQdylVP1im8SczBJf4f2xL7cvWwIAZjkcSSQzgFTsdaJSEiA==','ftTn4gNgMcq07wdSD0lEJQ==',NULL);
-
-INSERT INTO `act_id_membership` (`USER_ID_`, `GROUP_ID_`) VALUES ('admin','camunda-admin');
-
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b0e028-a3c6-11e7-b0ec-0242ac120003',1,1,NULL,'admin',1,'admin',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b525e9-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,2,'camunda-admin',2);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49b8814a-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,0,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49baa42b-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,1,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49bd8a5c-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,2,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49bfd44d-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,3,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c1f72e-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,4,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c41a0f-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,5,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49c77570-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,6,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49ca5ba1-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,7,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49cca592-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,8,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49ceef83-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,9,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d11264-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,10,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d38365-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,11,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d5a646-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,12,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49d83e57-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,13,'*',2147483647);
-INSERT INTO `act_ru_authorization` (`ID_`, `REV_`, `TYPE_`, `GROUP_ID_`, `USER_ID_`, `RESOURCE_TYPE_`, `RESOURCE_ID_`, `PERMS_`) VALUES ('49da3a28-a3c6-11e7-b0ec-0242ac120003',1,1,'camunda-admin',NULL,14,'*',2147483647);
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Catalog-schema.sql b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Catalog-schema.sql
deleted file mode 100644
index ca002fbe6b..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Catalog-schema.sql
+++ /dev/null
@@ -1,462 +0,0 @@
-
- alter table HEAT_TEMPLATE_PARAMS
- drop
- foreign key FK_p3ol1xcvp831glqohrlu6o07o;
-
- alter table MODEL_RECIPE
- drop
- foreign key FK_c23r0puyqug6n44jg39dutm1c;
-
- alter table SERVICE
- drop
- foreign key FK_l3qy594u2xr1tfpmma3uigsna;
-
- alter table SERVICE_RECIPE
- drop
- foreign key FK_i3r1b8j6e7dg9hkp49evnnm5y;
-
- alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS
- drop
- foreign key FK_kiddaay6cfe0aob1f1jaio1bb;
-
- alter table VF_MODULE
- drop
- foreign key FK_12jptc9it7gs3pru08skobxxc;
-
- alter table VNF_RESOURCE_CUSTOMIZATION
- drop
- foreign key FK_iff1ayhb1hrp5jhea3vvikuni;
-
- drop table if exists ALLOTTED_RESOURCE;
-
- drop table if exists ALLOTTED_RESOURCE_CUSTOMIZATION;
-
- drop table if exists HEAT_ENVIRONMENT;
-
- drop table if exists HEAT_FILES;
-
- drop table if exists HEAT_NESTED_TEMPLATE;
-
- drop table if exists HEAT_TEMPLATE;
-
- drop table if exists HEAT_TEMPLATE_PARAMS;
-
- drop table if exists MODEL;
-
- drop table if exists MODEL_RECIPE;
-
- drop table if exists NETWORK_RECIPE;
-
- drop table if exists NETWORK_RESOURCE;
-
- drop table if exists NETWORK_RESOURCE_CUSTOMIZATION;
-
- drop table if exists SERVICE;
-
- drop table if exists SERVICE_RECIPE;
-
- drop table if exists SERVICE_TO_ALLOTTED_RESOURCES;
-
- drop table if exists SERVICE_TO_NETWORKS;
-
- drop table if exists SERVICE_TO_RESOURCE_CUSTOMIZATIONS;
-
- drop table if exists TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP;
-
- drop table if exists TOSCA_CSAR;
-
- drop table if exists VF_MODULE;
-
- drop table if exists VF_MODULE_CUSTOMIZATION;
-
- drop table if exists VF_MODULE_TO_HEAT_FILES;
-
- drop table if exists VNF_COMPONENTS;
-
- drop table if exists VNF_COMPONENTS_RECIPE;
-
- drop table if exists VNF_RECIPE;
-
- drop table if exists VNF_RESOURCE;
-
- drop table if exists VNF_RESOURCE_CUSTOMIZATION;
-
- drop table if exists VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM;
-
- create table ALLOTTED_RESOURCE (
- MODEL_UUID varchar(255) not null,
- MODEL_INVARIANT_UUID varchar(255),
- MODEL_VERSION varchar(255),
- MODEL_NAME varchar(255),
- TOSCA_NODE_TYPE varchar(255),
- SUBCATEGORY varchar(255),
- DESCRIPTION varchar(255),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table ALLOTTED_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(255),
- AR_MODEL_UUID varchar(255),
- PROVIDING_SERVICE_MODEL_INVARIANT_UUID varchar(255),
- TARGET_NETWORK_ROLE varchar(255),
- NF_FUNCTION varchar(255),
- NF_TYPE varchar(255),
- NF_ROLE varchar(255),
- NF_NAMING_CODE varchar(255),
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table HEAT_ENVIRONMENT (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(100) not null,
- VERSION varchar(20) not null,
- DESCRIPTION varchar(1200),
- BODY longtext not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD',
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_FILES (
- ARTIFACT_UUID varchar(255) not null,
- DESCRIPTION varchar(255),
- NAME varchar(255),
- VERSION varchar(255),
- BODY longtext,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(255),
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_NESTED_TEMPLATE (
- PARENT_HEAT_TEMPLATE_UUID varchar(200) not null,
- CHILD_HEAT_TEMPLATE_UUID varchar(200) not null,
- PROVIDER_RESOURCE_FILE varchar(100),
- primary key (PARENT_HEAT_TEMPLATE_UUID, CHILD_HEAT_TEMPLATE_UUID)
- );
-
- create table HEAT_TEMPLATE (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(200) not null,
- VERSION varchar(20) not null,
- BODY longtext not null,
- TIMEOUT_MINUTES integer,
- DESCRIPTION varchar(1200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD' not null,
- primary key (ARTIFACT_UUID)
- );
-
- create table HEAT_TEMPLATE_PARAMS (
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(255) not null,
- PARAM_NAME varchar(255) not null,
- IS_REQUIRED bit not null,
- PARAM_TYPE varchar(20),
- PARAM_ALIAS varchar(45),
- primary key (HEAT_TEMPLATE_ARTIFACT_UUID, PARAM_NAME)
- );
-
- create table MODEL (
- id integer not null auto_increment,
- MODEL_TYPE varchar(20) not null,
- MODEL_VERSION_ID varchar(40) not null,
- MODEL_INVARIANT_ID varchar(40),
- MODEL_NAME varchar(40) not null,
- MODEL_VERSION varchar(20),
- MODEL_CUSTOMIZATION_ID varchar(40),
- MODEL_CUSTOMIZATION_NAME varchar(40),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table MODEL_RECIPE (
- id integer not null auto_increment,
- MODEL_ID integer not null,
- ACTION varchar(20) not null,
- SCHEMA_VERSION varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- MODEL_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table NETWORK_RECIPE (
- id integer not null auto_increment,
- MODEL_NAME varchar(20) not null,
- ACTION varchar(20) not null,
- VERSION_STR varchar(20) not null,
- SERVICE_TYPE varchar(45),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- NETWORK_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table NETWORK_RESOURCE (
- MODEL_UUID varchar(200) not null,
- MODEL_NAME varchar(200) not null,
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20),
- TOSCA_NODE_TYPE varchar(200),
- NEUTRON_NETWORK_TYPE varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_MODE varchar(20),
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- AIC_VERSION_MIN varchar(20) default 2.5 not null,
- AIC_VERSION_MAX varchar(20) default 2.5,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table NETWORK_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- NETWORK_RESOURCE_MODEL_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(255),
- NETWORK_TECHNOLOGY varchar(255),
- NETWORK_TYPE varchar(255),
- NETWORK_SCOPE varchar(255),
- NETWORK_ROLE varchar(255),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE (
- MODEL_UUID varchar(200) not null,
- MODEL_NAME varchar(200) not null,
- MODEL_VERSION varchar(20) not null,
- DESCRIPTION varchar(1200),
- TOSCA_CSAR_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- MODEL_INVARIANT_UUID varchar(200) default 'MANUAL_RECORD' not null,
- SERVICE_TYPE varchar(20),
- SERVICE_ROLE varchar(20),
- primary key (MODEL_UUID)
- );
-
- create table SERVICE_RECIPE (
- id integer not null auto_increment,
- SERVICE_MODEL_UUID varchar(200) not null,
- ACTION varchar(40) not null,
- ORCHESTRATION_URI varchar(256) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- VERSION_STR varchar(20),
- DESCRIPTION varchar(1200),
- SERVICE_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- SERVICE_TIMEOUT_INTERIM integer,
- primary key (id)
- );
-
- create table SERVICE_TO_ALLOTTED_RESOURCES (
- SERVICE_MODEL_UUID varchar(200) not null,
- AR_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SERVICE_MODEL_UUID, AR_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE_TO_NETWORKS (
- SERVICE_MODEL_UUID varchar(200) not null,
- NETWORK_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SERVICE_MODEL_UUID, NETWORK_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table SERVICE_TO_RESOURCE_CUSTOMIZATIONS (
- MODEL_TYPE varchar(20) not null,
- RESOURCE_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- SERVICE_MODEL_UUID varchar(200) not null,
- primary key (MODEL_TYPE, RESOURCE_MODEL_CUSTOMIZATION_UUID)
- );
-
- create table TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP (
- NETWORK_RESOURCE_MODEL_NAME varchar(200) not null,
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- AIC_VERSION_MIN varchar(20) not null,
- AIC_VERSION_MAX varchar(20),
- primary key (NETWORK_RESOURCE_MODEL_NAME)
- );
-
- create table TOSCA_CSAR (
- ARTIFACT_UUID varchar(200) not null,
- NAME varchar(200) not null,
- VERSION varchar(20) not null,
- ARTIFACT_CHECKSUM varchar(200) not null,
- URL varchar(200) not null,
- DESCRIPTION varchar(1200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (ARTIFACT_UUID)
- );
-
- create table VF_MODULE (
- MODEL_UUID varchar(200) not null,
- VNF_RESOURCE_MODEL_UUID varchar(200),
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20) not null,
- MODEL_NAME varchar(200) not null,
- DESCRIPTION varchar(1200),
- IS_BASE integer not null,
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
- VOL_HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table VF_MODULE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- VF_MODULE_MODEL_UUID varchar(200) not null,
- VOL_ENVIRONMENT_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- HEAT_ENVIRONMENT_ARTIFACT_UUID varchar(200),
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- INITIAL_COUNT integer,
- AVAILABILITY_ZONE_COUNT integer,
- LABEL varchar(200),
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table VF_MODULE_TO_HEAT_FILES (
- VF_MODULE_MODEL_UUID varchar(200) not null,
- HEAT_FILES_ARTIFACT_UUID varchar(200) not null,
- primary key (VF_MODULE_MODEL_UUID, HEAT_FILES_ARTIFACT_UUID)
- );
-
- create table VNF_COMPONENTS (
- VNF_ID integer not null,
- COMPONENT_TYPE varchar(20) not null,
- HEAT_TEMPLATE_ID integer,
- HEAT_ENVIRONMENT_ID integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (VNF_ID, COMPONENT_TYPE)
- );
-
- create table VNF_COMPONENTS_RECIPE (
- id integer not null auto_increment,
- VNF_TYPE varchar(200),
- VF_MODULE_MODEL_UUID varchar(100),
- VNF_COMPONENT_TYPE varchar(45) not null,
- ACTION varchar(20) not null,
- SERVICE_TYPE varchar(45),
- VERSION varchar(20),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- VNF_COMPONENT_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table VNF_RECIPE (
- id integer not null auto_increment,
- VF_MODULE_ID varchar(100),
- ACTION varchar(20) not null,
- VERSION_STR varchar(20) not null,
- VNF_TYPE varchar(200),
- SERVICE_TYPE varchar(45) default null,
- DESCRIPTION varchar(1200),
- ORCHESTRATION_URI varchar(256) not null,
- VNF_PARAM_XSD varchar(2048),
- RECIPE_TIMEOUT integer,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (id)
- );
-
- create table VNF_RESOURCE (
- MODEL_UUID varchar(200) not null,
- MODEL_INVARIANT_UUID varchar(200),
- MODEL_VERSION varchar(20) not null,
- MODEL_NAME varchar(200),
- TOSCA_NODE_TYPE varchar(200),
- DESCRIPTION varchar(1200),
- ORCHESTRATION_MODE varchar(20) not null,
- AIC_VERSION_MIN varchar(20),
- AIC_VERSION_MAX varchar(20),
- HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_UUID)
- );
-
- create table VNF_RESOURCE_CUSTOMIZATION (
- MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- MODEL_INSTANCE_NAME varchar(200) not null,
- MIN_INSTANCES integer,
- MAX_INSTANCES integer,
- AVAILABILITY_ZONE_MAX_COUNT integer,
- NF_FUNCTION varchar(200),
- NF_TYPE varchar(200),
- NF_ROLE varchar(200),
- NF_NAMING_CODE varchar(200),
- VNF_RESOURCE_MODEL_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (MODEL_CUSTOMIZATION_UUID)
- );
-
- create table VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM (
- VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID, VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID)
- );
-
- alter table MODEL
- add constraint UK_rra00f1rk6eyy7g00k9raxh2v unique (MODEL_TYPE, MODEL_VERSION_ID);
-
- alter table MODEL_RECIPE
- add constraint UK_b4g8j9wtqrkxfycyi3ursk7gb unique (MODEL_ID, ACTION);
-
- alter table NETWORK_RECIPE
- add constraint UK_pbsa8i44m8p10f9529jdgfuk9 unique (MODEL_NAME, ACTION, VERSION_STR);
-
- alter table SERVICE_RECIPE
- add constraint UK_2lr377dpqnvl5aqlp5dtj2fcp unique (SERVICE_MODEL_UUID, ACTION);
-
- alter table VNF_COMPONENTS_RECIPE
- add constraint UK_g3je95aaxxiuest25f0qoy2u8 unique (VNF_TYPE, VF_MODULE_MODEL_UUID, VNF_COMPONENT_TYPE, ACTION, SERVICE_TYPE, VERSION);
-
- alter table VNF_RECIPE
- add constraint UK_f3tvqau498vrifq3cr8qnigkr unique (VF_MODULE_ID, ACTION, VERSION_STR);
-
- alter table HEAT_TEMPLATE_PARAMS
- add constraint FK_p3ol1xcvp831glqohrlu6o07o
- foreign key (HEAT_TEMPLATE_ARTIFACT_UUID)
- references HEAT_TEMPLATE (ARTIFACT_UUID);
-
- alter table MODEL_RECIPE
- add constraint FK_c23r0puyqug6n44jg39dutm1c
- foreign key (MODEL_ID)
- references MODEL (id);
-
- alter table SERVICE
- add constraint FK_l3qy594u2xr1tfpmma3uigsna
- foreign key (TOSCA_CSAR_ARTIFACT_UUID)
- references TOSCA_CSAR (ARTIFACT_UUID);
-
- alter table SERVICE_RECIPE
- add constraint FK_i3r1b8j6e7dg9hkp49evnnm5y
- foreign key (SERVICE_MODEL_UUID)
- references SERVICE (MODEL_UUID);
-
- alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS
- add constraint FK_kiddaay6cfe0aob1f1jaio1bb
- foreign key (SERVICE_MODEL_UUID)
- references SERVICE (MODEL_UUID);
-
- alter table VF_MODULE
- add constraint FK_12jptc9it7gs3pru08skobxxc
- foreign key (VNF_RESOURCE_MODEL_UUID)
- references VNF_RESOURCE (MODEL_UUID);
-
- alter table VNF_RESOURCE_CUSTOMIZATION
- add constraint FK_iff1ayhb1hrp5jhea3vvikuni
- foreign key (VNF_RESOURCE_MODEL_UUID)
- references VNF_RESOURCE (MODEL_UUID);
diff --git a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Requests-schema.sql b/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Requests-schema.sql
deleted file mode 100644
index f64548e23d..0000000000
--- a/kubernetes/so/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/MySQL-Requests-schema.sql
+++ /dev/null
@@ -1,84 +0,0 @@
-
- drop table if exists INFRA_ACTIVE_REQUESTS;
-
- drop table if exists SITE_STATUS;
-
- create table INFRA_ACTIVE_REQUESTS (
- REQUEST_ID varchar(45) not null,
- CLIENT_REQUEST_ID varchar(45),
- ACTION varchar(45) not null,
- REQUEST_STATUS varchar(20),
- STATUS_MESSAGE varchar(2000),
- PROGRESS bigint,
- START_TIME datetime,
- END_TIME datetime,
- SOURCE varchar(45),
- VNF_ID varchar(45),
- VNF_NAME varchar(80),
- VNF_TYPE varchar(200),
- SERVICE_TYPE varchar(45),
- AIC_NODE_CLLI varchar(11),
- TENANT_ID varchar(45),
- PROV_STATUS varchar(20),
- VNF_PARAMS longtext,
- VNF_OUTPUTS longtext,
- REQUEST_BODY longtext,
- RESPONSE_BODY longtext,
- LAST_MODIFIED_BY varchar(50),
- MODIFY_TIME datetime,
- REQUEST_TYPE varchar(20),
- VOLUME_GROUP_ID varchar(45),
- VOLUME_GROUP_NAME varchar(45),
- VF_MODULE_ID varchar(45),
- VF_MODULE_NAME varchar(200),
- VF_MODULE_MODEL_NAME varchar(200),
- AAI_SERVICE_ID varchar(50),
- AIC_CLOUD_REGION varchar(11),
- CALLBACK_URL varchar(200),
- CORRELATOR varchar(80),
- SERVICE_INSTANCE_ID varchar(45),
- SERVICE_INSTANCE_NAME varchar(80),
- REQUEST_SCOPE varchar(20),
- REQUEST_ACTION varchar(45) not null,
- NETWORK_ID varchar(45),
- NETWORK_NAME varchar(80),
- NETWORK_TYPE varchar(80),
- REQUESTOR_ID varchar(80),
- primary key (REQUEST_ID)
- );
-
- create table SITE_STATUS (
- SITE_NAME varchar(255) not null,
- STATUS bit,
- CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
- primary key (SITE_NAME)
- );
- create table OPERATION_STATUS (
- SERVICE_ID varchar(255) not null,
- OPERATION_ID varchar(255) not null,
- SERVICE_NAME varchar(255),
- OPERATION_TYPE varchar(255),
- USER_ID varchar(255),
- RESULT varchar(255),
- OPERATION_CONTENT varchar(255),
- PROGRESS varchar(255),
- REASON varchar(255),
- OPERATE_AT datetime,
- FINISHED_AT datetime,
- primary key (SERVICE_ID,OPERATION_ID)
- );
- create table RESOURCE_OPERATION_STATUS (
- SERVICE_ID varchar(255) not null,
- OPERATION_ID varchar(255) not null,
- RESOURCE_TEMPLATE_UUID varchar(255) not null,
- OPER_TYPE varchar(255),
- RESOURCE_INSTANCE_ID varchar(255),
- JOB_ID varchar(255),
- STATUS varchar(255),
- PROGRESS varchar(255),
- ERROR_CODE varchar(255) ,
- STATUS_DESCRIPOTION varchar(255) ,
- primary key (SERVICE_ID,OPERATION_ID,RESOURCE_TEMPLATE_UUID)
- );
- alter table INFRA_ACTIVE_REQUESTS
- add constraint UK_bhu6w8p7wvur4pin0gjw2d5ak unique (CLIENT_REQUEST_ID);
diff --git a/kubernetes/so/charts/mariadb/templates/configmap.yaml b/kubernetes/so/charts/mariadb/templates/configmap.yaml
index c19e54a38f..3c71619fe7 100644
--- a/kubernetes/so/charts/mariadb/templates/configmap.yaml
+++ b/kubernetes/so/charts/mariadb/templates/configmap.yaml
@@ -18,60 +18,4 @@ metadata:
name: confd-configmap
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/mariadb/conf.d/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: docker-entry-initd-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: automated-tests-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: bulkload-default-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: demo-dns-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: demo-vfw-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: scripts-camunda-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/camunda/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: main-schemas-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/mariadb/docker-entrypoint-initdb.d/db-sql-scripts/main-schemas/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/mariadb/conf.d/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/so/charts/mariadb/templates/deployment.yaml b/kubernetes/so/charts/mariadb/templates/deployment.yaml
index 5267cc0409..c85fe79103 100644
--- a/kubernetes/so/charts/mariadb/templates/deployment.yaml
+++ b/kubernetes/so/charts/mariadb/templates/deployment.yaml
@@ -31,102 +31,80 @@ spec:
release: {{ .Release.Name }}
spec:
hostname: mariadb
+ initContainers:
+ - name: {{ include "common.name" . }}-inject-testlab-project
+ command:
+ - /bin/bash
+ - -c
+ - >
+ 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;
+ echo "Done.";
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: docker-entrypoint-initdb-d
+ mountPath: "/docker-entrypoint-initdb.d"
containers:
- - name: {{ .Chart.Name }}
- image: {{ .Values.global.repository | default .Values.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 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 }}
- env:
- - name: MYSQL_ROOT_PASSWORD
- valueFrom:
- secretKeyRef:
- name: {{ template "common.fullname" . }}
- key: db-root-password
- volumeMounts:
- - mountPath: /var/lib/mysql
- name: mariadb-data
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /etc/mysql/conf.d
- name: mariadb-conf
- - mountPath: /docker-entrypoint-initdb.d/02-load-additional-changes.sh
- name: mariadb-docker-entrypoint-initdb
- subPath: 02-load-additional-changes.sh
- - mountPath: /docker-entrypoint-initdb.d/01-load-default-sql-files.sh
- name: mariadb-docker-entrypoint-initdb
- subPath: 01-load-default-sql-files.sh
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/automated-tests
- name: mariadb-docker-entrypoint-automated-tests
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/default
- name: mariadb-docker-entrypoint-bulkload-default
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-dns
- name: mariadb-docker-entrypoint-demo-dns
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/bulkload-files/demo-vfw
- name: mariadb-docker-entrypoint-demo-vfw
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/camunda
- name: mariadb-docker-entrypoint-camunda
- - mountPath: /docker-entrypoint-initdb.d/db-sql-scripts/main-schemas
- name: mariadb-docker-entrypoint-main-schemas
- resources:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ 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 }}
+ env:
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ volumeMounts:
+ - mountPath: /var/lib/mysql
+ name: mariadb-data
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /etc/mysql/conf.d
+ name: mariadb-conf
+ - name: docker-entrypoint-initdb-d
+ mountPath: "/docker-entrypoint-initdb.d"
+ resources:
{{ toYaml .Values.resources | indent 12 }}
- {{- if .Values.nodeSelector }}
- nodeSelector:
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
{{ toYaml .Values.nodeSelector | indent 10 }}
- {{- end -}}
- {{- if .Values.affinity }}
- affinity:
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
{{ toYaml .Values.affinity | indent 10 }}
- {{- end }}
+ {{- end }}
volumes:
+ - name: mariadb-data
{{- if .Values.persistence.enabled }}
- - name: mariadb-data
- persistentVolumeClaim:
- claimName: {{ include "common.fullname" . }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
{{- else }}
- emptyDir: {}
+ emptyDir: {}
{{- end }}
- - name: mariadb-conf
- configMap:
- name: confd-configmap
- - name: mariadb-docker-entrypoint-initdb
- configMap:
- name: docker-entry-initd-configmap
- - name: mariadb-docker-entrypoint-automated-tests
- configMap:
- name: automated-tests-configmap
- - name: mariadb-docker-entrypoint-bulkload-default
- configMap:
- name: bulkload-default-configmap
- - name: mariadb-docker-entrypoint-demo-dns
- configMap:
- name: demo-dns-configmap
- - name: mariadb-docker-entrypoint-demo-vfw
- configMap:
- name: demo-vfw-configmap
- - name: mariadb-docker-entrypoint-camunda
- configMap:
- name: scripts-camunda-configmap
- - name: mariadb-docker-entrypoint-main-schemas
- configMap:
- name: main-schemas-configmap
- - name: localtime
- hostPath:
- path: /etc/localtime
+ - name: mariadb-conf
+ configMap:
+ name: confd-configmap
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: docker-entrypoint-initdb-d
+ emptyDir: {}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/so/charts/mariadb/templates/service.yaml b/kubernetes/so/charts/mariadb/templates/service.yaml
index 11b3b48bd9..eeebdcbae2 100644
--- a/kubernetes/so/charts/mariadb/templates/service.yaml
+++ b/kubernetes/so/charts/mariadb/templates/service.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{ include "common.fullname" . }}
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -27,12 +27,12 @@ spec:
ports:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
{{- else -}}
- port: {{ .Values.service.externalPort }}
targetPort: {{ .Values.service.internalPort }}
{{- end}}
- name: {{ .Values.service.name }}
+ name: {{ .Values.service.portName }}
selector:
app: {{ include "common.name" . }}
release: {{ .Release.Name }} \ No newline at end of file
diff --git a/kubernetes/so/charts/mariadb/values.yaml b/kubernetes/so/charts/mariadb/values.yaml
index e957206811..186f825af7 100644
--- a/kubernetes/so/charts/mariadb/values.yaml
+++ b/kubernetes/so/charts/mariadb/values.yaml
@@ -17,22 +17,24 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
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
-
-# override chart name (mariadb) to share a common namespace
-# suffix with parent chart (so)
-nsSuffix: so
+ # 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
@@ -44,14 +46,14 @@ affinity: {}
# probe configuration parameters
liveness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 90
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: 90
periodSeconds: 10
## Persist data to a persitent volume
@@ -79,9 +81,9 @@ persistence:
service:
type: NodePort
- name: mariadb
- externalPort: 52
+ portName: mariadb
internalPort: 3306
+ nodePort: 52
ingress:
enabled: false
diff --git a/kubernetes/so/resources/config/mso/aai.crt b/kubernetes/so/resources/config/mso/aai.crt
deleted file mode 100755
index d51c05606e..0000000000
--- a/kubernetes/so/resources/config/mso/aai.crt
+++ /dev/null
@@ -1,66 +0,0 @@
-Bag Attributes
- friendlyName: aaiopenecomp
- localKeyID: 54 69 6D 65 20 31 35 31 30 30 33 33 31 37 31 38 39 32
-subject=/C=US/ST=NJ/L=Bedminister/O=ONAP/CN=aai.api.simpledemo.openecomp.org/emailAddress=aai-host@api.simpledemo.openecomp.org
-issuer=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Server CA X1/emailAddress=simpledemo@openecomp.org
------BEGIN CERTIFICATE-----
-MIIDyzCCArMCCQDrA8zzZKXznDANBgkqhkiG9w0BAQsFADCBrTELMAkGA1UEBhMC
-VVMxCzAJBgNVBAgMAk5KMRMwEQYDVQQHDApCZWRtaW5zdGVyMRIwEAYDVQQKDAlP
-cGVuRUNPTVAxEzARBgNVBAsMCnNpbXBsZWRlbW8xKjAoBgNVBAMMIU9wZW5FQ09N
-UCBzaW1wbGVkZW1vIFNlcnZlciBDQSBYMTEnMCUGCSqGSIb3DQEJARYYc2ltcGxl
-ZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE3MTEwMzIzNDUzNVoXDTE4MTIwNjIzNDUz
-NVowgaAxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOSjEUMBIGA1UEBwwLQmVkbWlu
-aXN0ZXIxDTALBgNVBAoMBE9OQVAxKTAnBgNVBAMMIGFhaS5hcGkuc2ltcGxlZGVt
-by5vcGVuZWNvbXAub3JnMTQwMgYJKoZIhvcNAQkBFiVhYWktaG9zdEBhcGkuc2lt
-cGxlZGVtby5vcGVuZWNvbXAub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
-CgKCAQEA6gFktbGZVt4o78kU6oeCdqx04yPNTd1qRmJ06CD87fgrIDCTXVC+PE7R
-hHd1V71aNnoElBzn+mwetn4qG4T9IqAJvFIXxrzLpS7WlKBxStFhe4GNXl+RDqWc
-UM+47+s32TwZ3czQrhMVR9VNENUHo2d6XylGaUDcVgrMYWbFYWfmIJ4tO1latW9n
-h+perB0nNBxNDK9nYtjLHQk6ukTmONSnldvCgu/TFX5C34qB49cI0LmCf5Lwk9tv
-8dmTZ6Um8A0EbQen+uPaaHeEXm/EtFy0FSVzoKmxuQS0g4JNhfnfNCHVDO7zGE+N
-pCb9VfUI2fXIZvjNBAemKN/b2i5d6QIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBh
-93eaeAw0aA4ukAPpuWIODxxAnZlFfDH4uzwnv6smDJzO1biRwQ5BBZfL8qSVozrp
-aDKeIPWP7fZvjl3mGfCp8mLkI6WkfXVcZy5IlJGDTnW+G8Cpohq910W/Ibp1J9zx
-Ki4IdgKx7FbSYLpgwH2g2EPshHXQX2qFdxYvnEH0PzJjYBKeyyHV3N2kNr6+kM3Q
-HpXXIiLNbNcqLT+9zOmuJszN8ILLV56vu8Clzwxld+ru0tiO2OJk2eT+mtw2PI1/
-jcYqEEdOIZycrQiytxXgvte7A9VFQP/1Tl22BBYrAW2BhyW67kopATeiSunK1FmO
-DLcT7mR+59F964RV9BJR
------END CERTIFICATE-----
-Bag Attributes
- friendlyName: root
- 2.16.840.1.113894.746875.1.1: <Unsupported tag 6>
-subject=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Server CA X1/emailAddress=simpledemo@openecomp.org
-issuer=/C=US/ST=NJ/L=Bedminster/O=OpenECOMP/OU=simpledemo/CN=OpenECOMP simpledemo Root Certification Authority/emailAddress=simpledemo@openecomp.org
------BEGIN CERTIFICATE-----
-MIIFpTCCA42gAwIBAgIJAJqx8dKnCZZoMA0GCSqGSIb3DQEBCwUAMIG9MQswCQYD
-VQQGEwJVUzELMAkGA1UECAwCTkoxEzARBgNVBAcMCkJlZG1pbnN0ZXIxEjAQBgNV
-BAoMCU9wZW5FQ09NUDETMBEGA1UECwwKc2ltcGxlZGVtbzE6MDgGA1UEAwwxT3Bl
-bkVDT01QIHNpbXBsZWRlbW8gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEn
-MCUGCSqGSIb3DQEJARYYc2ltcGxlZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE2MTEy
-ODIxMTQyNloXDTIxMTEyNzIxMTQyNlowga0xCzAJBgNVBAYTAlVTMQswCQYDVQQI
-DAJOSjETMBEGA1UEBwwKQmVkbWluc3RlcjESMBAGA1UECgwJT3BlbkVDT01QMRMw
-EQYDVQQLDApzaW1wbGVkZW1vMSowKAYDVQQDDCFPcGVuRUNPTVAgc2ltcGxlZGVt
-byBTZXJ2ZXIgQ0EgWDExJzAlBgkqhkiG9w0BCQEWGHNpbXBsZWRlbW9Ab3BlbmVj
-b21wLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALr4rivKQuRk
-YNf5Ig40e1nqj6s6LB1vgMOYbKfRziOFpPcUpsHPOhusHowiUsrU1vdFSzPz6Ej7
-PjlmNSg2Qka8YCn9kd6QgM7U0KcPJvIucBp+qjifH3EvP0jgDPhDeVRYxzV454dv
-5kQ9uCpswJP7YAnX51dkWeH8nwPUoagt31bOl9LXENSrgxEThxdLYMJnQJWk2CmV
-otXM4tT1dxyJxFUrZ6uJCEAYw5VtlplqihHf8lHy+sWQavtsLz/4dc+sGeXSTfoI
-voKvoh3uZ5gEhGV8yfJxk1veX5y5/AxP80vQ+smWYjTnQL5QQ57y4bciez4XVBmQ
-SWimWtOi4e8CAwEAAaOBtTCBsjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
-AwIBhjAdBgNVHQ4EFgQUTqdsYgGNGubdJHq9tsaJhM9HE5wwcAYDVR0gBGkwZzBl
-BgRVHSAAMF0wWwYIKwYBBQUHAgIwTxpNSWYgeW91IHRydXN0IHRoaXMgY2VydCB0
-aGVuIHdlIGhhdmUgYSBicmlkZ2UgdGhhdCB5b3UgbWlnaHQgYmUgaW50ZXJlc3Rl
-ZCBpbi4wDQYJKoZIhvcNAQELBQADggIBAKNNlRqFuE/JgV1BHyYK0xoSXH4aZP/7
-IoHtDVcSaZAOOuFOUrwVMUbzRBebbb6RpFwt/X+NLFUGysd+XNLF7W7lzxKtmFNX
-n4OpNkBe0y5O7yurus8rERHzu3jiOSgVo+WzDlGpYSRnG3hI2qPWqD+Puzx/WwI8
-XUTuzEQQ3gUSyVFfXHpay3VpYmLZiLJ9WKY5SDw7Ie6Sxrju4Qm1HwnFY8wHZGcs
-2KMQzorJ1ZNQf523yUTghbT0rKaSFaD8zugPtI2ONfFG/QgrkQXo78opzPsHnHwa
-SxGSiAgeLbwAUCvPNl27zr6k6+7TcNjV0VUivAs0OG3VEAdgi7UWYB+30KfWwHwE
-zGmvd4IAGqIqlqLcSVArN5z8JK1B5nfjQn5UrclU1vK+dnuiKE2X4rKuBTRYRFR/
-km+mj4koYFPKFHndmJl1uv2OCJK9l5CSIuKWeI1qv8BASKqgNdoT/SKBXqxgYlCb
-o+j4IDjxrxChRO+e5vl9lA7INfRrbljCkUjfLRa+v2q9tWQ3+EQUwwnSrSfihh2T
-j0Tksr6b8dDsvMlCdOKG1B+JPcEXORSFKNXVTEfjqpJG8s16kFAocWt3S6xO0k1t
-qbQp+3tWQgW2TGnX0rMZzB6NGRNfWhlYmq2zHgXkiCIZ26Ztgt/LNbwEvN3+VlLo
-z/Rd+SKtlrfb
------END CERTIFICATE-----
diff --git a/kubernetes/so/resources/config/mso/mso-docker.json b/kubernetes/so/resources/config/mso/mso-docker.json
index 17f01931a6..8276d25a7c 100755
--- a/kubernetes/so/resources/config/mso/mso-docker.json
+++ b/kubernetes/so/resources/config/mso/mso-docker.json
@@ -7,12 +7,28 @@
{
"mso_config_path": "/etc/mso/config.d/",
+ "mso-topology-config":
+ {
+ "msb-server-ip": "{{.Values.config.msb.serviceName}}",
+ "msb-server-port": "{{.Values.config.msb.port}}"
+ },
+
"mso-api-handler-infra-config":
{
- "bpelURL": "http://so:8080",
+ "bpelURL": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}",
"bpelAuth": "786864AA53D0DCD881AED1154230C0C3058D58B9339D2EFB6193A0F0D82530E1",
- "camundaURL": "http://so:8080",
- "camundaAuth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
+ "camundaURL": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}",
+ "camundaAuth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1",
+ "aaiEndpoint": "https://{{.Values.config.aai.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.aai.port}}",
+ "aaiAuth": "2630606608347B7124C244AB0FE34F6F",
+ "msoKey": "07a7159d3bf51a0e53be7a8f89699be7"
+ },
+
+ "mso-asdc-controller-config":
+ {
+ "aaiEndpoint": "https://{{.Values.config.aai.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.aai.port}}",
+ "aaiAuth": "2630606608347B7124C244AB0FE34F6F",
+ "msoKey": "07a7159d3bf51a0e53be7a8f89699be7"
},
"asdc-connections":
@@ -23,10 +39,14 @@
"consumerGroup": "sdc-OpenSource-Env1",
"consumerId": "sdc-COpenSource-Env11",
"environmentName": "{{ .Values.config.dmaapTopic }}",
- "asdcAddress": "sdc-be:8443",
+ "asdcAddress": "{{.Values.config.sdc.serviceName}}:{{.Values.config.sdc.port}}",
"password": "613AF3483E695524F9857643B697FA51C7A9A0951094F53791485BF3458F9EADA37DBACCCEBD0CB242B85B4062745247",
"pollingInterval": 60,
"pollingTimeout": 60,
+ "watchDogTimeout": "300",
+ "messageBusAddress": [
+ "{{.Values.config.messagerouter.serviceName}}"
+ ],
"relevantArtifactTypes": "HEAT,HEAT_ENV,HEAT_VOL",
"activateServerTLSAuth": "false",
"keyStorePassword": "",
@@ -38,24 +58,26 @@
{
"sdncurls":
[
- "http://sdnhost:8282/restconf/operations/L3SDN-API:",
- "http://sdnhost:8282/restconf/config/L3SDN-API:",
- "http://sdnhost:8282/restconf/operations/Firewall-API:",
- "http://sdnhost:8282/restconf/config",
- "http://sdnhost:8282/restconf/operations/VNF-API:",
- "http://sdnhost:8282/restconf/operations/NBNC-API:",
- "http://sdnhost:8282/restconf/operations/NORTHBOUND-API:service-topology-operation",
- "http://sdnhost:8282/restconf/operations/GENERIC-RESOURCE-API:",
- "http://sdnhost:8282/restconf/operations/VNFTOPOLOGYAIC-API:"
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/L3SDN-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/config/L3SDN-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/Firewall-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/config",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/VNF-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/NBNC-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/NORTHBOUND-API:service-topology-operation",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/GENERIC-RESOURCE-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/restconf/operations/VNFTOPOLOGYAIC-API:",
+ "http://{{.Values.config.sdnc.serviceName}}:{{.Values.config.sdnc.port}}/"
],
- "bpelurl": "http://so:8080/mso/SDNCAdapterCallbackService",
- "restbpelurl": "http://so:8080/mso/WorkflowMessage",
- "myurl": "http://so:8080/adapters/rest/SDNCNotify",
+ "bpelurl": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/SDNCAdapterCallbackService",
+ "restbpelurl": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/WorkflowMessage",
+ "myurl": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/adapters/rest/SDNCNotify",
"sdncauth": "263f7d5f944d4d0c76db74b4148bec67d0bc796a874bc0d2a2a12aae89a866aa69133f700f391f784719a37f6a68d29bf5a2fbae1dab0402db7788c800c5ba73",
"bpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1",
"sdncconnecttime": "5000"
},
+
"mso-po-adapter-config":
{
"identity_services":
@@ -92,7 +114,7 @@
"mso-workflow-message-adapter-config":
{
- "wmbpelurl": "http://so:8080/mso/WorkflowMessage",
+ "wmbpelurl": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/WorkflowMessage",
"wmbpelauth": "5119D1AF37F671FC01FFAD2151D93EFB2BBB503E879FD07104D024EDDF118FD1"
},
@@ -107,7 +129,6 @@
"ueb_consumer_id": "testuser",
"ueb_topic": "queuetopic",
"ueb_polling_interval": "30",
- "ueb_polling_interval": "30",
"ueb_user": "user",
"ueb_password": "1ec0d74615d4e4639f991c0590c83b88",
"bpel_url": "http://localhost:18080",
@@ -128,43 +149,59 @@
"versionIdL3ToHigherLayerDeleteBonding": "52dbec20-47aa-42e4-936c-331d8e350d44",
"infraCustomerId": "21014aa2-526b-11e6-beb8-9e71128cae77",
"sniroAuth": "test:testpwd",
- "sniroEndpoint": "http://sniro-emulator:8080/sniro/api/v2/placement",
+ "sniroEndpoint": "http://{{.Values.config.sniro.serviceName}}:{{.Values.config.sniro.port}}/sniro/api/v2/placement",
"sniroTimeout": "PT30M",
- "serviceAgnosticSniroHost": "http://sniro-emulator:8080",
+ "serviceAgnosticSniroHost": "http://{{.Values.config.sniro.serviceName}}:{{.Values.config.sniro.port}}",
"serviceAgnosticSniroEndpoint": "/sniro/api/v2/placement",
- "aaiEndpoint": "https://aai-service:8443",
+ "oofAuth": "test:testpwd",
+ "oofEndpoint": "http://{{.Values.config.oof.serviceName}}:{{.Values.config.oof.port}}/api/oof/v1/placement",
+ "oofTimeout": "PT30M",
+ "serviceAgnosticOofHost": "http://{{.Values.config.oof.serviceName}}:{{.Values.config.oof.port}}",
+ "serviceAgnosticOofEndpoint": "/api/oof/v1/placement",
+ "aaiEndpoint": "https://{{.Values.config.aai.serviceName}}.{{ include "common.namespace" . }}:{{.Values.config.aai.port}}",
"aaiAuth": "2630606608347B7124C244AB0FE34F6F",
"adaptersNamespace": "http://org.openecomp.mso",
- "adaptersCompletemsoprocessEndpoint": "http://so:8080/CompleteMsoProcess",
- "adaptersDbEndpoint": "http://so:8080/dbadapters/MsoRequestsDbAdapter",
- "adaptersOpenecompDbEndpoint": "http://so:8080/dbadapters/RequestsDbAdapter",
- "catalogDbEndpoint": "http://so:8080/ecomp/mso/catalog",
- "adaptersSdncEndpoint": "http://so:8080/adapters/SDNCAdapter",
- "adaptersSdncRestEndpoint": "http://so:8080/adapters/rest/v1/sdnc",
- "adaptersTenantEndpoint": "http://so:8080/tenants/TenantAdapter",
+ "adaptersCompletemsoprocessEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/CompleteMsoProcess",
+ "adaptersDbEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/dbadapters/MsoRequestsDbAdapter",
+ "adaptersOpenecompDbEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/dbadapters/RequestsDbAdapter",
+ "catalogDbEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/ecomp/mso/catalog",
+ "adaptersSdncEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/adapters/SDNCAdapter",
+ "adaptersSdncRestEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/adapters/rest/v1/sdnc",
+ "adaptersTenantEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/tenants/TenantAdapter",
"adaptersDbAuth": "6B0E6863FB8EE010AB6F191B3C0489437601E81DC7C86305CB92DB98AFC53D74",
- "adaptersWorkflowMessageEndpoint": "http://so:8080/workflows/messages/message",
- "workflowMessageEndpoint": "http://so:8080/mso/WorkflowMessage",
- "workflowSdncAdapterCallback": "http://so:8080/mso/SDNCAdapterCallbackService",
+ "adaptersWorkflowMessageEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/workflows/messages/message",
+ "workflowMessageEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/WorkflowMessage",
+ "workflowSdncAdapterCallback": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/SDNCAdapterCallbackService",
"workflowSdncReplicationDelay": "PT5S",
"workflowAaiDistributionDelay": "PT30S",
"msoKey": "07a7159d3bf51a0e53be7a8f89699be7",
"adaptersPoAuth": "6B0E6863FB8EE010AB6F191B3C0489437601E81DC7C86305CB92DB98AFC53D74",
"sdncTimeout": "PT5M",
"rollback": "true",
- "adaptersNetworkEndpoint": "http://so:8080/networks/NetworkAdapter",
- "adaptersNetworkRestEndpoint": "http://so:8080/networks/rest/v1/networks",
- "adaptersVnfAsyncEndpoint": "http://so:8080/vnfs/VnfAdapterAsync",
- "workflowVnfAdapterDeleteCallback": "http://so:8080/mso/vnfAdapterNotify",
- "workflowVnfAdapterCreateCallback": "http://so:8080/mso/vnfAdapterNotify",
- "adaptersVnfRestEndpoint": "http://so:8080/vnfs/rest/v1/vnfs",
- "workflowVnfAdapterRestCallback": "http://so:8080/mso/vnfAdapterRestNotify",
+ "adaptersNetworkEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/networks/NetworkAdapter",
+ "adaptersNetworkRestEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/networks/rest/v1/networks",
+ "adaptersVnfAsyncEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/vnfs/VnfAdapterAsync",
+ "workflowVnfAdapterDeleteCallback": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/vnfAdapterNotify",
+ "workflowVnfAdapterCreateCallback": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/vnfAdapterNotify",
+ "adaptersVnfRestEndpoint": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/vnfs/rest/v1/vnfs",
+ "workflowVnfAdapterRestCallback": "http://{{.Values.service.name}}:{{.Values.service.internalPort}}/mso/vnfAdapterRestNotify",
"poTimeout": "PT5M",
"sdncFirewallYangModel": "http://com/att/svc/mis/firewall-lite-gui",
"sdncFirewallYangModelVersion": "2015-05-15",
"sdncTimeoutFirewall": "20",
"callbackRetryAttempts": "30",
"callbackRetrySleepTime": "1000",
+ "appcClientTopicRead": "APPC-LCM-READ",
+ "appcClientTopicWrite": "APPC-LCM-WRITE",
+ "appcClientTopicSdncRead": "SDNC-LCM-READ",
+ "appcClientTopicSdncWrite": "SDNC-LCM-WRITE",
+ "appcClientTopicReadTimeout": "360000",
+ "appcClientResponseTime": "360000",
+ "appcClientPoolMembers": "{{.Values.config.messagerouter.serviceName}}:{{.Values.config.messagerouter.port}}",
+ "appcClientKey": "VIlbtVl6YLhNUrtU",
+ "appcClientSecret": "64AG2hF4pYeG2pq7CT6XwUOT",
+ "appcClientService": "ueb",
+ "sdncSiSvcTypes": "PORT-MIRROR,PPROBE",
"workflowL3ToHigherLayerAddBondingModelName" : "WAN Bonding",
"workflowL3ToHigherLayerAddBondingModelVersion" : "2.0"
}
@@ -179,4 +216,3 @@
"mso-config": "~> 1.0.0"
}
}
-
diff --git a/kubernetes/so/resources/config/mso/onap-ca-new.crt b/kubernetes/so/resources/config/mso/onap-ca-new.crt
new file mode 100644
index 0000000000..e9a50d7ea0
--- /dev/null
+++ b/kubernetes/so/resources/config/mso/onap-ca-new.crt
@@ -0,0 +1,31 @@
+-----BEGIN CERTIFICATE-----
+MIIFPjCCAyagAwIBAgIJAJ6u7cCnzrWdMA0GCSqGSIb3DQEBCwUAMCwxDjAMBgNV
+BAsMBU9TQUFGMQ0wCwYDVQQKDARPTkFQMQswCQYDVQQGEwJVUzAeFw0xODA0MDUx
+NDE1MjhaFw0zODAzMzExNDE1MjhaMCwxDjAMBgNVBAsMBU9TQUFGMQ0wCwYDVQQK
+DARPTkFQMQswCQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
+ggIBAMA5pkgRs7NhGG4ew5JouhyYakgYUyFaG121+/h8qbSdt0hVQv56+EA41Yq7
+XGie7RYDQK9NmAFF3gruE+6X7wvJiChp+Cyd7sFMnb65uWhxEdxWTM2BJFrgfzUn
+H8ZCxgaCo3XH4PzlKRy2LQQJEJECwl/RZmRCXijMt5e9h8XoZY/fKkKcZZUsWNCM
+pTo266wjvA9MXLmdgReRj0+vrCjrNqy+htwJDztoiHWiYPqT6o8EvGcgjNqjlZx7
+NUNf8MfLDByqKF6+wRbHv1GKjn3/Vijd45Fv8riyRYROiFanvbV6jIfBkv8PZbXg
+2VDWsYsgp8NAvMxK+iV8cO+Ck3lBI2GOPZbCEqpPVTYbLUz6sczAlCXwQoPzDIZY
+wYa3eR/gYLY1gP2iEVHORag3bLPap9ZX5E8DZkzTNTjovvLk8KaCmfcaUMJsBtDd
+ApcUitz10cnRyZc1sX3gE1f3DpzQM6t9C5sOVyRhDcSrKqqwb9m0Ss04XAS9FsqM
+P3UWYQyqDXSxlUAYaX892u8mV1hxnt2gjb22RloXMM6TovM3sSrJS0wH+l1nznd6
+aFXftS/G4ZVIVZ/LfT1is4StoyPWZCwwwly1z8qJQ/zhip5NgZTxQw4mi7ww35DY
+PdAQOCoajfSvFjqslQ/cPRi/MRCu079heVb5fQnnzVtnpFQRAgMBAAGjYzBhMB0G
+A1UdDgQWBBRTVTPyS+vQUbHBeJrBKDF77+rtSTAfBgNVHSMEGDAWgBRTVTPyS+vQ
+UbHBeJrBKDF77+rtSTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAN
+BgkqhkiG9w0BAQsFAAOCAgEAPx/IaK94n02wPxpnYTy+LVLIxwdq/kawNd6IbiMz
+L87zmNMDmHcGbfoRCj8OkhuggX9Lx1/CkhpXimuYsZOFQi5blr/u+v4mIbsgbmi9
+7j+cUHDP0zLycvSvxKHty51LwmaX9a4wkJl5zBU4O1sd/H9tWcEmwJ39ltKoBKBx
+c94Zc3iMm5ytRWGj+0rKzLDAXEWpoZ5bE5PLJauA6UDCxDLfs3FwhbS7uDggxYvf
+jySF5FCNET94oJ+m8s7VeHvoa8iPGKvXrIqdd7XDHnqJJlVKr7m9S0fMbyEB8ci2
+RtOXDt93ifY1uhoEtEykn4dqBSp8ezvNMnwoXdYPDvTd9uCAFeWFLVreBAWxd25h
+PsBTkZA5hpa/rA+mKv6Af4VBViYr8cz4dZCsFChuioVebe9ighrfjB//qKepFjPF
+CyjzKN1u0JKm/2x/ORqxkTONG8p3uDwoIOyimUcTtTMv42bfYD88RKakqSFXE9G+
+Z0LlaKABqfjK49o/tsAp+c5LoNlYllKhnetO3QAdraHwdmC36BhoghzR1jpX751A
+cZn2VH3Q4XKyp01cJNCJIrua+A+bx6zh3RyW6zIIkbRCbET+UD+4mr8WIcSE3mtR
+ZVlnhUDO4z9//WKMVzwS9Rh8/kuszrGFI1KQozXCHLrce3YP6RYZfOed79LXaRwX
+dYY=
+-----END CERTIFICATE-----
diff --git a/kubernetes/so/resources/config/mso/onap-ca.crt b/kubernetes/so/resources/config/mso/onap-ca.crt
new file mode 100644
index 0000000000..51e19b56a6
--- /dev/null
+++ b/kubernetes/so/resources/config/mso/onap-ca.crt
@@ -0,0 +1,100 @@
+-----BEGIN CERTIFICATE-----
+MIIFpTCCA42gAwIBAgIJAJqx8dKnCZZoMA0GCSqGSIb3DQEBCwUAMIG9MQswCQYD
+VQQGEwJVUzELMAkGA1UECAwCTkoxEzARBgNVBAcMCkJlZG1pbnN0ZXIxEjAQBgNV
+BAoMCU9wZW5FQ09NUDETMBEGA1UECwwKc2ltcGxlZGVtbzE6MDgGA1UEAwwxT3Bl
+bkVDT01QIHNpbXBsZWRlbW8gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEn
+MCUGCSqGSIb3DQEJARYYc2ltcGxlZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE2MTEy
+ODIxMTQyNloXDTIxMTEyNzIxMTQyNlowga0xCzAJBgNVBAYTAlVTMQswCQYDVQQI
+DAJOSjETMBEGA1UEBwwKQmVkbWluc3RlcjESMBAGA1UECgwJT3BlbkVDT01QMRMw
+EQYDVQQLDApzaW1wbGVkZW1vMSowKAYDVQQDDCFPcGVuRUNPTVAgc2ltcGxlZGVt
+byBTZXJ2ZXIgQ0EgWDExJzAlBgkqhkiG9w0BCQEWGHNpbXBsZWRlbW9Ab3BlbmVj
+b21wLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALr4rivKQuRk
+YNf5Ig40e1nqj6s6LB1vgMOYbKfRziOFpPcUpsHPOhusHowiUsrU1vdFSzPz6Ej7
+PjlmNSg2Qka8YCn9kd6QgM7U0KcPJvIucBp+qjifH3EvP0jgDPhDeVRYxzV454dv
+5kQ9uCpswJP7YAnX51dkWeH8nwPUoagt31bOl9LXENSrgxEThxdLYMJnQJWk2CmV
+otXM4tT1dxyJxFUrZ6uJCEAYw5VtlplqihHf8lHy+sWQavtsLz/4dc+sGeXSTfoI
+voKvoh3uZ5gEhGV8yfJxk1veX5y5/AxP80vQ+smWYjTnQL5QQ57y4bciez4XVBmQ
+SWimWtOi4e8CAwEAAaOBtTCBsjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
+AwIBhjAdBgNVHQ4EFgQUTqdsYgGNGubdJHq9tsaJhM9HE5wwcAYDVR0gBGkwZzBl
+BgRVHSAAMF0wWwYIKwYBBQUHAgIwTxpNSWYgeW91IHRydXN0IHRoaXMgY2VydCB0
+aGVuIHdlIGhhdmUgYSBicmlkZ2UgdGhhdCB5b3UgbWlnaHQgYmUgaW50ZXJlc3Rl
+ZCBpbi4wDQYJKoZIhvcNAQELBQADggIBAKNNlRqFuE/JgV1BHyYK0xoSXH4aZP/7
+IoHtDVcSaZAOOuFOUrwVMUbzRBebbb6RpFwt/X+NLFUGysd+XNLF7W7lzxKtmFNX
+n4OpNkBe0y5O7yurus8rERHzu3jiOSgVo+WzDlGpYSRnG3hI2qPWqD+Puzx/WwI8
+XUTuzEQQ3gUSyVFfXHpay3VpYmLZiLJ9WKY5SDw7Ie6Sxrju4Qm1HwnFY8wHZGcs
+2KMQzorJ1ZNQf523yUTghbT0rKaSFaD8zugPtI2ONfFG/QgrkQXo78opzPsHnHwa
+SxGSiAgeLbwAUCvPNl27zr6k6+7TcNjV0VUivAs0OG3VEAdgi7UWYB+30KfWwHwE
+zGmvd4IAGqIqlqLcSVArN5z8JK1B5nfjQn5UrclU1vK+dnuiKE2X4rKuBTRYRFR/
+km+mj4koYFPKFHndmJl1uv2OCJK9l5CSIuKWeI1qv8BASKqgNdoT/SKBXqxgYlCb
+o+j4IDjxrxChRO+e5vl9lA7INfRrbljCkUjfLRa+v2q9tWQ3+EQUwwnSrSfihh2T
+j0Tksr6b8dDsvMlCdOKG1B+JPcEXORSFKNXVTEfjqpJG8s16kFAocWt3S6xO0k1t
+qbQp+3tWQgW2TGnX0rMZzB6NGRNfWhlYmq2zHgXkiCIZ26Ztgt/LNbwEvN3+VlLo
+z/Rd+SKtlrfb
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIGQTCCBCmgAwIBAgIJANSi/bsXEOI5MA0GCSqGSIb3DQEBCwUAMIG9MQswCQYD
+VQQGEwJVUzELMAkGA1UECAwCTkoxEzARBgNVBAcMCkJlZG1pbnN0ZXIxEjAQBgNV
+BAoMCU9wZW5FQ09NUDETMBEGA1UECwwKc2ltcGxlZGVtbzE6MDgGA1UEAwwxT3Bl
+bkVDT01QIHNpbXBsZWRlbW8gUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEn
+MCUGCSqGSIb3DQEJARYYc2ltcGxlZGVtb0BvcGVuZWNvbXAub3JnMB4XDTE2MTEy
+ODIxMTQyNVoXDTI2MTEyNjIxMTQyNVowgb0xCzAJBgNVBAYTAlVTMQswCQYDVQQI
+DAJOSjETMBEGA1UEBwwKQmVkbWluc3RlcjESMBAGA1UECgwJT3BlbkVDT01QMRMw
+EQYDVQQLDApzaW1wbGVkZW1vMTowOAYDVQQDDDFPcGVuRUNPTVAgc2ltcGxlZGVt
+byBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MScwJQYJKoZIhvcNAQkBFhhz
+aW1wbGVkZW1vQG9wZW5lY29tcC5vcmcwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw
+ggIKAoICAQDLgdDTCZX5xlMFIo+tjj5DItAwbutQE3NMchx/CRIuYwRCBOEO0yOs
+AdnZAuheYrjv/Dw4wKNzcvtIlYbfiPsGWVvx5j6+xoGBLLwIOnDyzD2B62uCvMs9
+47MAuiqpPojPwDDb9fF5EIhlC+cBzSYKm7D5ihYxmUCnh9yHIPEMq0IoVj2illlK
+eCTLW+bZKeaKoWdkFxyyzykOoMFgZTUm01EhDIt1DHTve675Qq80UgzrZdSK6Zjv
+3wLV7tkJSGmCkbUELpxsTLKYuaGUkE0m5n3SMUcvBDa6WNQpWlUbZlTwWotOrxfN
+Gib3nGiqyCmQXrVvuuBDzmZifZaJpBGiiGiOxp0j79E/OZkfk/9V3Hvfy78Ss9H5
+uhf/ACGKsUq9nN25u+Wpz7EzAQm/OBubBrBCMP/8pm+y1jCfQ6Bwd0Nm48KrJkTe
+ySkferISNmpQZ2dyZXQVXMarbRfagQ6XdJw6EVnDwydVzb5LAqam3JUXjsHIj7Gv
+2DmXwJtwV+cnKB/OxRsP/JWwlyC9pFGy17HWc7EwPqXm1UNdDM36UaoBDzsh3DcI
+vg5+BOOtYPmiZ2+CMD2JxAXmtCMAmQA1mSsW7beTuHKy+7EdCAWcregE60PE3w2l
+G8n50YSXb0WZ2IaQUsBhhpZmu6VVTEcoi5eMglI6QyO21y0oKPYWPQIDAQABo0Iw
+QDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUmmQF
+QD3oWZUOVE81Qc9WSfcyqwwwDQYJKoZIhvcNAQELBQADggIBAE1ArwZwMVVJe1Pj
+p1R9+Q766Qhzh4EN9RFCsktCcf4pB23lPtFhMhIZJP5eZKLB4MUIvtmleU+DmOWf
+jcEcgauMrc9Ihacra+IRJsr4JQjQSDHoEgl/yR6VUd9vbGH66ElIg9nP7XWAE6h5
+DTAxA8X1qyUOVGsKAps2uhBwNtl8RdX6GrZahkSOUMOq3H4wyEEPQlpU2AewZqOU
+p0vdbQ/is6cbJh6dgxFrSzBti/MKj/EPM6yJwlO+RfGlJmEI7J7bLEYIeNssLnv6
+FGiOgyWQ+gmwVK827F4Jwoght2BCcNsG/oPkAPbdw4yRIyi92QSWMEBKibECypQE
+a1DYvfHWGQLQifGzFuJTOca9vgu2B/BQ+0Ii4DqMS8hc2rw1CAD5zHAT/BIgAKM6
+ygL5Oyvrj8AQLgOkjhFh0HFKneh4j7wBtibpmDnBoSv227PAtdytCoRgivjhmF5B
+Ryx7BswcTEtZHWHxD/i2wlMEGNqGbcRmCCy9hhCxitAz70aq3Y/pC46n7w5bOmvJ
+Ap9D+WmTJ9PdpDjiwCXCkMD3QaTuUV1W3Zr4mLLj6gRLb6ycgDrsqXnY6/JB/AOd
+gxFK9q1vjhm02FAABIa+kL10CKPuRdlE/GsWl03WKMeT5bY3MTO3odsNXhKWA19h
+wUAp0gnljuFHPX7jWwruZ1eD8mQv
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIFPjCCAyagAwIBAgIJAJ6u7cCnzrWdMA0GCSqGSIb3DQEBCwUAMCwxDjAMBgNV
+BAsMBU9TQUFGMQ0wCwYDVQQKDARPTkFQMQswCQYDVQQGEwJVUzAeFw0xODA0MDUx
+NDE1MjhaFw0zODAzMzExNDE1MjhaMCwxDjAMBgNVBAsMBU9TQUFGMQ0wCwYDVQQK
+DARPTkFQMQswCQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
+ggIBAMA5pkgRs7NhGG4ew5JouhyYakgYUyFaG121+/h8qbSdt0hVQv56+EA41Yq7
+XGie7RYDQK9NmAFF3gruE+6X7wvJiChp+Cyd7sFMnb65uWhxEdxWTM2BJFrgfzUn
+H8ZCxgaCo3XH4PzlKRy2LQQJEJECwl/RZmRCXijMt5e9h8XoZY/fKkKcZZUsWNCM
+pTo266wjvA9MXLmdgReRj0+vrCjrNqy+htwJDztoiHWiYPqT6o8EvGcgjNqjlZx7
+NUNf8MfLDByqKF6+wRbHv1GKjn3/Vijd45Fv8riyRYROiFanvbV6jIfBkv8PZbXg
+2VDWsYsgp8NAvMxK+iV8cO+Ck3lBI2GOPZbCEqpPVTYbLUz6sczAlCXwQoPzDIZY
+wYa3eR/gYLY1gP2iEVHORag3bLPap9ZX5E8DZkzTNTjovvLk8KaCmfcaUMJsBtDd
+ApcUitz10cnRyZc1sX3gE1f3DpzQM6t9C5sOVyRhDcSrKqqwb9m0Ss04XAS9FsqM
+P3UWYQyqDXSxlUAYaX892u8mV1hxnt2gjb22RloXMM6TovM3sSrJS0wH+l1nznd6
+aFXftS/G4ZVIVZ/LfT1is4StoyPWZCwwwly1z8qJQ/zhip5NgZTxQw4mi7ww35DY
+PdAQOCoajfSvFjqslQ/cPRi/MRCu079heVb5fQnnzVtnpFQRAgMBAAGjYzBhMB0G
+A1UdDgQWBBRTVTPyS+vQUbHBeJrBKDF77+rtSTAfBgNVHSMEGDAWgBRTVTPyS+vQ
+UbHBeJrBKDF77+rtSTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAN
+BgkqhkiG9w0BAQsFAAOCAgEAPx/IaK94n02wPxpnYTy+LVLIxwdq/kawNd6IbiMz
+L87zmNMDmHcGbfoRCj8OkhuggX9Lx1/CkhpXimuYsZOFQi5blr/u+v4mIbsgbmi9
+7j+cUHDP0zLycvSvxKHty51LwmaX9a4wkJl5zBU4O1sd/H9tWcEmwJ39ltKoBKBx
+c94Zc3iMm5ytRWGj+0rKzLDAXEWpoZ5bE5PLJauA6UDCxDLfs3FwhbS7uDggxYvf
+jySF5FCNET94oJ+m8s7VeHvoa8iPGKvXrIqdd7XDHnqJJlVKr7m9S0fMbyEB8ci2
+RtOXDt93ifY1uhoEtEykn4dqBSp8ezvNMnwoXdYPDvTd9uCAFeWFLVreBAWxd25h
+PsBTkZA5hpa/rA+mKv6Af4VBViYr8cz4dZCsFChuioVebe9ighrfjB//qKepFjPF
+CyjzKN1u0JKm/2x/ORqxkTONG8p3uDwoIOyimUcTtTMv42bfYD88RKakqSFXE9G+
+Z0LlaKABqfjK49o/tsAp+c5LoNlYllKhnetO3QAdraHwdmC36BhoghzR1jpX751A
+cZn2VH3Q4XKyp01cJNCJIrua+A+bx6zh3RyW6zIIkbRCbET+UD+4mr8WIcSE3mtR
+ZVlnhUDO4z9//WKMVzwS9Rh8/kuszrGFI1KQozXCHLrce3YP6RYZfOed79LXaRwX
+dYY=
+-----END CERTIFICATE-----
diff --git a/kubernetes/so/resources/config/mso/standalone-full-ha-mso.xml b/kubernetes/so/resources/config/mso/standalone-full-ha-mso.xml
index 7693736021..d3ff84fc26 100644
--- a/kubernetes/so/resources/config/mso/standalone-full-ha-mso.xml
+++ b/kubernetes/so/resources/config/mso/standalone-full-ha-mso.xml
@@ -147,7 +147,7 @@
<subsystem xmlns="urn:jboss:domain:datasources:4.0">
<datasources>
<datasource jndi-name="java:jboss/datasources/mso-requests" pool-name="mso-requests" enabled="true" use-ccm="true">
- <connection-url>jdbc:mariadb://{{ .Release.Name }}-mariadb:3306/mso_requests?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
+ <connection-url>jdbc:mariadb://{{ .Values.mariadb.nameOverride }}:3306/mso_requests?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
<driver>mariadb</driver>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
<pool>
@@ -177,7 +177,7 @@
</timeout>
</datasource>
<datasource jndi-name="java:jboss/datasources/mso-catalog" pool-name="mso-catalog" enabled="true" use-ccm="true">
- <connection-url>jdbc:mariadb://{{ .Release.Name }}-mariadb:3306/mso_catalog?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
+ <connection-url>jdbc:mariadb://{{ .Values.mariadb.nameOverride }}:3306/mso_catalog?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
<driver>mariadb</driver>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
<pool>
@@ -207,7 +207,7 @@
</timeout>
</datasource>
<datasource jta="true" jndi-name="java:jboss/datasources/ProcessEngine" pool-name="ProcessEngine" enabled="true" use-java-context="true" use-ccm="true">
- <connection-url>jdbc:mariadb://{{ .Release.Name }}-mariadb:3306/camundabpmn?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
+ <connection-url>jdbc:mariadb://{{ .Values.mariadb.nameOverride }}:3306/camundabpmn?autoReconnect=true&amp;connectTimeout=60000&amp;socketTimeout=60000</connection-url>
<driver>mariadb</driver>
<new-connection-sql>set autocommit=1</new-connection-sql>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
diff --git a/kubernetes/so/templates/deployment.yaml b/kubernetes/so/templates/deployment.yaml
index 0727ce80a3..0f907372a3 100644
--- a/kubernetes/so/templates/deployment.yaml
+++ b/kubernetes/so/templates/deployment.yaml
@@ -35,7 +35,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - mariadb
+ - {{ .Values.mariadb.nameOverride }}
env:
- name: NAMESPACE
valueFrom:
@@ -49,7 +49,7 @@ spec:
- name: {{ .Chart.Name }}
command:
- /tmp/start-jboss-server.sh
- image: "{{ .Values.repository | default .Values.global.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
@@ -58,14 +58,14 @@ spec:
- containerPort: {{ .Values.service.internalPort4 }}
- containerPort: {{ .Values.service.internalPort5 }}
# disable liveness probe when breakpoints set in debugger
- # so K8s doesn't restart unresponsive container
- {{- if eq .Values.liveness.enabled true }}
+ # 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 -}}
+ {{ end }}
readinessProbe:
tcpSocket:
port: {{ .Values.service.internalPort }}
@@ -86,7 +86,6 @@ spec:
- 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
@@ -132,7 +131,7 @@ spec:
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
-
+
# side car containers
- name: filebeat-onap
image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
@@ -163,8 +162,11 @@ spec:
- key: mso-docker.json
path: mso-docker.json
mode: 0755
- - key: aai.crt
- path: aai.crt
+ - 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
diff --git a/kubernetes/so/templates/service.yaml b/kubernetes/so/templates/service.yaml
index 63e41acc46..ac9d179628 100644
--- a/kubernetes/so/templates/service.yaml
+++ b/kubernetes/so/templates/service.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: Service
metadata:
- name: so
+ name: {{ include "common.servicename" . }}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -25,7 +25,7 @@ metadata:
annotations:
msb.onap.org/service-info: '[
{
- "serviceName": "so",
+ "serviceName": "{{ include "common.servicename" . }}",
"version": "v1",
"url": "/ecomp/mso/infra",
"protocol": "REST"
@@ -47,36 +47,36 @@ spec:
ports:
{{if eq .Values.service.type "NodePort" -}}
- port: {{ .Values.service.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort }}
- name: {{ .Values.service.name }}
+ 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.externalPort2 }}
- name: {{ .Values.service.name }}2
+ 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.externalPort3 }}
- name: {{ .Values.service.name }}3
+ 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.externalPort4 }}
- name: {{ .Values.service.name }}4
+ 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.externalPort5 }}
- name: {{ .Values.service.name }}5
+ 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.name }}
+ name: {{ .Values.service.portName }}
- port: {{ .Values.service.externalPort2 }}
targetPort: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.name }}2
+ name: {{ .Values.service.portName }}2
- port: {{ .Values.service.externalPort3 }}
targetPort: {{ .Values.service.internalPort3 }}
- name: {{ .Values.service.name }}3
+ name: {{ .Values.service.portName }}3
- port: {{ .Values.service.externalPort4 }}
targetPort: {{ .Values.service.internalPort4 }}
- name: {{ .Values.service.name }}4
+ name: {{ .Values.service.portName }}4
- port: {{ .Values.service.externalPort5 }}
targetPort: {{ .Values.service.internalPort5 }}
- name: {{ .Values.service.name }}5
+ name: {{ .Values.service.portName }}5
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/so/values.yaml b/kubernetes/so/values.yaml
index 3ca60b0395..b8b120c0d3 100644
--- a/kubernetes/so/values.yaml
+++ b/kubernetes/so/values.yaml
@@ -17,9 +17,8 @@
# Declare variables to be passed into your templates.
global: # global defaults
nodePortPrefix: 302
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
- readinessImage: readiness-check:1.1.0
+ readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
@@ -28,7 +27,7 @@ subChartsOnly:
# application image
repository: nexus3.onap.org:10001
-image: openecomp/mso:1.2-STAGING-latest
+image: openecomp/mso:1.2.1
pullPolicy: Always
# flag to enable debugging - application support required
@@ -46,6 +45,31 @@ config:
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
+mariadb:
+ nameOverride: so-db
# default number of instances
replicaCount: 1
@@ -69,16 +93,17 @@ readiness:
service:
type: NodePort
name: so
- externalPort: 23
+ portName: so
internalPort: 8080
- externalPort2: 25
+ nodePort: 23
internalPort2: 3904
- externalPort3: 24
+ nodePort2: 25
internalPort3: 3905
- externalPort4: 22
+ nodePort3: 24
internalPort4: 9990
- externalPort5: 50
+ nodePort4: 22
internalPort5: 8787
+ nodePort5: 50
ingress:
enabled: false
diff --git a/kubernetes/uui/.helmignore b/kubernetes/uui/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/uui/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/uui/Chart.yaml b/kubernetes/uui/Chart.yaml
index 65636d29d9..b55d80414f 100644
--- a/kubernetes/uui/Chart.yaml
+++ b/kubernetes/uui/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP uui
name: uui
-version: 1.1.0
+version: 2.0.0
diff --git a/kubernetes/uui/charts/uui-server/.helmignore b/kubernetes/uui/charts/uui-server/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/uui/charts/uui-server/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/uui/charts/uui-server/Chart.yaml b/kubernetes/uui/charts/uui-server/Chart.yaml
new file mode 100644
index 0000000000..7bf1143254
--- /dev/null
+++ b/kubernetes/uui/charts/uui-server/Chart.yaml
@@ -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 uui server
+name: uui-server
+version: 2.0.0
diff --git a/kubernetes/uui/charts/uui-server/templates/NOTES.txt b/kubernetes/uui/charts/uui-server/templates/NOTES.txt
new file mode 100644
index 0000000000..6e0b9fc06d
--- /dev/null
+++ b/kubernetes/uui/charts/uui-server/templates/NOTES.txt
@@ -0,0 +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.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={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/uui/charts/uui-server/templates/deployment.yaml b/kubernetes/uui/charts/uui-server/templates/deployment.yaml
new file mode 100644
index 0000000000..accdff9e7f
--- /dev/null
+++ b/kubernetes/uui/charts/uui-server/templates/deployment.yaml
@@ -0,0 +1,59 @@
+# 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 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 }}
+ env:
+ - name: MSB_ADDR
+ value: {{tpl .Values.msbaddr .}}
+ - name: MR_ADDR
+ value: {{tpl .Values.mraddr .}}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/uui/charts/uui-server/templates/service.yaml b/kubernetes/uui/charts/uui-server/templates/service.yaml
new file mode 100644
index 0000000000..2abe7fd9f8
--- /dev/null
+++ b/kubernetes/uui/charts/uui-server/templates/service.yaml
@@ -0,0 +1,50 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "usecaseui-server",
+ "version": "v1",
+ "url": "/api/usecaseui/server/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.internalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.uuiPortPrefix | default .Values.uuiPortPrefix }}{{ .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/uui/charts/uui-server/values.yaml b/kubernetes/uui/charts/uui-server/values.yaml
new file mode 100644
index 0000000000..55ae2d48b0
--- /dev/null
+++ b/kubernetes/uui/charts/uui-server/values.yaml
@@ -0,0 +1,83 @@
+# 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 uui.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global:
+ uuiPortPrefix: 303
+ readinessRepository: oomk8s
+subChartsOnly:
+ enabled: true
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/usecase-ui/usecase-ui-server:latest
+pullPolicy: Always
+
+# application configuration
+
+msbaddr: msb-iag.{{include "common.namespace" .}}:80
+mraddr: message-router.{{include "common.namespace" .}}:3904
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: uui-server
+ portName: uui-server
+ internalPort: 8082
+ nodePort: 99
+
+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/uui/requirements.yaml b/kubernetes/uui/requirements.yaml
new file mode 100644
index 0000000000..9b24f824d5
--- /dev/null
+++ b/kubernetes/uui/requirements.yaml
@@ -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.
+
+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
diff --git a/kubernetes/uui/templates/NOTES.txt b/kubernetes/uui/templates/NOTES.txt
new file mode 100644
index 0000000000..6e0b9fc06d
--- /dev/null
+++ b/kubernetes/uui/templates/NOTES.txt
@@ -0,0 +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.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={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/uui/templates/all-services.yaml b/kubernetes/uui/templates/all-services.yaml
deleted file mode 100644
index 7f450cd9ae..0000000000
--- a/kubernetes/uui/templates/all-services.yaml
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableUuiUui }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: uui
- name: uui
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "usecaseui-gui",
- "version": "v1",
- "url": "/usecase-ui",
- "path":"/iui/usecaseui",
- "protocol": "UI"
- "port": "8080",
- "visualRange":"1|0"
- }
- ]'
-spec:
- ports:
- - name: uui
- nodePort: {{ .Values.uuiPortPrefix }}98
- port: 8080
- selector:
- app: uui
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableUuiServer }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: uui-server
- name: uui-server
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "usecaseui-server",
- "version": "v1",
- "url": "/api/usecaseui/server/v1",
- "protocol": "UI"
- "port": "8080",
- "visualRange":"1|0"
- }
- ]'
-spec:
- ports:
- - name: uui-server
- nodePort: {{ .Values.uuiPortPrefix }}99
- port: 8082
- selector:
- app: uui-server
- type: NodePort
-#{{ end }} \ No newline at end of file
diff --git a/kubernetes/uui/templates/deployment.yaml b/kubernetes/uui/templates/deployment.yaml
new file mode 100644
index 0000000000..9578d9c5d8
--- /dev/null
+++ b/kubernetes/uui/templates/deployment.yaml
@@ -0,0 +1,71 @@
+# 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 }}
+ command:
+ - /bin/bash
+ - -c
+ - /home/uui/tomcat/bin/catalina.sh run
+ 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 }}
+ env:
+ - name: MSB_ADDR
+ value: {{ tpl .Values.msbaddr . }}
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/uui/templates/service.yaml b/kubernetes/uui/templates/service.yaml
new file mode 100644
index 0000000000..dedf9472a4
--- /dev/null
+++ b/kubernetes/uui/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "usecaseui-ui",
+ "version": "v1",
+ "url": "/usecase-ui",
+ "path":"/iui/usecaseui",
+ "protocol": "UI",
+ "port": "{{ .Values.service.internalPort }}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.uuiPortPrefix | default .Values.uuiPortPrefix }}{{ .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/uui/templates/uui-deployment.yaml b/kubernetes/uui/templates/uui-deployment.yaml
deleted file mode 100644
index ad757cbc22..0000000000
--- a/kubernetes/uui/templates/uui-deployment.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableUuiUui }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: uui
- name: uui
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.uuiReplicas }}
- selector:
- matchLabels:
- app: uui
- template:
- metadata:
- labels:
- app: uui
- name: uui
- spec:
- containers:
- - image: {{ .Values.image.uuiImage }}:{{ .Values.image.uuiVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- command:
- - /bin/bash
- - -c
- - /home/uui/tomcat/bin/catalina.sh run
- name: uui
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: 8080
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/uui/templates/uui-server-deployment.yaml b/kubernetes/uui/templates/uui-server-deployment.yaml
deleted file mode 100644
index 2b9c3e9010..0000000000
--- a/kubernetes/uui/templates/uui-server-deployment.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableUuiUui }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: uui-server
- name: uui-server
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.uuiServerReplicas }}
- selector:
- matchLabels:
- app: uui-server
- template:
- metadata:
- labels:
- app: uui-server
- name: uui-server
- spec:
- containers:
- - image: {{ .Values.uuiserver.image }}:{{ .Values.uuiserver.version }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: uui-server
- env:
- - name: MSB_ADDR
- value: {{tpl .Values.msbaddr .}}
- - name: MR_ADDR
- value: {{tpl .Values.mraddr .}}
- ports:
- - containerPort: 8082
- readinessProbe:
- tcpSocket:
- port: 8082
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/uui/values.yaml b/kubernetes/uui/values.yaml
index e9033aa85f..6ee7fb957d 100644
--- a/kubernetes/uui/values.yaml
+++ b/kubernetes/uui/values.yaml
@@ -12,16 +12,72 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+# Default values for uui.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global:
+ uuiPortPrefix: 303
+ readinessRepository: oomk8s
+subChartsOnly:
+ enabled: true
+
+# application image
+repository: nexus3.onap.org:10001
+image: onap/usecase-ui:latest
pullPolicy: Always
-uuiPortPrefix: 303
-msbaddr: msb-iag.{{ .Values.nsPrefix }}:80
-mraddr: dmaap.{{ .Values.nsPrefix }}:3904
-uuiReplicas: 1
-uuiServerReplicas: 1
-image:
- uuiImage: nexus3.onap.org:10001/onap/usecase-ui
- uuiVersion: v1.0.1
-uuiserver:
- image: nexus3.onap.org:10001/onap/usecase-ui/usecase-ui-server
- version: v1.0.1
+
+# application configuration
+
+msbaddr: msb-iag.{{include "common.namespace" .}}:80
+mraddr: message-router.{{include "common.namespace" .}}:3904
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: uui
+ portName: uui
+ internalPort: 8080
+ nodePort: 98
+
+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/vfc/Chart.yaml b/kubernetes/vfc/Chart.yaml
index 2554d16ce5..a6a6065802 100644
--- a/kubernetes/vfc/Chart.yaml
+++ b/kubernetes/vfc/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Virtual Function Controller (VF-C)
name: vfc
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/vfc/charts/vfc-catalog/.helmignore b/kubernetes/vfc/charts/vfc-catalog/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-catalog/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-catalog/Chart.yaml b/kubernetes/vfc/charts/vfc-catalog/Chart.yaml
new file mode 100644
index 0000000000..f90ad5b72e
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-catalog/Chart.yaml
@@ -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 VFC - Catalog
+name: vfc-catalog
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-catalog/resources/config/logging/log.yml b/kubernetes/vfc/charts/vfc-catalog/resources/config/logging/log.yml
new file mode 100644
index 0000000000..2daea32cae
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-catalog/resources/config/logging/log.yml
@@ -0,0 +1,50 @@
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ catalog:
+ handlers: [cataloglocal_handler, catalog_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ cataloglocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_catalog.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ catalog_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/catalog/runtime_catalog.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ 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
diff --git a/kubernetes/vfc/charts/vfc-catalog/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-catalog/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-catalog/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-catalog/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-catalog/templates/deployment.yaml
new file mode 100644
index 0000000000..084c320e31
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-catalog/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/catalog/config/log.yml
+ subPath: log.yml
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-catalog/templates/service.yaml b/kubernetes/vfc/charts/vfc-catalog/templates/service.yaml
new file mode 100644
index 0000000000..9fa3e4f12c
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-catalog/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "catalog",
+ "version": "v1",
+ "url": "/api/catalog/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-catalog/values.yaml b/kubernetes/vfc/charts/vfc-catalog/values.yaml
new file mode 100644
index 0000000000..465a0ae964
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-catalog/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/catalog:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-catalog
+ portName: vfc-catalog
+ externalPort: 8806
+ internalPort: 8806
+# nodePort: 30806
+
+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/vfc/charts/vfc-ems-driver/.helmignore b/kubernetes/vfc/charts/vfc-ems-driver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-ems-driver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-ems-driver/Chart.yaml b/kubernetes/vfc/charts/vfc-ems-driver/Chart.yaml
new file mode 100644
index 0000000000..1bd751fa77
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-ems-driver/Chart.yaml
@@ -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 VFC - EMS Driver
+name: vfc-ems-driver
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-ems-driver/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-ems-driver/templates/deployment.yaml
new file mode 100644
index 0000000000..287f0a7d3e
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-ems-driver/templates/deployment.yaml
@@ -0,0 +1,87 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ - name: VES_ADDR
+ value: "{{ .Values.config.vescollectorServiceName }}:{{ .Values.config.vescollectorPort }}"
+ - name: VES_AUTHINFO
+ value: "{{ .Values.config.vescollectorUser }}:{{ .Values.config.vescollectorPassword }}"
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-ems-driver/templates/service.yaml b/kubernetes/vfc/charts/vfc-ems-driver/templates/service.yaml
new file mode 100644
index 0000000000..6a5ef8b668
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-ems-driver/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "emsdriver",
+ "version": "v1",
+ "url": "/api/emsdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-ems-driver/values.yaml b/kubernetes/vfc/charts/vfc-ems-driver/values.yaml
new file mode 100644
index 0000000000..cfdc8fa026
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-ems-driver/values.yaml
@@ -0,0 +1,90 @@
+# 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/vfc/emsdriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ vescollectorServiceName: dcae-ves-collector
+ vescollectorPort: 8080
+ vescollectorUser: ""
+ vescollectorPassword: ""
+
+# 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: ClusterIP
+ name: vfc-ems-driver
+ portName: vfc-ems-driver
+ externalPort: 8206
+ internalPort: 8206
+# nodePort: 30296
+
+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/vfc/charts/vfc-generic-vnfm-driver/.helmignore b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-generic-vnfm-driver/Chart.yaml b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/Chart.yaml
new file mode 100644
index 0000000000..c472770b31
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/Chart.yaml
@@ -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 VFC - Generic VNFM Driver
+name: vfc-generic-vnfm-driver
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-generic-vnfm-driver/resources/config/logging/log.yml b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/resources/config/logging/log.yml
new file mode 100644
index 0000000000..123bb298ab
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/resources/config/logging/log.yml
@@ -0,0 +1,50 @@
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ driver:
+ handlers: [gvnfmdriverlocal_handler, gvnfmdriver_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ gvnfmdriverlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_gvnfmdriver.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ gvnfmdriver_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/gvnfmdriver/runtime_gvnfmdriver.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ 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
diff --git a/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/deployment.yaml
new file mode 100644
index 0000000000..825bdcec63
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/gvnfmdriver/config/log.yml
+ subPath: log.yml
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/service.yaml b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/service.yaml
new file mode 100644
index 0000000000..0495fadb53
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "gvnfmdriver",
+ "version": "v1",
+ "url": "/api/gvnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-generic-vnfm-driver/values.yaml b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/values.yaml
new file mode 100644
index 0000000000..b383a945b1
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-generic-vnfm-driver/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/gvnfmdriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-generic-vnfm-driver
+ portName: vfc-generic-vnfm-driver
+ externalPort: 8484
+ internalPort: 8484
+# nodePort: 30484
+
+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/vfc/charts/vfc-huawei-vnfm-driver/.helmignore b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/Chart.yaml b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/Chart.yaml
new file mode 100644
index 0000000000..550401c6ba
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/Chart.yaml
@@ -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 VFC - Huawei VNFM Driver
+name: vfc-huawei-vnfm-driver
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/resources/config/logging/log4j.properties b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/resources/config/logging/log4j.properties
new file mode 100644
index 0000000000..635bcc51ea
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/resources/config/logging/log4j.properties
@@ -0,0 +1,29 @@
+###############################################################################
+# Copyright 2016, Huawei Technologies Co., Ltd.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###############################################################################
+log4j.rootLogger=INFO,root
+log4j.appender.root.Append=true
+
+#Log Directory
+logDir=/var/log/onap
+componentName=vfc
+subComponentName=huaweivnfmdriver
+log4j.appender.root.File=${logDir}/${componentName}/${subComponentName}/vnfmadapterservice.log
+
+log4j.appender.root.layout.ConversionPattern=%d %-5p [%t][%X{moduleID}][%C %L] %m%n
+log4j.appender.root.layout=org.apache.log4j.PatternLayout
+log4j.appender.root.MaxBackupIndex=50
+log4j.appender.root.MaxFileSize=20MB
+log4j.appender.root=org.apache.log4j.RollingFileAppender \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/deployment.yaml
new file mode 100644
index 0000000000..28b5950b48
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/deployment.yaml
@@ -0,0 +1,122 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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 }}
+ env:
+ - name: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/hwvnfmdriver/config/log4j.properties
+ subPath: log4j.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 }}
+
+ # side car containers
+ - 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/service.yaml b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/service.yaml
new file mode 100644
index 0000000000..362656eccd
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/templates/service.yaml
@@ -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.
+
+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": "huaweivnfmdriver",
+ "version": "v1",
+ "url": "/api/huaweivnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - name: {{ .Values.service.portName }}
+ port: {{ .Values.service.internalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ - name: {{ .Values.service.portName }}2
+ port: {{ .Values.service.internalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ {{- 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" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/values.yaml b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/values.yaml
new file mode 100644
index 0000000000..407837b37e
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-huawei-vnfm-driver/values.yaml
@@ -0,0 +1,88 @@
+# 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/vfc/nfvo/svnfm/huawei:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-huawei-vnfm-driver
+ portName: vfc-huawei-vnfm-driver
+ externalPort: 8482
+ internalPort: 8482
+ externalPort2: 8483
+ internalPort2: 8483
+# nodePort: 30482
+
+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/vfc/charts/vfc-juju-vnfm-driver/.helmignore b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-juju-vnfm-driver/Chart.yaml b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/Chart.yaml
new file mode 100644
index 0000000000..d0d74071ad
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/Chart.yaml
@@ -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 VFC - Juju VNFM Driver
+name: vfc-juju-vnfm-driver
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-juju-vnfm-driver/resources/config/logging/log4j.properties b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/resources/config/logging/log4j.properties
new file mode 100644
index 0000000000..6c1dab20c4
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/resources/config/logging/log4j.properties
@@ -0,0 +1,34 @@
+###############################################################################
+# Copyright 2016 Huawei Technologies Co., Ltd.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###############################################################################
+log4j.rootLogger=INFO,root
+log4j.logger.org.openo.nfvo=DEBUG,stdout
+log4j.appender.root.Append=true
+
+#Log Directory
+logDir=/var/log/onap
+componentName=vfc
+subComponentName=jujudriver
+log4j.appender.root.File=${logDir}/${componentName}/${subComponentName}/jujuvnfmadapterservice.log
+
+log4j.appender.root.layout.ConversionPattern=%d %-5p [%t][%X{moduleID}][%C %L] %m%n
+log4j.appender.root.layout=org.apache.log4j.PatternLayout
+log4j.appender.root.MaxBackupIndex=50
+log4j.appender.root.MaxFileSize=20MB
+log4j.appender.root=org.apache.log4j.RollingFileAppender
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d %-5p [%t][%X{moduleID}][%C %L] %m%n \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/deployment.yaml
new file mode 100644
index 0000000000..1d1a5d7702
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName}}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/jujudriver/config/log4j.properties
+ subPath: log4j.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 }}
+
+ # side car containers
+ - 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/service.yaml b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/service.yaml
new file mode 100644
index 0000000000..52f9dad9bc
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "jujuvnfmdriver",
+ "version": "v1",
+ "url": "/api/jujuvnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-juju-vnfm-driver/values.yaml b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/values.yaml
new file mode 100644
index 0000000000..a27ee6ae50
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-juju-vnfm-driver/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/jujudriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-juju-vnfm-driver
+ portName: vfc-juju-vnfm-driver
+ externalPort: 8483
+ internalPort: 8483
+# nodePort: 30483
+
+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/vfc/charts/vfc-multivim-proxy/.helmignore b/kubernetes/vfc/charts/vfc-multivim-proxy/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-multivim-proxy/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-multivim-proxy/Chart.yaml b/kubernetes/vfc/charts/vfc-multivim-proxy/Chart.yaml
new file mode 100644
index 0000000000..3ceafe924c
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-multivim-proxy/Chart.yaml
@@ -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 VFC - MultiVIM Proxy
+name: vfc-multivim-proxy
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-multivim-proxy/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-multivim-proxy/templates/deployment.yaml
new file mode 100644
index 0000000000..ba33ec587d
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-multivim-proxy/templates/deployment.yaml
@@ -0,0 +1,83 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-multivim-proxy/templates/service.yaml b/kubernetes/vfc/charts/vfc-multivim-proxy/templates/service.yaml
new file mode 100644
index 0000000000..3464cdd5c6
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-multivim-proxy/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "multivimproxy",
+ "version": "v1",
+ "url": "/api/multivimproxy/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-multivim-proxy/values.yaml b/kubernetes/vfc/charts/vfc-multivim-proxy/values.yaml
new file mode 100644
index 0000000000..10eee7f0cb
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-multivim-proxy/values.yaml
@@ -0,0 +1,85 @@
+# 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/vfc/multivimproxy:1.0.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-multivim-proxy
+ portName: vfc-multivim-proxy
+ externalPort: 8481
+ internalPort: 8481
+
+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/vfc/charts/vfc-nokia-v2vnfm-driver/.helmignore b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/Chart.yaml b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/Chart.yaml
new file mode 100644
index 0000000000..dbed709128
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/Chart.yaml
@@ -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 VFC - Nokia V2VNFM Driver
+name: vfc-nokia-v2vnfm-driver
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/templates/deployment.yaml
new file mode 100644
index 0000000000..ba33ec587d
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/templates/deployment.yaml
@@ -0,0 +1,83 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/templates/service.yaml b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/templates/service.yaml
new file mode 100644
index 0000000000..4a33e49990
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "NokiaSVNFM",
+ "version": "v1",
+ "url": "/api/NokiaSVNFM/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-nokia-v2vnfm-driver/values.yaml b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/values.yaml
new file mode 100644
index 0000000000..b20446f34e
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-v2vnfm-driver/values.yaml
@@ -0,0 +1,87 @@
+# 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/vfc/nfvo/svnfm/nokiav2:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config: {}
+
+# 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: ClusterIP
+ name: vfc-nokia-v2vnfm-driver
+ portName: vfc-nokia-v2vnfm-driver
+ externalPort: 8089
+ internalPort: 8089
+# nodePort: 13
+
+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/vfc/charts/vfc-nokia-vnfm-driver/.helmignore b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/Chart.yaml b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/Chart.yaml
new file mode 100644
index 0000000000..eb3a6ce3e2
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/Chart.yaml
@@ -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 VFC - Nokia VNFM Driver
+name: vfc-nokia-vnfm-driver
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/resources/config/logging/logback.xml b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/resources/config/logging/logback.xml
new file mode 100644
index 0000000000..747c6b6551
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/resources/config/logging/logback.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+ <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
+ <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</pattern>
+ <charset>UTF-8</charset>
+ </encoder>
+ </appender>
+ <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>/var/log/onap/vfc/svnfm/nokiavnfmdriver.log</file>
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>/var/log/onap/vfc/svnfm/nokiavnfmdriver.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>10MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %X{req.method} %X{req.remoteHost} %X{req.requestURI} [%t] %-5level %logger{50} %line - %m%n</pattern>
+ <charset>UTF-8</charset>
+ </encoder>
+ </appender>
+ <root level="INFO">
+ <appender-ref ref="CONSOLE"></appender-ref>
+ <appender-ref ref="FILE"></appender-ref>
+ </root>
+</configuration> \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/deployment.yaml
new file mode 100644
index 0000000000..9c4437ee0c
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logback
+ mountPath: /opt/vfc/nokiavnfmdriver/config/logback.xml
+ subPath: logback.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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logback
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/service.yaml b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/service.yaml
new file mode 100644
index 0000000000..48c0d80670
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "nokiavnfmdriver",
+ "version": "v1",
+ "url": "/api/nokiavnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-nokia-vnfm-driver/values.yaml b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/values.yaml
new file mode 100644
index 0000000000..e4a29d96ec
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nokia-vnfm-driver/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/nfvo/svnfm/nokia:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-nokia-vnfm-driver
+ portName: vfc-nokia-vnfm-driver
+ externalPort: 8486
+ internalPort: 8486
+# nodePort: 12
+
+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/vfc/charts/vfc-nslcm/.helmignore b/kubernetes/vfc/charts/vfc-nslcm/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nslcm/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-nslcm/Chart.yaml b/kubernetes/vfc/charts/vfc-nslcm/Chart.yaml
new file mode 100644
index 0000000000..362857333a
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nslcm/Chart.yaml
@@ -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 VFC - NS Life Cycle Management
+name: vfc-nslcm
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-nslcm/resources/config/logging/log.yml b/kubernetes/vfc/charts/vfc-nslcm/resources/config/logging/log.yml
new file mode 100644
index 0000000000..4ae7ab16a8
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nslcm/resources/config/logging/log.yml
@@ -0,0 +1,50 @@
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ nslcm:
+ handlers: [nslcmlocal_handler, nslcm_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ nslcmlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_nslcm.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ nslcm_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/nslcm/runtime_nslcm.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ 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
diff --git a/kubernetes/vfc/charts/vfc-nslcm/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-nslcm/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nslcm/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-nslcm/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-nslcm/templates/deployment.yaml
new file mode 100644
index 0000000000..b2481c8f33
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nslcm/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/nslcm/config/log.yml
+ subPath: log.yml
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-nslcm/templates/service.yaml b/kubernetes/vfc/charts/vfc-nslcm/templates/service.yaml
new file mode 100644
index 0000000000..09475ca458
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nslcm/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "nslcm",
+ "version": "v1",
+ "url": "/api/nslcm/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-nslcm/values.yaml b/kubernetes/vfc/charts/vfc-nslcm/values.yaml
new file mode 100644
index 0000000000..313b5a9c91
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-nslcm/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/nslcm:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-nslcm
+ portName: vfc-nslcm
+ externalPort: 8403
+ internalPort: 8403
+# nodePort: 30403
+
+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/vfc/charts/vfc-resmgr/.helmignore b/kubernetes/vfc/charts/vfc-resmgr/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-resmgr/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-resmgr/Chart.yaml b/kubernetes/vfc/charts/vfc-resmgr/Chart.yaml
new file mode 100644
index 0000000000..604c6b64cf
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-resmgr/Chart.yaml
@@ -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 VFC - Resource Manager
+name: vfc-resmgr
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-resmgr/resources/config/logging/log4j.properties b/kubernetes/vfc/charts/vfc-resmgr/resources/config/logging/log4j.properties
new file mode 100644
index 0000000000..cde79b74d2
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-resmgr/resources/config/logging/log4j.properties
@@ -0,0 +1,29 @@
+###############################################################################
+# Copyright 2016, Huawei Technologies Co., Ltd.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###############################################################################
+log4j.rootLogger=INFO,root
+log4j.appender.root.Append=true
+
+#Log Directory
+logDir=/var/log/onap
+componentName=vfc
+subComponentName=resmanagement
+log4j.appender.root.File=${logDir}/${componentName}/${subComponentName}/resmanagement.log
+
+log4j.appender.root.layout.ConversionPattern=%d %-5p [%t][%X{moduleID}][%C %L] %m%n
+log4j.appender.root.layout=org.apache.log4j.PatternLayout
+log4j.appender.root.MaxBackupIndex=50
+log4j.appender.root.MaxFileSize=20MB
+log4j.appender.root=org.apache.log4j.RollingFileAppender \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-resmgr/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-resmgr/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-resmgr/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-resmgr/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-resmgr/templates/deployment.yaml
new file mode 100644
index 0000000000..27d5fcdd43
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-resmgr/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/resmgr/config/log4j.properties
+ subPath: log4j.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 }}
+
+ # side car containers
+ - 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-resmgr/templates/service.yaml b/kubernetes/vfc/charts/vfc-resmgr/templates/service.yaml
new file mode 100644
index 0000000000..e803b657d4
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-resmgr/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "resmgr",
+ "version": "v1",
+ "url": "/api/resmgr/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-resmgr/values.yaml b/kubernetes/vfc/charts/vfc-resmgr/values.yaml
new file mode 100644
index 0000000000..c1e7a63a15
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-resmgr/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/resmanagement:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-resmgr
+ portName: vfc-resmgr
+ externalPort: 8480
+ internalPort: 8480
+# nodePort: 30480
+
+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/vfc/charts/vfc-vnflcm/.helmignore b/kubernetes/vfc/charts/vfc-vnflcm/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnflcm/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-vnflcm/Chart.yaml b/kubernetes/vfc/charts/vfc-vnflcm/Chart.yaml
new file mode 100644
index 0000000000..507d4e6b35
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnflcm/Chart.yaml
@@ -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 VFC - VNF Life Cycle Management
+name: vfc-vnflcm
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-vnflcm/resources/config/logging/log.yml b/kubernetes/vfc/charts/vfc-vnflcm/resources/config/logging/log.yml
new file mode 100644
index 0000000000..4af8faa40f
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnflcm/resources/config/logging/log.yml
@@ -0,0 +1,50 @@
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ mgr:
+ handlers: [vnfmgrlocal_handler, vnfmgr_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ vnfmgrlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_mgr.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ vnfmgr_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/gvnfm-vnfmgr/runtime_mgr.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ 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
diff --git a/kubernetes/vfc/charts/vfc-vnflcm/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-vnflcm/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnflcm/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-vnflcm/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-vnflcm/templates/deployment.yaml
new file mode 100644
index 0000000000..ccea328c0c
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnflcm/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/gvnfm-vnflcm/config/log.yml
+ subPath: log.yml
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-vnflcm/templates/service.yaml b/kubernetes/vfc/charts/vfc-vnflcm/templates/service.yaml
new file mode 100644
index 0000000000..066e75b1ae
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnflcm/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "vnflcm",
+ "version": "v1",
+ "url": "/api/vnflcm/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-vnflcm/values.yaml b/kubernetes/vfc/charts/vfc-vnflcm/values.yaml
new file mode 100644
index 0000000000..6afc34d44a
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnflcm/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/vnflcm:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-vnflcm
+ portName: vfc-vnflcm
+ externalPort: 8801
+ internalPort: 8801
+# nodePort: 30801
+
+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/vfc/charts/vfc-vnfmgr/.helmignore b/kubernetes/vfc/charts/vfc-vnfmgr/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfmgr/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-vnfmgr/Chart.yaml b/kubernetes/vfc/charts/vfc-vnfmgr/Chart.yaml
new file mode 100644
index 0000000000..b70e11c762
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfmgr/Chart.yaml
@@ -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 VFC - VNF Manager
+name: vfc-vnfmgr
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-vnfmgr/resources/config/logging/log.yml b/kubernetes/vfc/charts/vfc-vnfmgr/resources/config/logging/log.yml
new file mode 100644
index 0000000000..4af8faa40f
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfmgr/resources/config/logging/log.yml
@@ -0,0 +1,50 @@
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ mgr:
+ handlers: [vnfmgrlocal_handler, vnfmgr_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ vnfmgrlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_mgr.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ vnfmgr_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/gvnfm-vnfmgr/runtime_mgr.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ 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
diff --git a/kubernetes/vfc/charts/vfc-vnfmgr/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-vnfmgr/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfmgr/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-vnfmgr/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-vnfmgr/templates/deployment.yaml
new file mode 100644
index 0000000000..9d31443088
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfmgr/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/gvnfm-vnfmgr/config/log.yml
+ subPath: log.yml
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-vnfmgr/templates/service.yaml b/kubernetes/vfc/charts/vfc-vnfmgr/templates/service.yaml
new file mode 100644
index 0000000000..53a195d676
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfmgr/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "vnfmgr",
+ "version": "v1",
+ "url": "/api/vnfmgr/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-vnfmgr/values.yaml b/kubernetes/vfc/charts/vfc-vnfmgr/values.yaml
new file mode 100644
index 0000000000..244e6f2b9f
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfmgr/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/vnfmgr:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-vnfmgr
+ portName: vfc-vnfmgr
+ externalPort: 8803
+ internalPort: 8803
+# nodePort: 30803
+
+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/vfc/charts/vfc-vnfres/.helmignore b/kubernetes/vfc/charts/vfc-vnfres/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfres/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-vnfres/Chart.yaml b/kubernetes/vfc/charts/vfc-vnfres/Chart.yaml
new file mode 100644
index 0000000000..5fd923bcd7
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfres/Chart.yaml
@@ -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 VFC - VNF Resource Manager
+name: vfc-vnfres
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-vnfres/resources/config/logging/log.yml b/kubernetes/vfc/charts/vfc-vnfres/resources/config/logging/log.yml
new file mode 100644
index 0000000000..c4cc1e3072
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfres/resources/config/logging/log.yml
@@ -0,0 +1,50 @@
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ lcm:
+ handlers: [vnflcmlocal_handler, vnflcm_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ vnflcmlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_lcm.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ vnflcm_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/gvnfm-vnflcm/runtime_lcm.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ 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
diff --git a/kubernetes/vfc/charts/vfc-vnfres/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-vnfres/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfres/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-vnfres/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-vnfres/templates/deployment.yaml
new file mode 100644
index 0000000000..52e807abe5
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfres/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/gvnfm-vnfres/config/log.yml
+ subPath: log.yml
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-vnfres/templates/service.yaml b/kubernetes/vfc/charts/vfc-vnfres/templates/service.yaml
new file mode 100644
index 0000000000..83b4891d52
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfres/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "vnfres",
+ "version": "v1",
+ "url": "/api/vnfres/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-vnfres/values.yaml b/kubernetes/vfc/charts/vfc-vnfres/values.yaml
new file mode 100644
index 0000000000..fec9089160
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-vnfres/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/vnfres:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-vnfres
+ portName: vfc-vnfres
+ externalPort: 8802
+ internalPort: 8802
+# nodePort: 30802
+
+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/vfc/charts/vfc-workflow-engine/.helmignore b/kubernetes/vfc/charts/vfc-workflow-engine/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow-engine/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-workflow-engine/Chart.yaml b/kubernetes/vfc/charts/vfc-workflow-engine/Chart.yaml
new file mode 100644
index 0000000000..913778b689
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow-engine/Chart.yaml
@@ -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 VFC - Workflow Engine
+name: vfc-workflow-engine
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-workflow-engine/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-workflow-engine/templates/deployment.yaml
new file mode 100644
index 0000000000..adb077a518
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow-engine/templates/deployment.yaml
@@ -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.
+
+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:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: SERVICE_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: SERVICE_PORT
+ value: "{{ .Values.config.workflowPort }}"
+ - name: OPENPALETTE_MSB_IP
+ value: "{{ .Values.global.config.msbServiceName }}"
+ - name: OPENPALETTE_MSB_PORT
+ value: "{{ .Values.global.config.msbPort | default 80 }}"
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-workflow-engine/templates/service.yaml b/kubernetes/vfc/charts/vfc-workflow-engine/templates/service.yaml
new file mode 100644
index 0000000000..1432b04943
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow-engine/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "workflow-engine",
+ "version": "v1",
+ "url": "/activiti-rest",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-workflow-engine/values.yaml b/kubernetes/vfc/charts/vfc-workflow-engine/values.yaml
new file mode 100644
index 0000000000..5a7503472e
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow-engine/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/wfengine-activiti:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-workflow-engine
+ portName: vfc-workflow-engine
+ externalPort: 8080
+ internalPort: 8080
+# nodePort: 30807
+
+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/vfc/charts/vfc-workflow/.helmignore b/kubernetes/vfc/charts/vfc-workflow/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-workflow/Chart.yaml b/kubernetes/vfc/charts/vfc-workflow/Chart.yaml
new file mode 100644
index 0000000000..a711c50671
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow/Chart.yaml
@@ -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 VFC - Workflow
+name: vfc-workflow
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-workflow/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-workflow/templates/deployment.yaml
new file mode 100644
index 0000000000..e2b3d0bc96
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow/templates/deployment.yaml
@@ -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.
+
+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:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: SERVICE_IP
+ valueFrom:
+ fieldRef:
+ fieldPath: status.podIP
+ - name: SERVICE_PORT
+ value: "{{ .Values.service.externalPort }}"
+ - name: OPENPALETTE_MSB_IP
+ value: "{{ .Values.global.config.msbServiceName }}"
+ - name: OPENPALETTE_MSB_PORT
+ value: "{{ .Values.global.config.msbPort | default 80 }}"
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-workflow/templates/service.yaml b/kubernetes/vfc/charts/vfc-workflow/templates/service.yaml
new file mode 100644
index 0000000000..079f3cbba1
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "workflow",
+ "version": "v1",
+ "url": "/api/workflow/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-workflow/values.yaml b/kubernetes/vfc/charts/vfc-workflow/values.yaml
new file mode 100644
index 0000000000..94d8673bed
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-workflow/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/wfengine-mgrservice:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-workflow
+ portName: vfc-workflow
+ externalPort: 10550
+ internalPort: 10550
+# nodePort: 30805
+
+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/vfc/charts/vfc-zte-sdnc-driver/.helmignore b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-zte-sdnc-driver/Chart.yaml b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/Chart.yaml
new file mode 100644
index 0000000000..f1d71da2d2
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/Chart.yaml
@@ -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 VFC - ZTE SDNC Driver
+name: vfc-zte-sdnc-driver
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-zte-sdnc-driver/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/templates/deployment.yaml
new file mode 100644
index 0000000000..ba33ec587d
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/templates/deployment.yaml
@@ -0,0 +1,83 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ 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 }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-zte-sdnc-driver/templates/service.yaml b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/templates/service.yaml
new file mode 100644
index 0000000000..63f41a5bcc
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "ztesdncdriver",
+ "version": "v1",
+ "url": "/api/ztesdncdriver/v1",
+ "protocol": "REST",
+ "port": "{{.Values.service.externalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-zte-sdnc-driver/values.yaml b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/values.yaml
new file mode 100644
index 0000000000..4a736e58f9
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-sdnc-driver/values.yaml
@@ -0,0 +1,86 @@
+# 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/vfc/ztesdncdriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-zte-sdnc-driver
+ portName: vfc-zte-sdnc-drive
+ externalPort: 8411
+ internalPort: 8411
+# nodePort: 30411
+
+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/vfc/charts/vfc-zte-vnfm-driver/.helmignore b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vfc/charts/vfc-zte-vnfm-driver/Chart.yaml b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/Chart.yaml
new file mode 100644
index 0000000000..b4e9f84e3d
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/Chart.yaml
@@ -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 VFC - ZTE VNFM Driver
+name: vfc-zte-vnfm-driver
+version: 2.0.0 \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-zte-vnfm-driver/resources/config/logging/log.yml b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/resources/config/logging/log.yml
new file mode 100644
index 0000000000..a0bf170fe6
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/resources/config/logging/log.yml
@@ -0,0 +1,50 @@
+version: 1
+disable_existing_loggers: False
+
+loggers:
+ ztevnfmdriver:
+ handlers: [ztevnfmdriverlocal_handler, ztevnfmdriver_handler]
+ level: "DEBUG"
+ propagate: False
+ django:
+ handlers: [django_handler]
+ level: "DEBUG"
+ propagate: False
+handlers:
+ ztevnfmdriverlocal_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/runtime_ztevnfmdriver.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+ ztevnfmdriver_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "/var/log/onap/vfc/ztevnfmdriver/runtime_ztevnfmdriver.log"
+ formatter:
+ "mdcFormat"
+ maxBytes: 52428800
+ backupCount: 10
+ django_handler:
+ level: "DEBUG"
+ class:
+ "logging.handlers.RotatingFileHandler"
+ filename: "logs/django.log"
+ formatter:
+ "standard"
+ maxBytes: 52428800
+ backupCount: 10
+formatters:
+ standard:
+ format:
+ "%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s"
+ mdcFormat:
+ 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
diff --git a/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/configmap.yaml b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/configmap.yaml
new file mode 100644
index 0000000000..1d0751a01b
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/configmap.yaml
@@ -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" . }}-logging-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/deployment.yaml b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/deployment.yaml
new file mode 100644
index 0000000000..7a0f4a1132
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/deployment.yaml
@@ -0,0 +1,121 @@
+# 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:
+ initContainers:
+#Example init container for dependency checking
+# - command:
+# - /root/ready.py
+# args:
+# - --container-name
+# - mariadb
+# 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.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: MSB_ADDR
+ value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-localtime
+ mountPath: /etc/localtime
+ readOnly: true
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-logconfig
+ mountPath: /opt/vfc/ztevnfmdriver/config/log.yml
+ subPath: log.yml
+ 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: {{ 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" . }}-logs
+ mountPath: /var/log/onap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+
+ volumes:
+ - name: {{ include "common.fullname" . }}-localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logconfig
+ configMap:
+ name : {{ include "common.fullname" . }}-logging-configmap
+
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ .Release.Name }}-vfc-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/service.yaml b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/service.yaml
new file mode 100644
index 0000000000..2a48721949
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/templates/service.yaml
@@ -0,0 +1,51 @@
+# 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 }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "ztevnfmdriver",
+ "version": "v1",
+ "url": "/api/ztevnfmdriver/v1",
+ "protocol": "REST",
+ "port": "{{ .Values.service.externalPort }}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.portName }}
+ {{- 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/vfc/charts/vfc-zte-vnfm-driver/values.yaml b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/values.yaml
new file mode 100644
index 0000000000..751e99eaf1
--- /dev/null
+++ b/kubernetes/vfc/charts/vfc-zte-vnfm-driver/values.yaml
@@ -0,0 +1,85 @@
+# 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/vfc/ztevnfmdriver:1.1.0-STAGING-latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# 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: ClusterIP
+ name: vfc-zte-vnfm-driver
+ portName: vfc-zte-vnfm-driver
+ externalPort: 8410
+ internalPort: 8410
+
+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/vfc/requirements.yaml b/kubernetes/vfc/requirements.yaml
new file mode 100644
index 0000000000..1e8f788318
--- /dev/null
+++ b/kubernetes/vfc/requirements.yaml
@@ -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' \ No newline at end of file
diff --git a/kubernetes/vfc/resources/config/logging/filebeat/filebeat.yml b/kubernetes/vfc/resources/config/logging/filebeat/filebeat.yml
new file mode 100644
index 0000000000..0bc14ea908
--- /dev/null
+++ b/kubernetes/vfc/resources/config/logging/filebeat/filebeat.yml
@@ -0,0 +1,41 @@
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among availabe Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase
diff --git a/kubernetes/vfc/templates/all-services.yaml b/kubernetes/vfc/templates/all-services.yaml
deleted file mode 100644
index 819ecffeb8..0000000000
--- a/kubernetes/vfc/templates/all-services.yaml
+++ /dev/null
@@ -1,448 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcNslcm }}
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-nslcm
- name: vfc-nslcm
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "nslcm",
- "version": "v1",
- "url": "/api/nslcm/v1",
- "protocol": "REST",
- "port": "{{.Values.nslcm.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-nslcm
- port: {{.Values.nslcm.port}}
- nodePort: {{.Values.nslcm.nodePort}}
- selector:
- app: vfc-nslcm
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcResmgr }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-resmgr
- name: vfc-resmgr
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "resmgr",
- "version": "v1",
- "url": "/api/resmgr/v1",
- "protocol": "REST",
- "port": "{{.Values.resmgr.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-resmgr
- port: {{.Values.resmgr.port}}
- nodePort: {{.Values.resmgr.nodePort}}
- selector:
- app: vfc-resmgr
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcGvnfmdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-gvnfmdriver
- name: vfc-gvnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "gvnfmdriver",
- "version": "v1",
- "url": "/api/gvnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.gvnfmdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-gvnfmdriver
- port: {{.Values.gvnfmdriver.port}}
- nodePort: {{.Values.gvnfmdriver.nodePort}}
- selector:
- app: vfc-gvnfmdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcztevnfmdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-ztevnfmdriver
- name: vfc-ztevnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "ztevnfmdriver",
- "version": "v1",
- "url": "/api/ztevnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.ztevnfmdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-ztevnfmdriver
- port: {{.Values.ztevnfmdriver.port}}
- nodePort: {{.Values.ztevnfmdriver.nodePort}}
- selector:
- app: vfc-ztevnfmdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcNokiavnfmdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-nokiavnfmdriver
- name: vfc-nokiavnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "nokiavnfmdriver",
- "version": "v1",
- "url": "/api/nokiavnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.nokiavnfmdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-nokiavnfmdriver
- port: {{.Values.nokiavnfmdriver.port}}
- nodePort: {{.Values.nokiavnfmdriver.nodePort}}
- selector:
- app: vfc-nokiavnfmdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcHwvnfmdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-hwvnfmdriver
- name: vfc-hwvnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "huaweivnfmdriver",
- "version": "v1",
- "url": "/api/huaweivnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.hwvnfmdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-hwvnfmdriver
- port: {{.Values.hwvnfmdriver.port}}
- nodePort: {{.Values.hwvnfmdriver.nodePort}}
- selector:
- app: vfc-hwvnfmdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcZtesdncdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-ztesdncdriver
- name: vfc-ztesdncdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "ztesdncdriver",
- "version": "v1",
- "url": "/api/ztesdncdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.ztesdncdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-ztesdncdriver
- port: {{.Values.ztesdncdriver.port}}
- nodePort: {{.Values.ztesdncdriver.nodePort}}
- selector:
- app: vfc-ztesdncdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcJujudriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-jujudriver
- name: vfc-jujudriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "jujuvnfmdriver",
- "version": "v1",
- "url": "/api/jujuvnfmdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.jujudriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-jujudriver
- port: {{.Values.jujudriver.port}}
- nodePort: {{.Values.jujudriver.nodePort}}
- selector:
- app: vfc-jujudriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcVnflcm }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-vnflcm
- name: vfc-vnflcm
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "vnflcm",
- "version": "v1",
- "url": "/api/vnflcm/v1",
- "protocol": "REST",
- "port": "{{.Values.vnflcm.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-vnflcm
- port: {{.Values.vnflcm.port}}
- nodePort: {{.Values.vnflcm.nodePort}}
- selector:
- app: vfc-vnflcm
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcVnfres }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-vnfres
- name: vfc-vnfres
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "vnfres",
- "version": "v1",
- "url": "/api/vnfres/v1",
- "protocol": "REST",
- "port": "{{.Values.vnfres.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-vnfres
- port: {{.Values.vnfres.port}}
- nodePort: {{.Values.vnfres.nodePort}}
- selector:
- app: vfc-vnfres
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcVnfmgr }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-vnfmgr
- name: vfc-vnfmgr
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "vnfmgr",
- "version": "v1",
- "url": "/api/vnfmgr/v1",
- "protocol": "REST",
- "port": "{{.Values.vnfmgr.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-vnfmgr
- port: {{.Values.vnfmgr.port}}
- nodePort: {{.Values.vnfmgr.nodePort}}
- selector:
- app: vfc-vnfmgr
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcEmsdriver }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-emsdriver
- name: vfc-emsdriver
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "emsdriver",
- "version": "v1",
- "url": "/api/emsdriver/v1",
- "protocol": "REST",
- "port": "{{.Values.emsdriver.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-emsdriver
- port: {{.Values.emsdriver.port}}
- nodePort: {{.Values.emsdriver.nodePort}}
- selector:
- app: vfc-emsdriver
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcWorkflow }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-workflow
- name: vfc-workflow
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "workflow",
- "version": "v1",
- "url": "/api/workflow/v1",
- "protocol": "REST",
- "port": "{{.Values.workflow.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-workflow
- port: {{.Values.workflow.port}}
- nodePort: {{.Values.workflow.nodePort}}
- selector:
- app: vfc-workflow
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcWorkflowEngineActiviti }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-workflowengineactiviti
- name: vfc-workflowengineactiviti
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "workflow",
- "version": "v1",
- "url": "/activiti-rest",
- "protocol": "REST",
- "port": "{{.Values.workflowengineactiviti.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-workflow
- port: {{.Values.workflowengineactiviti.port}}
- nodePort: {{.Values.workflowengineactiviti.nodePort}}
- selector:
- app: vfc-workflow
- type: NodePort
-#{{ end }}
-#{{ if not .Values.disableVfcVfcCatalog }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: vfc-catalog
- name: vfc-catalog
- namespace: "{{ .Values.nsPrefix }}"
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "catalog",
- "version": "v1",
- "url": "/api/catalog/v1",
- "protocol": "REST",
- "port": "{{.Values.catalog.port}}",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: vfc-catalog
- port: {{.Values.catalog.port}}
- nodePort: {{.Values.catalog.nodePort}}
- selector:
- app: vfc-catalog
- type: NodePort
-#{{ end }} \ No newline at end of file
diff --git a/kubernetes/vfc/templates/configmap.yaml b/kubernetes/vfc/templates/configmap.yaml
new file mode 100644
index 0000000000..f72ff132d9
--- /dev/null
+++ b/kubernetes/vfc/templates/configmap.yaml
@@ -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: {{ .Release.Name }}-vfc-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logging/filebeat/*").AsConfig . | indent 2 }} \ No newline at end of file
diff --git a/kubernetes/vfc/templates/vfc-catalog-deployment.yaml b/kubernetes/vfc/templates/vfc-catalog-deployment.yaml
deleted file mode 100644
index af40cbce5b..0000000000
--- a/kubernetes/vfc/templates/vfc-catalog-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcCatalog }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-catalog
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.catalog.replicas }}
- selector:
- matchLabels:
- app: vfc-catalog
- template:
- metadata:
- labels:
- app: vfc-catalog
- name: vfc-catalog
- spec:
- hostname: vfc-catalog
- containers:
- - args:
- image: {{.Values.catalog.image}}
- name: "vfc-catalog"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.catalog.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.catalog.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-emsdriver-deployment.yaml b/kubernetes/vfc/templates/vfc-emsdriver-deployment.yaml
deleted file mode 100644
index adfa3be416..0000000000
--- a/kubernetes/vfc/templates/vfc-emsdriver-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcEmsdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-emsdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.emsdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-emsdriver
- template:
- metadata:
- labels:
- app: vfc-emsdriver
- name: vfc-emsdriver
- spec:
- hostname: vfc-emsdriver
- containers:
- - args:
- image: {{.Values.emsdriver.image}}
- name: "vfc-emsdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.emsdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.emsdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-gvnfmdriver-deployment.yaml b/kubernetes/vfc/templates/vfc-gvnfmdriver-deployment.yaml
deleted file mode 100644
index 5252c5e91a..0000000000
--- a/kubernetes/vfc/templates/vfc-gvnfmdriver-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcGvnfmdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-gvnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.gvnfmdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-gvnfmdriver
- template:
- metadata:
- labels:
- app: vfc-gvnfmdriver
- name: vfc-gvnfmdriver
- spec:
- hostname: vfc-gvnfmdriver
- containers:
- - args:
- image: {{.Values.gvnfmdriver.image}}
- name: "vfc-gvnfmdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.gvnfmdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.gvnfmdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-hwvnfmdriver-deployment.yaml b/kubernetes/vfc/templates/vfc-hwvnfmdriver-deployment.yaml
deleted file mode 100644
index 9725f72c5c..0000000000
--- a/kubernetes/vfc/templates/vfc-hwvnfmdriver-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcHwvnfmdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-hwvnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.hwvnfmdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-hwvnfmdriver
- template:
- metadata:
- labels:
- app: vfc-hwvnfmdriver
- name: vfc-hwvnfmdriver
- spec:
- hostname: vfc-hwvnfmdriver
- containers:
- - args:
- image: {{.Values.hwvnfmdriver.image}}
- name: "vfc-hwvnfmdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.hwvnfmdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.hwvnfmdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-jujudriver-deployment.yaml b/kubernetes/vfc/templates/vfc-jujudriver-deployment.yaml
deleted file mode 100644
index ea1a42d8e0..0000000000
--- a/kubernetes/vfc/templates/vfc-jujudriver-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcJujudriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-jujudriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.jujudriver.replicas }}
- selector:
- matchLabels:
- app: vfc-jujudriver
- template:
- metadata:
- labels:
- app: vfc-jujudriver
- name: vfc-jujudriver
- spec:
- hostname: vfc-jujudriver
- containers:
- - args:
- image: {{.Values.jujudriver.image}}
- name: "vfc-jujudriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.jujudriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.jujudriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-nokiavnfmdriver-deployment.yaml b/kubernetes/vfc/templates/vfc-nokiavnfmdriver-deployment.yaml
deleted file mode 100644
index 843090c0d0..0000000000
--- a/kubernetes/vfc/templates/vfc-nokiavnfmdriver-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcNokiaVnfmDriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-nokiavnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.nokiavnfmdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-nokiavnfmdriver
- template:
- metadata:
- labels:
- app: vfc-nokiavnfmdriver
- name: vfc-nokiavnfmdriver
- spec:
- hostname: vfc-nokiavnfmdriver
- containers:
- - args:
- image: {{.Values.nokiavnfmdriver.image}}
- name: "vfc-nokiavnfmdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.nokiavnfmdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.nokiavnfmdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-nslcm-deployment.yaml b/kubernetes/vfc/templates/vfc-nslcm-deployment.yaml
deleted file mode 100644
index 88d5cb6fc8..0000000000
--- a/kubernetes/vfc/templates/vfc-nslcm-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcNslcm }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-nslcm
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.nslcm.replicas }}
- selector:
- matchLabels:
- app: vfc-nslcm
- template:
- metadata:
- labels:
- app: vfc-nslcm
- name: vfc-nslcm
- spec:
- hostname: vfc-nslcm
- containers:
- - args:
- image: {{.Values.nslcm.image}}
- name: "vfc-nslcm"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.nslcm.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.nslcm.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-resmgr-deployment.yaml b/kubernetes/vfc/templates/vfc-resmgr-deployment.yaml
deleted file mode 100644
index 71167d19a1..0000000000
--- a/kubernetes/vfc/templates/vfc-resmgr-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcResmgr }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-resmgr
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.resmgr.replicas }}
- selector:
- matchLabels:
- app: vfc-resmgr
- template:
- metadata:
- labels:
- app: vfc-resmgr
- name: vfc-resmgr
- spec:
- hostname: vfc-resmgr
- containers:
- - args:
- image: {{.Values.resmgr.image}}
- name: "vfc-resmgr"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.resmgr.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.resmgr.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-vnflcm-deployment.yaml b/kubernetes/vfc/templates/vfc-vnflcm-deployment.yaml
deleted file mode 100644
index c5a3893244..0000000000
--- a/kubernetes/vfc/templates/vfc-vnflcm-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcVnflcm }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-vnflcm
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vnflcm.replicas }}
- selector:
- matchLabels:
- app: vfc-vnflcm
- template:
- metadata:
- labels:
- app: vfc-vnflcm
- name: vfc-vnflcm
- spec:
- hostname: vfc-vnflcm
- containers:
- - args:
- image: {{.Values.vnflcm.image}}
- name: "vfc-vnflcm"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.vnflcm.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.vnflcm.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-vnfmgr-deployment.yaml b/kubernetes/vfc/templates/vfc-vnfmgr-deployment.yaml
deleted file mode 100644
index 240bc74015..0000000000
--- a/kubernetes/vfc/templates/vfc-vnfmgr-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcVnfmgr }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-vnfmgr
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vnfmgr.replicas }}
- selector:
- matchLabels:
- app: vfc-vnfmgr
- template:
- metadata:
- labels:
- app: vfc-vnfmgr
- name: vfc-vnfmgr
- spec:
- hostname: vfc-vnfmgr
- containers:
- - args:
- image: {{.Values.vnfmgr.image}}
- name: "vfc-vnfmgr"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.vnfmgr.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.vnfmgr.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-vnfres-deployment.yaml b/kubernetes/vfc/templates/vfc-vnfres-deployment.yaml
deleted file mode 100644
index ea394f39d8..0000000000
--- a/kubernetes/vfc/templates/vfc-vnfres-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcVnfres }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-vnfres
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vnfres.replicas }}
- selector:
- matchLabels:
- app: vfc-vnfres
- template:
- metadata:
- labels:
- app: vfc-vnfres
- name: vfc-vnfres
- spec:
- hostname: vfc-vnfres
- containers:
- - args:
- image: {{.Values.vnfres.image}}
- name: "vfc-vnfres"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.vnfres.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.vnfres.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-workflow-deployment.yaml b/kubernetes/vfc/templates/vfc-workflow-deployment.yaml
deleted file mode 100644
index d6aee58bee..0000000000
--- a/kubernetes/vfc/templates/vfc-workflow-deployment.yaml
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcWorkflow }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-workflow
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.workflow.replicas }}
- selector:
- matchLabels:
- app: vfc-workflow
- template:
- metadata:
- labels:
- app: vfc-workflow
- name: vfc-workflow
- spec:
- hostname: vfc-workflow
- containers:
- - args:
- image: {{.Values.workflow.image}}
- name: "vfc-workflow"
- env:
- - name: SERVICE_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: SERVICE_PORT
- value: "{{ .Values.workflow.port }}"
- - name: OPENPALETTE_MSB_IP
- value: msb-iag.{{ .Values.nsPrefix }}
- - name: OPENPALETTE_MSB_PORT
- value: "80"
- ports:
- - containerPort: {{ .Values.workflow.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.workflow.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-workflow-engine-activity.yaml b/kubernetes/vfc/templates/vfc-workflow-engine-activity.yaml
deleted file mode 100644
index 7db01227dc..0000000000
--- a/kubernetes/vfc/templates/vfc-workflow-engine-activity.yaml
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcWorkflowEngineActiviti }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-workflowengineactiviti
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.workflowengineactiviti.replicas }}
- selector:
- matchLabels:
- app: vfc-workflowengineactiviti
- template:
- metadata:
- labels:
- app: vfc-workflowengineactiviti
- name: vfc-workflowengineactiviti
- spec:
- hostname: vfc-workflowengineactiviti
- containers:
- - args:
- image: {{.Values.workflowengineactiviti.image}}
- name: "vfc-workflowengineactiviti"
- env:
- - name: SERVICE_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- - name: SERVICE_PORT
- value: "{{ .Values.workflow.port }}"
- - name: OPENPALETTE_MSB_IP
- value: msb-iag.{{ .Values.nsPrefix }}
- - name: OPENPALETTE_MSB_PORT
- value: "80"
- ports:
- - containerPort: {{ .Values.workflowengineactiviti.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.workflowengineactiviti.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-ztesdncdriver-deployment.yaml b/kubernetes/vfc/templates/vfc-ztesdncdriver-deployment.yaml
deleted file mode 100644
index 79e427f635..0000000000
--- a/kubernetes/vfc/templates/vfc-ztesdncdriver-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcZtesdncdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-ztesdncdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.ztesdncdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-ztesdncdriver
- template:
- metadata:
- labels:
- app: vfc-ztesdncdriver
- name: vfc-ztesdncdriver
- spec:
- hostname: vfc-ztesdncdriver
- containers:
- - args:
- image: {{.Values.ztesdncdriver.image}}
- name: "vfc-ztesdncdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.ztesdncdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.ztesdncdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml b/kubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml
deleted file mode 100644
index 4874970545..0000000000
--- a/kubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVfcVfcztevnfmdriver }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vfc-ztevnfmdriver
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.ztevnfmdriver.replicas }}
- selector:
- matchLabels:
- app: vfc-ztevnfmdriver
- template:
- metadata:
- labels:
- app: vfc-ztevnfmdriver
- name: vfc-ztevnfmdriver
- spec:
- hostname: vfc-ztevnfmdriver
- containers:
- - args:
- image: {{.Values.ztevnfmdriver.image}}
- name: "vfc-ztevnfmdriver"
- env:
- - name: MSB_ADDR
- value: {{ tpl .Values.msbaddr . }}
- ports:
- - containerPort: {{ .Values.ztevnfmdriver.port }}
- readinessProbe:
- tcpSocket:
- port: {{ .Values.ztevnfmdriver.port }}
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vfc/values.yaml b/kubernetes/vfc/values.yaml
index b301d2de4c..5a8fa38eb9 100644
--- a/kubernetes/vfc/values.yaml
+++ b/kubernetes/vfc/values.yaml
@@ -12,81 +12,21 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
-pullPolicy: IfNotPresent
-msbaddr: msb-iag.{{ .Values.nsPrefix }}:80
-nslcm:
- image: nexus3.onap.org:10001/onap/vfc/nslcm:v1.0.2
- port: 8403
- nodePort: 30403
- replicas: 1
-resmgr:
- image: nexus3.onap.org:10001/onap/vfc/resmanagement:v1.0.0
- port: 8480
- nodePort: 30480
- replicas: 1
-gvnfmdriver:
- image: nexus3.onap.org:10001/onap/vfc/gvnfmdriver:v1.0.1
- port: 8484
- nodePort: 30484
- replicas: 1
-ztevnfmdriver:
- image: nexus3.onap.org:10001/onap/vfc/ztevnfmdriver:v1.0.2
- port: 8410
- nodePort: 30410
- replicas: 1
-hwvnfmdriver:
- image: nexus3.onap.org:10001/onap/vfc/nfvo/svnfm/huawei:v1.0.2
- port: 8482
- nodePort: 30482
- replicas: 1
-ztesdncdriver:
- image: nexus3.onap.org:10001/onap/vfc/ztesdncdriver:v1.0.0
- port: 8411
- nodePort: 30411
- replicas: 1
-nokiavnfmdriver:
- image: nexus3.onap.org:10001/onap/vfc/nfvo/svnfm/nokia:v1.0.2
- port: 8486
- nodePort: 30412
- replicas: 1
-jujudriver:
- image: nexus3.onap.org:10001/onap/vfc/jujudriver:v1.0.0
- port: 8483
- nodePort: 30483
- replicas: 1
-vnflcm:
- image: nexus3.onap.org:10001/onap/vfc/vnflcm:v1.0.1
- port: 8801
- nodePort: 30801
- replicas: 1
-vnfres:
- image: nexus3.onap.org:10001/onap/vfc/vnfres:v1.0.1
- port: 8802
- nodePort: 30802
- replicas: 1
-vnfmgr:
- image: nexus3.onap.org:10001/onap/vfc/vnfmgr:v1.0.1
- port: 8803
- nodePort: 30803
- replicas: 1
-emsdriver:
- image: nexus3.onap.org:10001/onap/vfc/emsdriver:v1.0.1
- port: 8206
- nodePort: 30296
- replicas: 1
-workflow:
- image: nexus3.onap.org:10001/onap/vfc/wfengine-mgrservice:v1.0.0
- port: 10550
- nodePort: 30805
- replicas: 1
-workflowengineactiviti:
- image: nexus3.onap.org:10001/onap/vfc/wfengine-activiti:v1.0.0
- port: 8080
- nodePort: 30807
- replicas: 1
-catalog:
- image: nexus3.onap.org:10001/onap/vfc/catalog:v1.0.2
- port: 8806
- nodePort: 30806
- replicas: 1
+global:
+ config:
+ msbServiceName: msb-iag
+ msbPort: 80
+
+# application configuration
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+
+# sub-chart configuration
+vfc-workflow:
+ service:
+ externalPort: 10550
+
+vfc-workflow-engine:
+ config:
+ workflowPort: 10550
diff --git a/kubernetes/vid/.helmignore b/kubernetes/vid/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vid/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vid/Chart.yaml b/kubernetes/vid/Chart.yaml
index 9c924bbc81..4df4dae10c 100644
--- a/kubernetes/vid/Chart.yaml
+++ b/kubernetes/vid/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP Virtual Infrastructure Deployment
name: vid
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/vid/charts/mariadb/.helmignore b/kubernetes/vid/charts/mariadb/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/vid/charts/mariadb/Chart.yaml b/kubernetes/vid/charts/mariadb/Chart.yaml
new file mode 100644
index 0000000000..1f7de32fdf
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/Chart.yaml
@@ -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: VID MariaDB Service
+name: mariadb
+version: 2.0.0
diff --git a/kubernetes/vid/resources/config/lf_config/vid-my.cnf b/kubernetes/vid/charts/mariadb/resources/config/lf_config/vid-my.cnf
index 472bf4698e..472bf4698e 100755..100644
--- a/kubernetes/vid/resources/config/lf_config/vid-my.cnf
+++ b/kubernetes/vid/charts/mariadb/resources/config/lf_config/vid-my.cnf
diff --git a/kubernetes/vid/charts/mariadb/resources/config/lf_config/vid-pre-init.sql b/kubernetes/vid/charts/mariadb/resources/config/lf_config/vid-pre-init.sql
new file mode 100644
index 0000000000..8323a4ae86
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/resources/config/lf_config/vid-pre-init.sql
@@ -0,0 +1,28 @@
+/* Copyright © 2017 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.
+*/
+
+CREATE TABLE IF NOT EXISTS `vid_openecomp_epsdk`.`schema_info` (
+ `SCHEMA_ID` VARCHAR(25) NOT NULL,
+ `SCHEMA_DESC` VARCHAR(75) NOT NULL,
+ `DATASOURCE_TYPE` VARCHAR(100) NULL DEFAULT NULL,
+ `CONNECTION_URL` VARCHAR(200) NOT NULL,
+ `USER_NAME` VARCHAR(45) NOT NULL,
+ `PASSWORD` VARCHAR(45) NULL DEFAULT NULL,
+ `DRIVER_CLASS` VARCHAR(100) NOT NULL,
+ `MIN_POOL_SIZE` INT(11) NOT NULL,
+ `MAX_POOL_SIZE` INT(11) NOT NULL,
+ `IDLE_CONNECTION_TEST_PERIOD` INT(11) NOT NULL)
+ ENGINE = InnoDB
+ DEFAULT CHARACTER SET = utf8;
diff --git a/kubernetes/vid/charts/mariadb/templates/NOTES.txt b/kubernetes/vid/charts/mariadb/templates/NOTES.txt
new file mode 100644
index 0000000000..75f0a7a6b3
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/templates/NOTES.txt
@@ -0,0 +1,11 @@
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+ 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 }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/vid/templates/vid-lfconfig-configmap.yaml b/kubernetes/vid/charts/mariadb/templates/configmap.yaml
index 2809705de9..8a35df3f30 100644
--- a/kubernetes/vid/templates/vid-lfconfig-configmap.yaml
+++ b/kubernetes/vid/charts/mariadb/templates/configmap.yaml
@@ -12,12 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableVidVidMariadb }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: vid-lfconfig-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-lfconfig
+ namespace: {{ include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/lf_config/*").AsConfig . | indent 2 }}
-#{{ end }}
diff --git a/kubernetes/vid/charts/mariadb/templates/deployment.yaml b/kubernetes/vid/charts/mariadb/templates/deployment.yaml
new file mode 100644
index 0000000000..0560f60d8f
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/templates/deployment.yaml
@@ -0,0 +1,109 @@
+# 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 }}
+ {{- 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 }}
+ env:
+ - name: MYSQL_DATABASE
+ value: "{{ .Values.config.mysqldb }}"
+ - name: MYSQL_USER
+ value: "{{ .Values.config.mysqluser }}"
+ - name: MYSQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-password
+ - name: MYSQL_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: db-root-password
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /var/lib/mysql
+ name: mariadb-data
+ - mountPath: /docker-entrypoint-initdb.d/vid-pre-init.sql
+ name: lfconfig
+ subPath: vid-pre-init.sql
+ - mountPath: /etc/mysql/my.cnf
+ name: lfconfig
+ subPath: my.cnf
+ 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: mariadb-data
+ {{- if .Values.persistence.enabled }}
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ {{- else }}
+ emptyDir: {}
+ {{- end }}
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: lfconfig
+ configMap:
+ name: {{ include "common.fullname" . }}-lfconfig
+ defaultMode: 0755
+ items:
+ - key: vid-my.cnf
+ path: my.cnf
+ - key: vid-pre-init.sql
+ path: vid-pre-init.sql
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vid/charts/mariadb/templates/pv.yaml b/kubernetes/vid/charts/mariadb/templates/pv.yaml
new file mode 100644
index 0000000000..184728f8ad
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/templates/pv.yaml
@@ -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/vid/charts/mariadb/templates/pvc.yaml b/kubernetes/vid/charts/mariadb/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/templates/pvc.yaml
@@ -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/vid/charts/mariadb/templates/secrets.yaml b/kubernetes/vid/charts/mariadb/templates/secrets.yaml
new file mode 100644
index 0000000000..36096925f5
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/templates/secrets.yaml
@@ -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" . }}
+ 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.config.mariadbRootPassword | b64enc | quote }}
+ db-password: {{ .Values.config.mariadbPassword | b64enc | quote }}
diff --git a/kubernetes/cli/templates/all-service.yaml b/kubernetes/vid/charts/mariadb/templates/service.yaml
index 1ce6d97fd0..35333c441e 100644
--- a/kubernetes/cli/templates/all-service.yaml
+++ b/kubernetes/vid/charts/mariadb/templates/service.yaml
@@ -12,25 +12,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableCliCli }}
apiVersion: v1
kind: Service
metadata:
- name: cli
- namespace: "{{ .Values.nsPrefix }}"
+ name: {{ include "common.servicename" . }}
+ namespace: {{ include "common.namespace" . }}
labels:
- app: cli
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
spec:
ports:
- - name: 8080-port
- port: 8080
- targetPort: 80
- nodePort: {{ .Values.nodePortPrefix }}60
- - name: 9090-port
- port: 9090
- targetPort: 8080
- nodePort: {{ .Values.nodePortPrefix }}61
- type: NodePort
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.portName }}
selector:
- app: cli
-#{{ end }}
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/vid/charts/mariadb/values.yaml b/kubernetes/vid/charts/mariadb/values.yaml
new file mode 100644
index 0000000000..c23d8bebfa
--- /dev/null
+++ b/kubernetes/vid/charts/mariadb/values.yaml
@@ -0,0 +1,102 @@
+# 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: {}
+
+
+# application image
+repository: nexus3.onap.org:10001
+image: library/mariadb:10
+pullPolicy: Always
+
+# application configuration
+config:
+ mysqldb: vid_openecomp_epsdk
+ mysqluser: vidadmin
+ mariadbRootPassword: LF+tp_1WqgSY
+ mariadbPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## 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: vid/mariadb/data
+
+service:
+ name: vid-mariadb
+ portName: vid-mariadb
+ internalPort: 3306
+
+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/vid/requirements.yaml b/kubernetes/vid/requirements.yaml
new file mode 100644
index 0000000000..f639633537
--- /dev/null
+++ b/kubernetes/vid/requirements.yaml
@@ -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.
+
+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/vid/resources/config/lf_config/vid-pre-init.sql b/kubernetes/vid/resources/config/lf_config/vid-pre-init.sql
deleted file mode 100755
index 57b797d03c..0000000000
--- a/kubernetes/vid/resources/config/lf_config/vid-pre-init.sql
+++ /dev/null
@@ -1,32 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * VID
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-CREATE TABLE IF NOT EXISTS `vid_openecomp_epsdk`.`schema_info` (
- `SCHEMA_ID` VARCHAR(25) NOT NULL,
- `SCHEMA_DESC` VARCHAR(75) NOT NULL,
- `DATASOURCE_TYPE` VARCHAR(100) NULL DEFAULT NULL,
- `CONNECTION_URL` VARCHAR(200) NOT NULL,
- `USER_NAME` VARCHAR(45) NOT NULL,
- `PASSWORD` VARCHAR(45) NULL DEFAULT NULL,
- `DRIVER_CLASS` VARCHAR(100) NOT NULL,
- `MIN_POOL_SIZE` INT(11) NOT NULL,
- `MAX_POOL_SIZE` INT(11) NOT NULL,
- `IDLE_CONNECTION_TEST_PERIOD` INT(11) NOT NULL)
- ENGINE = InnoDB
- DEFAULT CHARACTER SET = utf8;
diff --git a/kubernetes/vid/templates/NOTES.txt b/kubernetes/vid/templates/NOTES.txt
new file mode 100644
index 0000000000..6e0b9fc06d
--- /dev/null
+++ b/kubernetes/vid/templates/NOTES.txt
@@ -0,0 +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.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={{ .Chart.Name }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/vid/templates/vid-log-configmap.yaml b/kubernetes/vid/templates/configmap.yaml
index 3a72866e0d..f7dbf07645 100644
--- a/kubernetes/vid/templates/vid-log-configmap.yaml
+++ b/kubernetes/vid/templates/configmap.yaml
@@ -12,20 +12,18 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableVidVidServer }}
apiVersion: v1
kind: ConfigMap
metadata:
- name: vid-log-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-log-configmap
+ namespace: {{ include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/log/vid/*").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: vid-filebeat-configmap
- namespace: {{ .Values.nsPrefix }}
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/log/filebeat/*").AsConfig . | indent 2 }}
-#{{ end }}
diff --git a/kubernetes/vid/templates/deployment.yaml b/kubernetes/vid/templates/deployment.yaml
new file mode 100644
index 0000000000..6da8dd2e3f
--- /dev/null
+++ b/kubernetes/vid/templates/deployment.yaml
@@ -0,0 +1,162 @@
+# 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:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.mariadb.nameOverride }}
+ 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 }}
+ 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
+ # 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 }}
+ env:
+ - name: ASDC_CLIENT_REST_HOST
+ value: sdc-be.{{ include "common.namespace" . }}
+ - name: ASDC_CLIENT_REST_AUTH
+ value: "{{ .Values.config.asdcclientrestauth }}"
+ - name: ASDC_CLIENT_REST_PORT
+ value: "{{ .Values.config.asdcclientrestport }}"
+ - name: VID_AAI_HOST
+ value: aai.{{ include "common.namespace" . }}
+ - name: VID_AAI_PORT
+ value: "{{ .Values.config.vidaaiport }}"
+ - 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 }}
+ - name: VID_MSO_PASS
+ value: "{{ .Values.config.vidmsopass }}"
+ - name: MSO_DME2_SERVER_URL
+ value: "{{ .Values.config.msodme2serverurl }}"
+ - name: MSO_DME2_ENABLED
+ value: {{ .Values.global.debugEnabled | default .Values.debugEnabled | quote }}
+ - name: VID_ECOMP_REDIRECT_URL
+ value: http://portal-app.{{ include "common.namespace" . }}:{{ .Values.config.onapport }}/ONAPPORTAL/login.htm
+ - name: VID_ECOMP_REST_URL
+ value: http://portal-app.{{ include "common.namespace" . }}:{{ .Values.config.onapport }}/ONAPPORTAL/auxapi
+ - name: VID_CONTACT_US_LINK
+ value: "{{ .Values.config.vidcontactuslink }}"
+ - name: VID_UEB_URL_LIST
+ value: message-router.{{ include "common.namespace" . }}
+ - name: VID_MYSQL_HOST
+ value: "{{ .Values.config.vidmysqlhost }}"
+ - name: VID_MYSQL_PORT
+ value: "{{ .Values.config.vidmysqlport }}"
+ - name: VID_MYSQL_DBNAME
+ value: "{{ .Values.config.vidmysqldbname }}"
+ - name: VID_MYSQL_USER
+ value: "{{ .Values.config.vidmysqluser }}"
+ - name: VID_MYSQL_PASS
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: vid-password
+ - name: VID_MYSQL_MAXCONNECTIONS
+ value: "{{ .Values.config.vidmysqlmaxconnections }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /var/log/onap
+ name: vid-logs
+ - mountPath: /tmp/logback.xml
+ name: vid-logback
+ subPath: logback.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: vid-logs
+ - mountPath: /usr/share/filebeat/data
+ name: vid-data-filebeat
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-filebeat-configmap
+ - name: vid-logs
+ emptyDir: {}
+ - name: vid-data-filebeat
+ emptyDir: {}
+ - name: vid-logback
+ configMap:
+ name: {{ include "common.fullname" . }}-log-configmap
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vid/templates/secrets.yaml b/kubernetes/vid/templates/secrets.yaml
new file mode 100644
index 0000000000..729e0b17c0
--- /dev/null
+++ b/kubernetes/vid/templates/secrets.yaml
@@ -0,0 +1,27 @@
+# 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" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ vid-password: {{ .Values.config.vidmysqlpassword | b64enc | quote }}
diff --git a/kubernetes/vid/templates/service.yaml b/kubernetes/vid/templates/service.yaml
new file mode 100644
index 0000000000..3d1097f7ff
--- /dev/null
+++ b/kubernetes/vid/templates/service.yaml
@@ -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: 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/vid/templates/vid-mariadb-deployment.yaml b/kubernetes/vid/templates/vid-mariadb-deployment.yaml
deleted file mode 100644
index 4eb46c2c02..0000000000
--- a/kubernetes/vid/templates/vid-mariadb-deployment.yaml
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVidVidMariadb }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: vid-mariadb
- name: vid-mariadb
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vidMariaDbReplicas }}
- selector:
- matchLabels:
- app: vid-mariadb
- template:
- metadata:
- labels:
- app: vid-mariadb
- name: vid-mariadb
- spec:
- containers:
- - image: {{ .Values.image.mariadb }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vid-mariadb
- env:
- - name: MYSQL_DATABASE
- value: vid_openecomp_epsdk
- - name: MYSQL_USER
- value: vidadmin
- - name: MYSQL_PASSWORD
- value: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
- - name: MYSQL_ROOT_PASSWORD
- value: LF+tp_1WqgSY
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /var/lib/mysql
- name: vid-mariadb-data
- - mountPath: /docker-entrypoint-initdb.d/vid-pre-init.sql
- name: vid-lfconfig
- subPath: vid-pre-init.sql
- - mountPath: /etc/mysql/my.cnf
- name: vid-lfconfig
- subPath: my.cnf
- ports:
- - containerPort: 3306
- readinessProbe:
- tcpSocket:
- port: 3306
- initialDelaySeconds: 5
- periodSeconds: 10
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: vid-mariadb-data
- persistentVolumeClaim:
- claimName: vid-db
- - name: vid-lfconfig
- configMap:
- name: vid-lfconfig-configmap
- defaultMode: 0755
- items:
- - key: vid-my.cnf
- path: my.cnf
- - key: vid-pre-init.sql
- path: vid-pre-init.sql
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vid/templates/vid-pv-pvc.yaml b/kubernetes/vid/templates/vid-pv-pvc.yaml
deleted file mode 100644
index 4d8db678e9..0000000000
--- a/kubernetes/vid/templates/vid-pv-pvc.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-*/}}
-
-#{{ if not .Values.disableVidVidMariadb }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-vid"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-vid"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/vid/mariadb/data
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: vid-db
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-vid"
-#{{ end }}
diff --git a/kubernetes/vid/templates/vid-server-deployment.yaml b/kubernetes/vid/templates/vid-server-deployment.yaml
deleted file mode 100644
index 7903fb02b1..0000000000
--- a/kubernetes/vid/templates/vid-server-deployment.yaml
+++ /dev/null
@@ -1,141 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVidVidServer }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: vid-server
- name: vid-server
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.vidServerReplicas }}
- selector:
- matchLabels:
- app: vid-server
- template:
- metadata:
- labels:
- app: vid-server
- name: vid-server
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - vid-mariadb
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vid-server-readiness
- containers:
- - env:
- - name: ASDC_CLIENT_REST_HOST
- value: sdc-be.{{ .Values.nsPrefix }}
- - name: ASDC_CLIENT_REST_AUTH
- value: Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU=
- - name: ASDC_CLIENT_REST_PORT
- value: "8080"
- - name: VID_AAI_HOST
- value: aai-service.{{ .Values.nsPrefix }}
- - name: VID_AAI_PORT
- value: "8443"
- - name: VID_ECOMP_SHARED_CONTEXT_REST_URL
- value: http://portalapps.{{ .Values.nsPrefix }}:8989/ONAPPORTAL/context
- - name: VID_MSO_SERVER_URL
- value: http://mso.{{ .Values.nsPrefix }}:8080
- - name: VID_MSO_PASS
- value: OBF:1ih71i271vny1yf41ymf1ylz1yf21vn41hzj1icz
- - name: MSO_DME2_SERVER_URL
- value: http://localhost:8081
- - name: MSO_DME2_ENABLED
- value: "false"
- - name: VID_ECOMP_REDIRECT_URL
- value: http://portalapps.{{ .Values.nsPrefix }}:8989/ONAPPORTAL/login.htm
- - name: VID_ECOMP_REST_URL
- value: http://portalapps.{{ .Values.nsPrefix }}:8989/ONAPPORTAL/auxapi
- - name: VID_CONTACT_US_LINK
- value: https://todo_contact_us_link.com
- - name: VID_UEB_URL_LIST
- value: dmaap.{{ .Values.nsPrefix }}
- - name: VID_MYSQL_HOST
- value: vid-mariadb
- - name: VID_MYSQL_PORT
- value: "3306"
- - name: VID_MYSQL_DBNAME
- value: vid_openecomp_epsdk
- - name: VID_MYSQL_USER
- value: vidadmin
- - name: VID_MYSQL_PASS
- value: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
- - name: VID_MYSQL_MAXCONNECTIONS
- value: "5"
- image: {{ .Values.image.vid }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vid-server
- 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: 8080
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /var/log/onap
- name: vid-logs
- - mountPath: /tmp/logback.xml
- name: vid-logback
- subPath: logback.xml
- readinessProbe:
- tcpSocket:
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 10
- - image: {{ .Values.image.filebeat }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: filebeat-onap
- volumeMounts:
- - mountPath: /usr/share/filebeat/filebeat.yml
- name: filebeat-conf
- subPath: filebeat.yml
- - mountPath: /var/log/onap
- name: vid-logs
- - mountPath: /usr/share/filebeat/data
- name: vid-data-filebeat
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: filebeat-conf
- configMap:
- name: vid-filebeat-configmap
- - name: vid-logs
- emptyDir: {}
- - name: vid-data-filebeat
- emptyDir: {}
- - name: vid-logback
- configMap:
- name: vid-log-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
diff --git a/kubernetes/vid/values.yaml b/kubernetes/vid/values.yaml
index f177476e7d..3cb1a43b4e 100644
--- a/kubernetes/vid/values.yaml
+++ b/kubernetes/vid/values.yaml
@@ -12,17 +12,96 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+# Default values for vid.
+# This is a YAML-formatted file.
+# Declare variables to be passed into your templates.
+global:
+ 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: onap/vid:1.2.1
pullPolicy: Always
-nodePortPrefix: 302
-dataRootDir: /dockerdata-nfs
-vidMariaDbReplicas: 1
-vidServerReplicas: 1
-image:
- readiness: oomk8s/readiness-check:1.1.0
- mariadb: nexus3.onap.org:10001/library/mariadb:10
- vid: nexus3.onap.org:10001/openecomp/vid:v1.1.1
- filebeat: docker.elastic.co/beats/filebeat:5.5.0
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
config:
+ vidmysqlpassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+ asdcclientrestauth: "Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+ asdcclientrestport: "8080"
+ vidaaiport: "8443"
+ onapport: "8989"
+ msoport: "8080"
+ vidmsopass: OBF:1ih71i271vny1yf41ymf1ylz1yf21vn41hzj1icz
+ msodme2serverurl: http://localhost:8081
+ vidcontactuslink: https://todo_contact_us_link.com
+ vidmysqlhost: vid-mariadb
+ vidmysqlport: "3306"
+ vidmysqldbname: vid_openecomp_epsdk
+ vidmysqluser: vidadmin
+ vidmysqlmaxconnections: "5"
logstashServiceName: log-ls
logstashPort: 5044
+
+
+# subchart configuration
+mariadb:
+ nameOverride: vid-mariadb
+
+# 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: vid
+ portName: vid
+ externalPort: "00"
+ nodePort: "00"
+ internalPort: 8080
+
+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/vnfsdk/Chart.yaml b/kubernetes/vnfsdk/Chart.yaml
index 3a1b4abbef..d11ff56434 100644
--- a/kubernetes/vnfsdk/Chart.yaml
+++ b/kubernetes/vnfsdk/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+description: ONAP VNF SDK
name: vnfsdk
-version: 1.1.0
+version: 2.0.0
diff --git a/kubernetes/vnfsdk/requirements.yaml b/kubernetes/vnfsdk/requirements.yaml
new file mode 100644
index 0000000000..3b2a02a480
--- /dev/null
+++ b/kubernetes/vnfsdk/requirements.yaml
@@ -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.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
+ - name: postgres
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/vnfsdk/templates/NOTES.txt b/kubernetes/vnfsdk/templates/NOTES.txt
new file mode 100644
index 0000000000..652e69dc3d
--- /dev/null
+++ b/kubernetes/vnfsdk/templates/NOTES.txt
@@ -0,0 +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 "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/vnfsdk/templates/all-services.yaml b/kubernetes/vnfsdk/templates/all-services.yaml
deleted file mode 100644
index b592c47bad..0000000000
--- a/kubernetes/vnfsdk/templates/all-services.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVnfsdkPostgres }}
-apiVersion: v1
-kind: Service
-metadata:
- name: postgres
- namespace: {{ .Values.nsPrefix }}
- labels:
- app: postgres
-spec:
- ports:
- - name: postgres-port
- port: 5432
- selector:
- app: postgres
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableVnfsdkRefrepo }}
----
-apiVersion: v1
-kind: Service
-metadata:
- labels:
- app: refrepo
- name: refrepo
- namespace: {{ .Values.nsPrefix }}
-spec:
- ports:
- - name: "refrepo-port"
- port: 8702
- nodePort: {{ .Values.nodePortPrefix }}97
- selector:
- app: refrepo
- type: NodePort
-#{{ end }} \ No newline at end of file
diff --git a/kubernetes/vnfsdk/templates/deployment.yaml b/kubernetes/vnfsdk/templates/deployment.yaml
new file mode 100644
index 0000000000..d8a3d360df
--- /dev/null
+++ b/kubernetes/vnfsdk/templates/deployment.yaml
@@ -0,0 +1,61 @@
+# 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:
+ selector:
+ matchLabels:
+ app: {{ include "common.name" . }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ 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:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.pullPolicy | default .Values.global.pullPolicy }}
+ name: {{ include "common.name" . }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/vnfsdk/templates/postgres-deployment.yaml b/kubernetes/vnfsdk/templates/postgres-deployment.yaml
deleted file mode 100644
index 14eb741157..0000000000
--- a/kubernetes/vnfsdk/templates/postgres-deployment.yaml
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVnfsdkPostgres }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: vnfsdk-postgres
- namespace: {{ .Values.nsPrefix }}
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: postgres
- template:
- metadata:
- labels:
- app: postgres
- name: vnfsdk-postgres
- spec:
- hostname: postgres
- containers:
- - args:
- image: {{ .Values.image.postgresImage }}:{{ .Values.image.postgresVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: "postgres"
- imagePullSecrets:
- - name: {{ .Values.nsPrefix }}-docker-registry-key
-#{{ end }}
diff --git a/kubernetes/vnfsdk/templates/refrepo-deployment.yaml b/kubernetes/vnfsdk/templates/refrepo-deployment.yaml
deleted file mode 100644
index 95d6fedad9..0000000000
--- a/kubernetes/vnfsdk/templates/refrepo-deployment.yaml
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableVnfsdkRefrepo }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- labels:
- app: refrepo
- name: vnfsdk-refrepo
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- selector:
- matchLabels:
- app: refrepo
- template:
- metadata:
- labels:
- app: refrepo
- name: vnfsdk-refrepo
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - postgres
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: "{{ .Values.image.readiness }}:{{ .Values.image.readinessVersion }}"
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: vnfsdk-readiness
- containers:
- - image: {{ .Values.image.refrepoImage }}:{{ .Values.image.refrepoVersion }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: refrepo
- readinessProbe:
- tcpSocket:
- port: 8702
- initialDelaySeconds: 5
- periodSeconds: 10
- imagePullSecrets:
- - name: {{ .Values.nsPrefix }}-docker-registry-key
-#{{ end }}
diff --git a/kubernetes/vnfsdk/templates/service.yaml b/kubernetes/vnfsdk/templates/service.yaml
new file mode 100644
index 0000000000..f6208cf965
--- /dev/null
+++ b/kubernetes/vnfsdk/templates/service.yaml
@@ -0,0 +1,38 @@
+# 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.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ name: {{ .Values.service.portName | default "http" }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/vnfsdk/values.yaml b/kubernetes/vnfsdk/values.yaml
index 3c21d5cb28..cf1be0095a 100644
--- a/kubernetes/vnfsdk/values.yaml
+++ b/kubernetes/vnfsdk/values.yaml
@@ -12,13 +12,67 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# 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
+image: onap/vnfsdk/refrepo:1.1-STAGING-latest
pullPolicy: Always
-nodePortPrefix: 302
-image:
- readiness: oomk8s/readiness-check
- readinessVersion: 1.1.0
- postgresImage: nexus3.onap.org:10001/onap/refrepo/postgres
- postgresVersion: latest
- refrepoImage: nexus3.onap.org:10001/onap/refrepo
- refrepoVersion: 1.0-STAGING-latest
+
+postgres:
+ nameOverride: vnfsdk-postgres
+ service:
+ name: vnfsdk-dbset
+ name2: vnfsdk-dbpri
+ name3: vnfsdk-dbrep
+ nfsprovisionerPrefix: vnfsdk
+ persistence:
+ mountSubPath: vnfsdk/data
+ mountInitPath: vnfsdk
+ enabled: true
+ disableNfsProvisioner: true
+ container:
+ name:
+ primary: vnfsdk-dbpri
+ replica: vnfsdk-dbrep
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+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: refrepo
+ portName: refrepo
+ nodePort: 97
+ internalPort: 8702
+
+ingress:
+ enabled: false