aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpiclose <pc457b@intl.att.com>2017-02-01 16:18:30 +0100
committerpiclose <pc457b@intl.att.com>2017-02-01 16:19:06 +0100
commit03f2362649b5bcf83d7e6e5359abf18b6810f16b (patch)
tree2107611be86508add699e6ed33e912221795f25f
parentdd8e6f97fe382311d40487749b8706f4f3ae9f94 (diff)
Initial OpenECOMP MSO mso-config cookbook commit
Change-Id: I57dfeb7fb8fceea14e1d1394f51009af141dd6a1 Signed-off-by: piclose <pc457b@intl.att.com>
-rw-r--r--.gitreview4
-rw-r--r--CHANGELOG.md13
-rw-r--r--LICENSE.txt22
-rw-r--r--README.md49
-rw-r--r--attributes/default.rb236
-rw-r--r--attributes/topology.rb17
-rw-r--r--files/default/mso-api-handler-infra-config/logback.apihandler-infra.xml139
-rw-r--r--files/default/mso-api-handler-infra-config/xsds/VnfRequestV1.xsd104
-rw-r--r--files/default/mso-appc-adapter-config/logback.appc.xml138
-rw-r--r--files/default/mso-asdc-controller-config/logback.asdc.xml138
-rw-r--r--files/default/mso-bpmn-config/logback.bpmn.xml139
-rw-r--r--files/default/mso-po-adapter-config/logback.network.xml139
-rw-r--r--files/default/mso-po-adapter-config/logback.tenant.xml139
-rw-r--r--files/default/mso-po-adapter-config/logback.vnf.xml138
-rw-r--r--files/default/mso-requests-db-adapter-config/logback.msorequestsdbadapter.xml138
-rw-r--r--files/default/mso-sdnc-adapter-config/logback.sdnc.xml138
-rw-r--r--metadata.rb7
-rw-r--r--recipes/apih.rb9
-rw-r--r--recipes/bpmn.rb6
-rw-r--r--recipes/createConfigDirectories.rb25
-rw-r--r--recipes/default.rb8
-rw-r--r--recipes/jra.rb9
-rw-r--r--recipes/mso-api-handler-infra-config.rb34
-rw-r--r--recipes/mso-appc-adapter-config.rb37
-rw-r--r--recipes/mso-asdc-controller-config.rb63
-rw-r--r--recipes/mso-bpmn-config.rb49
-rw-r--r--recipes/mso-po-adapter-config.rb37
-rw-r--r--recipes/mso-requests-db-adapter-config.rb23
-rw-r--r--recipes/mso-sdnc-adapter-config.rb37
-rw-r--r--recipes/mso-topology-config.rb14
-rw-r--r--templates/default/mso-api-handler-infra-config/mso.apihandler-infra.properties16
-rw-r--r--templates/default/mso-appc-adapter-config/mso.appc-adapter.properties21
-rw-r--r--templates/default/mso-asdc-controller-config/mso.asdc.json5
-rw-r--r--templates/default/mso-bpmn-config/mso.bpmn.properties1
-rw-r--r--templates/default/mso-bpmn-config/mso.bpmn.urn.properties110
-rw-r--r--templates/default/mso-po-adapter-config/cloud_config.json34
-rw-r--r--templates/default/mso-po-adapter-config/mso.network.properties39
-rw-r--r--templates/default/mso-po-adapter-config/mso.tenant.properties13
-rw-r--r--templates/default/mso-po-adapter-config/mso.vnf.properties38
-rw-r--r--templates/default/mso-sdnc-adapter-config/mso.sdnc.properties64
-rw-r--r--templates/default/mso-topology-config/topology.properties17
41 files changed, 2407 insertions, 0 deletions
diff --git a/.gitreview b/.gitreview
new file mode 100644
index 0000000..f1d8b7b
--- /dev/null
+++ b/.gitreview
@@ -0,0 +1,4 @@
+[gerrit]
+host=gerrit.openecomp.org
+port=29418
+project=mso/mso-config.git \ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..5f76c63
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,13 @@
+mso-config CHANGELOG
+====================
+
+This file is used to list changes made in each version of the mso-config cookbook.
+
+1.0.0
+-----
+- [pete/eddie/kevin] - Initial release for open source
+
+- - -
+Check the [Markdown Syntax Guide](http://daringfireball.net/projects/markdown/syntax) for help with Markdown.
+
+The [Github Flavored Markdown page](http://github.github.com/github-flavored-markdown/) describes the differences between markdown on github and standard markdown.
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644
index 0000000..cf1d4b6
--- /dev/null
+++ b/LICENSE.txt
@@ -0,0 +1,22 @@
+/*
+ * ============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.
+ *
+ */ \ No newline at end of file
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..a3423dc
--- /dev/null
+++ b/README.md
@@ -0,0 +1,49 @@
+mso-config Cookbook
+===================
+This cookbook will deploy the MSO configuration files.
+
+Requirements
+------------
+n/a
+
+Attributes
+----------
+<table>
+ <tr>
+ <th>Key</th>
+ <th>Type</th>
+ <th>Description</th>
+ <th>Default</th>
+ </tr>
+</table>
+
+Usage
+-----
+#### mso-config::default
+This recipe does nothing.
+
+#### mso-config::apih
+#### mso-config::bpmn
+#### mso-config::jra
+Those are used as "roles" or "profiles" to manage the configuration elements (mostly files) related to each of them. Each of these profiles will call other recipes specific to the profile.
+
+None of other recipes should be called directly, unless you **REALLY** know what you're doing.
+
+e.g.
+Just include `mso-config` in your node's `run_list`:
+
+```json
+{
+ "name":"my_node",
+ "run_list": [
+ "recipe[mso-config::apih]",
+ "recipe[mso-config::bpmn]",
+ "recipe[mso-config::jra]"
+ ]
+}
+```
+
+License and Authors
+-------------------
+Authors: pete/eddie/kevin
+License: Apache License, version 2.0
diff --git a/attributes/default.rb b/attributes/default.rb
new file mode 100644
index 0000000..d46722f
--- /dev/null
+++ b/attributes/default.rb
@@ -0,0 +1,236 @@
+######################
+# MSO Config Path
+##########
+node.default['mso_config_path'] = '/opt/mso/etc/ecomp/mso/config'
+
+######################
+# APIH INFRA
+##########
+node.default["mso-api-handler-infra-config"]["bpelURL"] = "DefaultRecipe_bpelURL"
+node.default["mso-api-handler-infra-config"]["bpelAuth"] = "DefaultRecipe_bpelAuth"
+node.default["mso-api-handler-infra-config"]["camundaURL"] = "DefaultRecipe_camundaURL"
+node.default["mso-api-handler-infra-config"]["camundaAuth"] = "DefaultRecipe_camundaAuth"
+# controls what actions the infra API (APIH) allows sent in on REST request
+node.default["mso-api-handler-infra-config"]["vnf.v1.ApiAllowableActions"] = ""
+node.default["mso-api-handler-infra-config"]["vnf.v2.ApiAllowableActions"] = "DELETE_VF_MODULE,UPDATE_VF_MODULE"
+node.default["mso-api-handler-infra-config"]["vnf.v3.ApiAllowableActions"] = "CREATE_VF_MODULE,DELETE_VF_MODULE,UPDATE_VF_MODULE"
+node.default["mso-api-handler-infra-config"]["network.v1.ApiAllowableActions"] = "DELETE,UPDATE"
+node.default["mso-api-handler-infra-config"]["network.v2.ApiAllowableActions"] = "DELETE,UPDATE"
+node.default["mso-api-handler-infra-config"]["network.v3.ApiAllowableActions"] = "CREATE,DELETE,UPDATE"
+node.default["mso-api-handler-infra-config"]["volume.v1.ApiAllowableActions"] = ""
+node.default["mso-api-handler-infra-config"]["volume.v2.ApiAllowableActions"] = "DELETE_VF_MODULE_VOL,UPDATE_VF_MODULE_VOL"
+node.default["mso-api-handler-infra-config"]["volume.v3.ApiAllowableActions"] = "CREATE_VF_MODULE_VOL,DELETE_VF_MODULE_VOL,UPDATE_VF_MODULE_VOL"
+
+
+
+######################
+# JRA
+##########
+node.default["mso-sdnc-adapter-config"]["sdncurls"] = []
+node.default["mso-sdnc-adapter-config"]["bpelurl"] = "DefaultRecipe_bpelurl"
+node.default["mso-sdnc-adapter-config"]["myurl"] = "DefaultRecipe_myurl"
+node.default["mso-sdnc-adapter-config"]["sdncauth"] = "DefaultRecipe_sdncauth"
+node.default["mso-sdnc-adapter-config"]["bpelauth"] = "DefaultRecipe_bpelauth"
+node.default["mso-sdnc-adapter-config"]["sdncconnecttime"] = "DefaultRecipe_sdncconnecttime"
+
+######################
+# JRA
+# Example of default values.
+# NOTE: This will add an element to the array, pushing default values into the template
+##########
+# node.default["mso-po-adapter-config"]["identity_services"] = [{
+# dcp_clli: "DefaultRecipe_dcp_clli",
+# keystone_url: "DefaultRecipe_keystone_url",
+# mso_id: "DefaultRecipe_mso_id",
+# mso_pass: "DefaultRecipe_mso_pass",
+# admin_tenant: "service",
+# member_role: "admin",
+# tenant_metadata: true
+# }]
+# node.default["mso-po-adapter-config"]["cloud_sites"] = [{
+# lcp_clli: "DefaultRecipe_lcp_clli",
+# region_id:"DefaultRecipe_DefaultRecipe",
+# identity_service_id:"DefaultRecipe_identity_service_id"
+# }]
+#These three are defined in the environment and require changes to update
+node.default["mso-po-adapter-config"]["vnfbpelauth"] = "DefaultRecipe_vnfbpelauth"
+node.default["mso-po-adapter-config"]["checkrequiredparameters"] = "DefaultRecipe_checkrequiredparameters"
+node.default["mso-po-adapter-config"]["nwbpelauth"] = "DefaultRecipe_nwbeplauth"
+#vnf
+node.default["mso-po-adapter-config"]["vnf"]["vnfbpelauth"] = node["mso-po-adapter-config"]["vnfbpelauth"]
+node.default["mso-po-adapter-config"]["vnf"]["checkrequiredparameters"] = node["mso-po-adapter-config"]["checkrequiredparameters"]
+node.default["mso-po-adapter-config"]["vnf"]["addgetfilesonvolumereq"] = "false"
+node.default["mso-po-adapter-config"]["vnf"]["sockettimeout"] = "30"
+node.default["mso-po-adapter-config"]["vnf"]["connecttimeout"] = "30"
+node.default["mso-po-adapter-config"]["vnf"]["retrycount"] = "5"
+node.default["mso-po-adapter-config"]["vnf"]["retryinterval"] = "-15"
+node.default["mso-po-adapter-config"]["vnf"]["retrylist"] = "408,429,500,502,503,504,900"
+node.default["mso-po-adapter-config"]["vnf"]["po.retryCodes"] = "504"
+node.default["mso-po-adapter-config"]["vnf"]["po.retryDelay"] = "5"
+node.default["mso-po-adapter-config"]["vnf"]["po.retryCount"] = "3"
+node.default["mso-po-adapter-config"]["vnf"]["heat.create.pollInterval"] = "15"
+node.default["mso-po-adapter-config"]["vnf"]["heat.delete.pollTimeout"] = "7500"
+node.default["mso-po-adapter-config"]["vnf"]["heat.delete.pollInterval"] = "15"
+node.default["mso-po-adapter-config"]["vnf"]["org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string"] = "ECOMP-MSO"
+node.default["mso-po-adapter-config"]["vnf"]["org.openecomp.mso.adapters.default_keystone_url_version"] = "/v2.0"
+node.default["mso-po-adapter-config"]["vnf"]["org.openecomp.mso.adapters.default_keystone_reg_ex"] = "/[vV][0-9]"
+#network
+node.default["mso-po-adapter-config"]["network"]["nwbpelauth"] = node["mso-po-adapter-config"]["nwbpelauth"]
+node.default["mso-po-adapter-config"]["network"]["sockettimeout"] = "5"
+node.default["mso-po-adapter-config"]["network"]["connecttimeout"] = "5"
+node.default["mso-po-adapter-config"]["network"]["retrycount"] = "5"
+node.default["mso-po-adapter-config"]["network"]["retryinterval"] = "-15"
+node.default["mso-po-adapter-config"]["network"]["retrylist"] = "408,429,500,502,503,504,900"
+node.default["mso-po-adapter-config"]["network"]["po.retryCodes"] = "504"
+node.default["mso-po-adapter-config"]["network"]["po.retryDelay"] = "5"
+node.default["mso-po-adapter-config"]["network"]["po.retryCount"] = "3"
+node.default["mso-po-adapter-config"]["network"]["heat.create.pollInterval"] = "15"
+node.default["mso-po-adapter-config"]["network"]["heat.delete.pollTimeout"] = "300"
+node.default["mso-po-adapter-config"]["network"]["heat.delete.pollInterval"] = "15"
+node.default["mso-po-adapter-config"]["network"]["org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string"] = "ECOMP-MSO"
+node.default["mso-po-adapter-config"]["network"]["org.openecomp.mso.adapters.default_keystone_url_version"] = "/v2.0"
+node.default["mso-po-adapter-config"]["network"]["org.openecomp.mso.adapters.default_keystone_reg_ex"] = "/[vV][0-9]"
+#tenant
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_tenant_description"] = "ECOMP Tenant"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_region_type"] = "single"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_user_role"] = "admin"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_success_status_string"] = "Success"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_no_regions_status_string"] = "no regions"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_orm_request_path"] = "/v1/orm/customers/"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string"] = "ECOMP-MSO"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.default_keystone_url_version"] = "/v2.0"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.default_keystone_reg_ex"] = "/[vV][0-9]"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_orm_url_replace_this"] = "8080"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_orm_url_replace_with_this"] = "7080"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.set_default_quota"] = "false"
+node.default["mso-po-adapter-config"]["tenant"]["org.openecomp.mso.adapters.tenant.default_quota_value"] = "10"
+
+######################
+# BPMN
+##########
+node.default["mso-bpmn-config"]["urnFileSystemLoadingEnabled"] = "true"
+node.default["mso-bpmn-urn-config"]["logDebugAsyncQueryAAICustomer"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugChangeFeatureActivateV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugChangeLayer3ServiceActivateV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugChangeLayer3ServiceProvV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCompleteMsoProcess"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCommonCompletion"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCreateCustomerV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCreateTenantV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteTenantV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteVCEV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugGetLayer3ServiceDetailsV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugL3ToHigherLayerAddBonding"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugL3ToHigherLayerDeleteBonding"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugLayer3ServiceActivateV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugQueryAAICustomer"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugQueryTenantInfo"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugSdncAdapter"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugSendAOTSTicket"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugVnfAdapterCreateV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugVnfAdapterDeleteV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugRemoveLayer3Service"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugLayer3TestAndTurnUpV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugVnfAdapterRollbackV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugVnfAdapterQueryV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCreateVfModuleVolume"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteVfModuleVolume"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugUpdateVfModuleVolume"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCreateCinderVolumeV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteCinderVolumeV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugUpdateCinderVolumeV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCreateNetworkV2"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteNetworkV2"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugUpdateNetworkV2"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteGenericVNFV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDisconnectLayer3Service"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCreateVfModuleVolumeInfraV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteVfModuleVolumeInfraV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugUpdateVfModuleVolumeInfraV1"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCreateServiceInstanceInfra"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteServiceInstanceInfra"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugCreateNetworkInstanceInfra"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugDeleteNetworkInstanceInfra"] = "false"
+node.default["mso-bpmn-urn-config"]["logDebugUpdateNetworkInstanceInfra"] = "false"
+node.default["mso-bpmn-urn-config"]["aaiEndpoint"] = "DefaultRecipe_sdncauth"
+node.default["mso-bpmn-urn-config"]["adaptersCompletemsoprocessEndpoint"] = "DefaultRecipe_sdncconnecttime"
+node.default["mso-bpmn-urn-config"]["adaptersDbEndpoint"] = "DefaultRecipe_adaptersDbEndpoint"
+node.default["mso-bpmn-urn-config"]["adaptersSdncEndpoint"] = "DefaultRecipe_adaptersSdncEndpoint"
+node.default["mso-bpmn-urn-config"]["adaptersTenantEndpoint"] = "DefaultRecipe_adaptersTenantEndpoint"
+node.default["mso-bpmn-urn-config"]["workflowSdncadapterCallback"] = "DefaultRecipe_workflowSdncadapterCallback"
+node.default["mso-bpmn-urn-config"]["msoKey"] = "DefaultRecipe_msoKey"
+node.default["mso-bpmn-urn-config"]["sdncPassword"] = "DefaultRecipe_sdncPassword"
+node.default["mso-bpmn-urn-config"]["adaptersPoAuth"] = "DefaultRecipe_adaptersPoAuth"
+node.default["mso-bpmn-urn-config"]["sdncTimeout"] = "DefaultRecipe_sdncTimeout"
+node.default["mso-bpmn-urn-config"]["rollback"] = "DefaultRecipe_rollback"
+node.default["mso-bpmn-urn-config"]["adaptersNetworkEndpoint"] = "DefaultRecipe_adaptersNetworkEndpoint"
+node.default["mso-bpmn-urn-config"]["adaptersNetworkRestEndpoint"] = "DefaultRecipe_adaptersNetworkRestEndpoint"
+node.default["mso-bpmn-urn-config"]["adaptersVnfAsyncEndpoint"] = "DefaultRecipe_adaptersVnfAsyncEndpoint"
+node.default["mso-bpmn-urn-config"]["workflowVnfAdapterDeleteCallback"] = "DefaultRecipe_workflowVnfAdapterDeleteCallback"
+node.default["mso-bpmn-urn-config"]["workflowVnfAdapterCreateCallback"] = "DefaultRecipe_workflowVnfAdapterCreateCallback"
+node.default["mso-bpmn-urn-config"]["adaptersVnfRestEndpoint"] = "DefaultRecipe_adaptersVnfRestEndpoint"
+node.default["mso-bpmn-urn-config"]["workflowVnfAdapterRestCallback"] = "DefaultRecipe_workflowVnfAdapterRestCallback"
+node.default["mso-bpmn-urn-config"]["adaptersPoPassword"] = "DefaultRecipe_adaptersPoPassword"
+node.default["mso-bpmn-urn-config"]["poTimeout"] = "DefaultRecipe_poTimeout"
+node.default["mso-bpmn-urn-config"]["sdncFirewallYangModel"] = "DefaultRecipe_sdncFirewallYangModel"
+node.default["mso-bpmn-urn-config"]["sdncFirewallYangModelVersion"] = "DefaultRecipe_sdncFirewallYangModelVersion"
+node.default["mso-bpmn-urn-config"]["sdncTimeoutFirewall"] = "DefaultRecipe_sdncTimeoutFirewall"
+node.default["mso-bpmn-urn-config"]["callbackRetryAttempts"] = "30"
+node.default["mso-bpmn-urn-config"]["callbackRetrySleepTime"] = "1000"
+node.default["mso-bpmn-urn-config"]["useQualifiedHost"] = "false"
+node.default["mso-bpmn-urn-config"]["workflowL3ToHigherLayerAddBondingModelName"] = "WAN Bonding v0.1"
+node.default["mso-bpmn-urn-config"]["workflowL3ToHigherLayerAddBondingModelVersion"] = "0.1"
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAINetworkGenericVnfUri"] = "/aai/v3/network/generic-vnfs/generic-vnf"
+node.default["mso-bpmn-urn-config"]["workflowDoCreateVfModuleVolumeV1AAINetworkGenericVnfUri"] = "/aai/v8/network/generic-vnfs/generic-vnf"
+node.default["mso-bpmn-urn-config"]["workflowDeleteGenericVNFV1AAINetworkGenericVnfUri"] = "/aai/v6/network/generic-vnfs/generic-vnf"
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAINetworkVpnBindingUri"] = "/aai/v6/network/vpn-bindings/vpn-binding"
+node.default["mso-bpmn-urn-config"]["workflowCreateNetworkV1AAINetworkVpnBindingUri"] = ""
+node.default["mso-bpmn-urn-config"]["workflowCreateNetworkV2AAINetworkVpnBindingUri"] = ""
+node.default["mso-bpmn-urn-config"]["workflowCreateNetworkInstanceInfraAAINetworkVpnBindingUri"] = "/aai/v8/network/vpn-bindings/vpn-binding"
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAINetworkVceUri"] = "/aai/v2/network/vces/vce"
+node.default["mso-bpmn-urn-config"]["workflowDeleteVCEV1AAINetworkVceUri"] = ""
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAINetworkL3NetworkUri"] = "/aai/v8/network/l3-networks/l3-network"
+node.default["mso-bpmn-urn-config"]["workflowCreateNetworkV1AAINetworkL3NetworkUri"] = "/aai/v6/network/l3-networks/l3-network"
+node.default["mso-bpmn-urn-config"]["workflowDeleteNetworkV1AAINetworkL3NetworkUri"] = "/aai/v6/network/l3-networks/l3-network"
+node.default["mso-bpmn-urn-config"]["workflowCreateNetworkInstanceInfraAAINetworkL3NetworkUri"] = "/aai/v8/network/l3-networks/l3-network"
+node.default["mso-bpmn-urn-config"]["workflowDeleteNetworkInstanceInfraAAINetworkL3NetworkUri"] = "/aai/v8/network/l3-networks/l3-network"
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAIBusinessCustomerUri"] = "/aai/v6/business/customers/customer"
+node.default["mso-bpmn-urn-config"]["workflowCreateServiceInstanceInfraAAIBusinessCustomerUri"] = "/aai/v8/business/customers/customer"
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAICloudInfrastructureVolumeGroupUri"] = "/aai/v6/cloud-infrastructure/volume-groups/volume-group"
+node.default["mso-bpmn-urn-config"]["workflowCreateNetworkV2AAINetworkVpnBindingUri"] = ""
+node.default["mso-bpmn-urn-config"]["workflowCreateNetworkV2AAINetworkPolicyUri"] = ""
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAICloudInfrastructureTenantUri"] = "/aai/v5/cloud-infrastructure/tenants/tenant"
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAISearchGenericQueryUri"] = "/aai/v2/search/generic-query"
+node.default["mso-bpmn-urn-config"]["workflowCreateServiceInstanceInfraAAISearchGenericQueryUri"] = "/aai/v8/search/generic-query"
+node.default["mso-bpmn-urn-config"]["workflowUCPERemoveLayer3ServiceAAISearchGenericQueryUri"] = "/aai/v6/search/generic-query"
+node.default["mso-bpmn-urn-config"]["workflowCreateAAIVfModuleAAINetworkGenericVnfUri"] = "/aai/v8/network/generic-vnfs/generic-vnf"
+node.default["mso-bpmn-urn-config"]["workflowDeleteAAIVfModuleAAINetworkGenericVnfUri"] = "/aai/v8/network/generic-vnfs/generic-vnf"
+node.default["mso-bpmn-urn-config"]["workflowDoCreateVfModuleAAINetworkGenericVnfUri"] = "/aai/v8/network/generic-vnfs/generic-vnf"
+node.default["mso-bpmn-urn-config"]["workflowPrepareUpdateAAIVfModuleAAINetworkGenericVnfUri"] = "/aai/v8/network/generic-vnfs/generic-vnf"
+node.default["mso-bpmn-urn-config"]["workflowUpdateAAIVfModuleAAINetworkGenericVnfUri"] = "/aai/v8/network/generic-vnfs/generic-vnf"
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAICloudInfrastructureCloudRegionUri"] = "/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic"
+node.default["mso-bpmn-urn-config"]["workflowCreateNetworkInstanceInfraAAICloudInfrastructureCloudRegionUri"] = "/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic"
+node.default["mso-bpmn-urn-config"]["workflowDoCreateVfModuleVolumeV1AAICloudInfrastructureCloudRegionUri"] = "/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic"
+node.default["mso-bpmn-urn-config"]["workflowDeleteVfModuleVolumeInfraV1AAICloudInfrastructureCloudRegionUri"] = "/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic"
+node.default["mso-bpmn-urn-config"]["workflowDefaultAAISearchNodesQueryUri"] = "/aai/v8/search/nodes-query"
+node.default["mso-bpmn-urn-config"]["workflowCreateAAIVfModuleVolumeGroupAaiNetworkGenericVnfUri"] = "/aai/v8/network/generic-vnfs/generic-vnf"
+
+######################
+# appc
+##########
+node.default["mso-appc-adapter-config"]["appc_url"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["appc_stub"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["appc_auth"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["appc_timeout"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["ueb_cluster_address"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["ueb_consumer_group"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["ueb_consumer_id"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["ueb_topic"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["ueb_polling_interval"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["ueb_polling_interval"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["ueb_user"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["ueb_password"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["bpel_url"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["bpel_stub"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["bpel_auth"] = "DefaultRecipe"
+node.default["mso-appc-adapter-config"]["bpel_timeout"] = "DefaultRecipe"
diff --git a/attributes/topology.rb b/attributes/topology.rb
new file mode 100644
index 0000000..72df8ba
--- /dev/null
+++ b/attributes/topology.rb
@@ -0,0 +1,17 @@
+require 'uri'
+######################
+# MSO Config Path
+##########
+node.default["mso-config"]["topology"]["apih-load-balancer"] = URI.join(node["mso-bpmn-urn-config"]["adaptersDbEndpoint"], "/").to_s
+node.default["mso-config"]["topology"]["jra-load-balancer"] = URI.join(node["mso-bpmn-urn-config"]["adaptersSdncEndpoint"], "/").to_s
+node.default["mso-config"]["topology"]["camunda-load-balancer"] = URI.join(node["mso-api-handler-infra-config"]["camundaURL"], "/").to_s
+
+node.default["mso-config"]["topology"]["site-name"] = node.chef_environment
+node.default["mso-config"]["topology"]["server-port"] = "8080"
+node.default["mso-config"]["topology"]["ssl-enable"] = "false"
+
+node.default["mso-config"]["topology"]["apih-healthcheck-urn"] = "/ecomp/mso/infra/healthcheck,/asdc/healthcheck,/dbadapters/healthcheck"
+node.default["mso-config"]["topology"]["jra-healthcheck-urn"] = "/networks/rest/healthcheck,/adapters/rest/healthcheck,/vnfs/rest/healthcheck,/tenants/rest/healthcheck"
+node.default["mso-config"]["topology"]["camunda-healthcheck-urn"] = "/mso/healthcheck"
+node.default["mso-config"]["topology"]["apih-nodehealthcheck-urn"] = "/ecomp/mso/infra/nodehealthcheck"
+node.default["mso-config"]["topology"]["jra-nodehealthcheck-urn"] = "/adapters/rest/nodehealthcheck"
diff --git a/files/default/mso-api-handler-infra-config/logback.apihandler-infra.xml b/files/default/mso-api-handler-infra-config/logback.apihandler-infra.xml
new file mode 100644
index 0000000..c5fb2db
--- /dev/null
+++ b/files/default/mso-api-handler-infra-config/logback.apihandler-infra.xml
@@ -0,0 +1,139 @@
+<configuration scan="false" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/files/default/mso-api-handler-infra-config/xsds/VnfRequestV1.xsd b/files/default/mso-api-handler-infra-config/xsds/VnfRequestV1.xsd
new file mode 100644
index 0000000..b0f39d7
--- /dev/null
+++ b/files/default/mso-api-handler-infra-config/xsds/VnfRequestV1.xsd
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <!--
+ =========================================================================
+ AT&T Proprietary (Internal Use Only) Not for use or disclosure outside
+ the AT&T companies except under written agreement (c) 2015 AT&T
+ Intellectual Property. All rights reserved. AT&T and the AT&T logo are
+ trademarks of AT&T Intellectual Property.
+ =======================================================================
+ -->
+ <!--
+ ================================================================
+ Description: This is the schema for representing GetLayer3ServiceDetails Request
+
+ ================================================================
+ Change Log:
+ Version Date Comments
+ ====== ======= ========
+ 0.10 2014-01-16. First draft
+
+ ================================================================
+ -->
+
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:tns="http://ecomp.att.com/mso/infra/vnf-request/v1"
+ targetNamespace="http://ecomp.att.com/mso/infra/vnf-request/v1"
+ elementFormDefault="qualified">
+
+
+ <element name="vnf-request">
+ <complexType>
+ <sequence>
+ <element ref="tns:request-info" />
+ <element ref="tns:vnf-inputs" />
+
+ <element name="vnf-params" type="anyType" minOccurs="0" maxOccurs="1" />
+ <element ref="tns:vnf-outputs" minOccurs="0" maxOccurs="1"/>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="request-info">
+ <complexType>
+ <sequence>
+ <element name="request-id" type="string" minOccurs="0" maxOccurs="1" />
+ <element name="action" type="tns:action-type" minOccurs="1" maxOccurs="1" />
+ <element name="request-status" type="tns:request-status-type" minOccurs="0" maxOccurs="1" />
+ <element name="status-message" type="string" minOccurs="0" maxOccurs="1" />
+ <element name="progress" type="int" minOccurs="0" maxOccurs="1" />
+ <element name="start-time" type="string" minOccurs="0" maxOccurs="1" />
+ <element name="end-time" type="string" minOccurs="0" maxOccurs="1" />
+ <element name="source" type="string" minOccurs="0" maxOccurs="1" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="vnf-inputs">
+ <complexType>
+ <sequence>
+ <element name="vnf-id" type="string" minOccurs="1" maxOccurs="1" />
+ <element name="vnf-name" type="string" minOccurs="1" maxOccurs="1" />
+
+ <element name="vnf-type" type="string" minOccurs="1" maxOccurs="1" />
+ <element name="service-type" type="string" minOccurs="0" maxOccurs="1" />
+ <element name="aic-node-clli" type="string" minOccurs="1" maxOccurs="1" />
+ <element name="tenant-id" type="string" minOccurs="1" maxOccurs="1" />
+ <element name="prov-status" type="string" minOccurs="1" maxOccurs="1" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="vnf-outputs">
+ <complexType>
+ <sequence>
+ <element name="vnf-id" type="string" minOccurs="1" maxOccurs="1" />
+ <element name="vnf-name" type="string" minOccurs="1" maxOccurs="1" />
+ <element name="aic-node-clli" type="string" minOccurs="1" maxOccurs="1" />
+ <element name="tenant-id" type="string" minOccurs="1" maxOccurs="1" />
+
+ </sequence>
+ </complexType>
+ </element>
+ <simpleType name="action-type">
+ <restriction base="string">
+ <enumeration value="CREATE" />
+ <enumeration value="SETSTATUS" />
+ <enumeration value="REPLACE" />
+ <enumeration value="UPDATE" />
+ <enumeration value="DELETE" />
+ </restriction>
+ </simpleType>
+
+ <simpleType name="request-status-type">
+ <restriction base="string">
+ <enumeration value="COMPLETE" />
+ <enumeration value="FAILED" />
+ <enumeration value="IN_PROGRESS" />
+ </restriction>
+ </simpleType>
+
+ <simpleType name="service-type">
+ <restriction base="string">
+ <enumeration value="SDN-ETHERNET-INTERNET" />
+ </restriction>
+ </simpleType>
+ </schema> \ No newline at end of file
diff --git a/files/default/mso-appc-adapter-config/logback.appc.xml b/files/default/mso-appc-adapter-config/logback.appc.xml
new file mode 100644
index 0000000..b1dc307
--- /dev/null
+++ b/files/default/mso-appc-adapter-config/logback.appc.xml
@@ -0,0 +1,138 @@
+<configuration scan="false" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/files/default/mso-asdc-controller-config/logback.asdc.xml b/files/default/mso-asdc-controller-config/logback.asdc.xml
new file mode 100644
index 0000000..7928660
--- /dev/null
+++ b/files/default/mso-asdc-controller-config/logback.asdc.xml
@@ -0,0 +1,138 @@
+<configuration scan="false" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/files/default/mso-bpmn-config/logback.bpmn.xml b/files/default/mso-bpmn-config/logback.bpmn.xml
new file mode 100644
index 0000000..0e47e06
--- /dev/null
+++ b/files/default/mso-bpmn-config/logback.bpmn.xml
@@ -0,0 +1,139 @@
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/files/default/mso-po-adapter-config/logback.network.xml b/files/default/mso-po-adapter-config/logback.network.xml
new file mode 100644
index 0000000..f9955a4
--- /dev/null
+++ b/files/default/mso-po-adapter-config/logback.network.xml
@@ -0,0 +1,139 @@
+<configuration scan="false" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/files/default/mso-po-adapter-config/logback.tenant.xml b/files/default/mso-po-adapter-config/logback.tenant.xml
new file mode 100644
index 0000000..2affffb
--- /dev/null
+++ b/files/default/mso-po-adapter-config/logback.tenant.xml
@@ -0,0 +1,139 @@
+<configuration scan="false" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/files/default/mso-po-adapter-config/logback.vnf.xml b/files/default/mso-po-adapter-config/logback.vnf.xml
new file mode 100644
index 0000000..a68b18e
--- /dev/null
+++ b/files/default/mso-po-adapter-config/logback.vnf.xml
@@ -0,0 +1,138 @@
+<configuration scan="false" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/files/default/mso-requests-db-adapter-config/logback.msorequestsdbadapter.xml b/files/default/mso-requests-db-adapter-config/logback.msorequestsdbadapter.xml
new file mode 100644
index 0000000..7d76c8b
--- /dev/null
+++ b/files/default/mso-requests-db-adapter-config/logback.msorequestsdbadapter.xml
@@ -0,0 +1,138 @@
+<configuration scan="false" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/files/default/mso-sdnc-adapter-config/logback.sdnc.xml b/files/default/mso-sdnc-adapter-config/logback.sdnc.xml
new file mode 100644
index 0000000..61b14f6
--- /dev/null
+++ b/files/default/mso-sdnc-adapter-config/logback.sdnc.xml
@@ -0,0 +1,138 @@
+<configuration scan="false" debug="true">
+ <!--<jmxConfigurator /> -->
+ <!-- directory path for all other type logs -->
+ <property name="logDir" value="/var/log/ecomp" />
+
+ <!-- directory path for debugging type logs -->
+ <property name="debugDir" value="/var/log/ecomp" />
+
+ <!-- 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/metadata.rb b/metadata.rb
new file mode 100644
index 0000000..d5be3a3
--- /dev/null
+++ b/metadata.rb
@@ -0,0 +1,7 @@
+name 'mso-config'
+maintainer 'pete/eddie/kevin'
+maintainer_email ''
+license 'Apache License, version 2.0'
+description 'Installs/Configures mso-config'
+long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
+version '1.0.0'
diff --git a/recipes/apih.rb b/recipes/apih.rb
new file mode 100644
index 0000000..1bd000d
--- /dev/null
+++ b/recipes/apih.rb
@@ -0,0 +1,9 @@
+################
+# Deploy apih config set
+#
+######
+include_recipe "mso-config::mso-api-handler-infra-config"
+include_recipe "mso-config::mso-asdc-controller-config"
+include_recipe "mso-config::mso-requests-db-adapter-config"
+include_recipe "mso-config::mso-topology-config"
+
diff --git a/recipes/bpmn.rb b/recipes/bpmn.rb
new file mode 100644
index 0000000..94bb5f7
--- /dev/null
+++ b/recipes/bpmn.rb
@@ -0,0 +1,6 @@
+################
+# Deploy bpmn config set
+#
+######
+include_recipe "mso-config::mso-bpmn-config"
+
diff --git a/recipes/createConfigDirectories.rb b/recipes/createConfigDirectories.rb
new file mode 100644
index 0000000..a983b02
--- /dev/null
+++ b/recipes/createConfigDirectories.rb
@@ -0,0 +1,25 @@
+#####################################
+# create directories
+# /opt/mso/etc/[..]
+# /opt/mso/etc/mso/[..]
+# /opt/mso/etc/mso/config/[..]
+#####################################
+["#{node['mso_config_path']}"].each do |path|
+ directory path do
+ owner "jboss"
+ group "jboss"
+ mode "0755"
+ recursive true
+ action :create
+ end
+end
+
+
+directory "#{node['mso_config_path']}" do
+ owner 'jboss'
+ group 'jboss'
+ mode '0755'
+ recursive true
+ action :create
+end
+
diff --git a/recipes/default.rb b/recipes/default.rb
new file mode 100644
index 0000000..73df902
--- /dev/null
+++ b/recipes/default.rb
@@ -0,0 +1,8 @@
+#
+# Cookbook Name:: mso-config
+# Recipe:: default
+#
+# Copyright 2016, YOUR_COMPANY_NAME
+#
+# All rights reserved - Do Not Redistribute
+#
diff --git a/recipes/jra.rb b/recipes/jra.rb
new file mode 100644
index 0000000..da46ee2
--- /dev/null
+++ b/recipes/jra.rb
@@ -0,0 +1,9 @@
+################
+# Deploy jra config set
+#
+######
+include_recipe "mso-config::mso-sdnc-adapter-config"
+include_recipe "mso-config::mso-po-adapter-config"
+include_recipe "mso-config::mso-topology-config"
+include_recipe "mso-config::mso-appc-adapter-config"
+
diff --git a/recipes/mso-api-handler-infra-config.rb b/recipes/mso-api-handler-infra-config.rb
new file mode 100644
index 0000000..6858c75
--- /dev/null
+++ b/recipes/mso-api-handler-infra-config.rb
@@ -0,0 +1,34 @@
+################
+#
+######
+include_recipe 'mso-config::createConfigDirectories'
+
+################
+#
+######
+['mso.apihandler-infra.properties'].each do |file|
+ template "#{node['mso_config_path']}#{file}" do
+ source "mso-api-handler-infra-config/#{file}"
+ owner "jboss"
+ group "jboss"
+ mode "0744"
+ variables(
+ :var => node["mso-api-handler-infra-config"]
+ )
+ end
+end
+
+remote_directory "#{node['mso_config_path']}" do
+ source "mso-api-handler-infra-config"
+ #cookbook "default is current"
+ files_mode "0744"
+ files_owner "jboss"
+ files_group "jboss"
+ mode "0755"
+ owner "jboss"
+ group "jboss"
+ overwrite true
+ recursive true
+ action :create
+end
+
diff --git a/recipes/mso-appc-adapter-config.rb b/recipes/mso-appc-adapter-config.rb
new file mode 100644
index 0000000..3dd67d7
--- /dev/null
+++ b/recipes/mso-appc-adapter-config.rb
@@ -0,0 +1,37 @@
+################
+#
+######
+include_recipe 'mso-config::createConfigDirectories'
+
+################
+#
+######
+['mso.appc-adapter.properties'].each do |file|
+ template "#{node['mso_config_path']}#{file}" do
+ source "mso-appc-adapter-config/#{file}"
+ owner "jboss"
+ group "jboss"
+ mode "0744"
+ variables(
+ :appc_vars => node["mso-appc-adapter-config"]
+ )
+ end
+end
+
+################
+#
+######
+remote_directory "#{node['mso_config_path']}" do
+ source "mso-appc-adapter-config"
+ #cookbook "default is current"
+ files_mode "0744"
+ files_owner "jboss"
+ files_group "jboss"
+ mode "0755"
+ owner "jboss"
+ group "jboss"
+ overwrite true
+ recursive true
+ action :create
+end
+
diff --git a/recipes/mso-asdc-controller-config.rb b/recipes/mso-asdc-controller-config.rb
new file mode 100644
index 0000000..0d84dec
--- /dev/null
+++ b/recipes/mso-asdc-controller-config.rb
@@ -0,0 +1,63 @@
+################
+#
+######
+include_recipe 'mso-config::createConfigDirectories'
+
+################
+#
+######
+
+if !node.attribute?("asdc-connections")
+ abort "ASDC connections not defined!\n"
+end
+
+ruby_block 'replace_consumer_group_in_asdc_json' do
+ block do
+
+ asdc_connections_reworked = Hash.new
+
+ node["asdc-connections"].each do | asdc_name, asdc_config |
+
+ asdc_client_configs = Hash.new
+ asdc_config.each do | config_name, config_value |
+
+ if "#{config_name}" == "consumerGroup" or "#{config_name}" == "consumerId"
+ asdc_client_configs[config_name] = "#{config_value}-#{node.chef_environment}#{node['hostname'][-1]}"
+ else
+ asdc_client_configs[config_name] = "#{config_value}"
+ end
+ end
+
+ asdc_connections_reworked[asdc_name] = asdc_client_configs
+ end
+
+ r = resources(template: 'mso_asdc_json')
+ r.variables(
+ :allAsdcConnections => asdc_connections_reworked
+ )
+ end
+ notifies :create, 'template[mso_asdc_json]', :immediately
+end
+
+template "mso_asdc_json" do
+ path "#{ node['mso_config_path'] }/mso.asdc.json"
+ source "mso-asdc-controller-config/mso.asdc.json"
+ owner "jboss"
+ group "jboss"
+ mode "0744"
+ action :nothing
+end
+
+remote_directory "#{node['mso_config_path']}" do
+ source "mso-asdc-controller-config"
+ #cookbook "default is current"
+ files_mode "0744"
+ files_owner "jboss"
+ files_group "jboss"
+ mode "0755"
+ owner "jboss"
+ group "jboss"
+ overwrite true
+ recursive true
+ action :create
+end
diff --git a/recipes/mso-bpmn-config.rb b/recipes/mso-bpmn-config.rb
new file mode 100644
index 0000000..3f66057
--- /dev/null
+++ b/recipes/mso-bpmn-config.rb
@@ -0,0 +1,49 @@
+################
+#
+######
+include_recipe 'mso-config::createConfigDirectories'
+
+################
+#
+######
+['mso.bpmn.properties'].each do |file|
+ template "#{node['mso_config_path']}#{file}" do
+ source "mso-bpmn-config/#{file}"
+ owner "jboss"
+ group "jboss"
+ mode "0744"
+ variables(
+ :urnFileSystemLoadingEnabled => node["mso-bpmn-config"]["urnFileSystemLoadingEnabled"],
+ )
+ end
+end
+
+################
+#
+######
+['mso.bpmn.urn.properties'].each do |file|
+ template "#{node['mso_config_path']}#{file}" do
+ source "mso-bpmn-config/#{file}"
+ owner "jboss"
+ group "jboss"
+ mode "0744"
+ variables(
+ :var => node["mso-bpmn-urn-config"],
+ :envname => node.chef_environment
+ )
+ end
+end
+
+remote_directory "#{node['mso_config_path']}" do
+ source "mso-bpmn-config"
+ #cookbook "default is current"
+ files_mode "0744"
+ files_owner "jboss"
+ files_group "jboss"
+ mode "0755"
+ owner "jboss"
+ group "jboss"
+ overwrite true
+ recursive true
+ action :create
+end \ No newline at end of file
diff --git a/recipes/mso-po-adapter-config.rb b/recipes/mso-po-adapter-config.rb
new file mode 100644
index 0000000..5c7abe8
--- /dev/null
+++ b/recipes/mso-po-adapter-config.rb
@@ -0,0 +1,37 @@
+################
+#
+######
+include_recipe 'mso-config::createConfigDirectories'
+
+################
+#
+######
+['cloud_config.json','mso.vnf.properties','mso.network.properties','mso.tenant.properties'].each do |file|
+ template "#{node['mso_config_path']}#{file}" do
+ source "mso-po-adapter-config/#{file}"
+ owner "jboss"
+ group "jboss"
+ mode "0744"
+ variables(
+ :var => node["mso-po-adapter-config"]
+ )
+ end
+end
+
+################
+#
+######
+remote_directory "#{node['mso_config_path']}" do
+ source "mso-po-adapter-config"
+ #cookbook "default is current"
+ files_mode "0744"
+ files_owner "jboss"
+ files_group "jboss"
+ mode "0755"
+ owner "jboss"
+ group "jboss"
+ overwrite true
+ recursive true
+ action :create
+end
+
diff --git a/recipes/mso-requests-db-adapter-config.rb b/recipes/mso-requests-db-adapter-config.rb
new file mode 100644
index 0000000..b0a3481
--- /dev/null
+++ b/recipes/mso-requests-db-adapter-config.rb
@@ -0,0 +1,23 @@
+################
+#
+######
+include_recipe 'mso-config::createConfigDirectories'
+
+
+################
+#
+######
+remote_directory "#{node['mso_config_path']}" do
+ source "mso-requests-db-adapter-config"
+ #cookbook "default is current"
+ files_mode "0744"
+ files_owner "jboss"
+ files_group "jboss"
+ mode "0755"
+ owner "jboss"
+ group "jboss"
+ overwrite true
+ recursive true
+ action :create
+end
+
diff --git a/recipes/mso-sdnc-adapter-config.rb b/recipes/mso-sdnc-adapter-config.rb
new file mode 100644
index 0000000..74b2be4
--- /dev/null
+++ b/recipes/mso-sdnc-adapter-config.rb
@@ -0,0 +1,37 @@
+################
+#
+######
+include_recipe 'mso-config::createConfigDirectories'
+
+################
+#
+######
+['mso.sdnc.properties'].each do |file|
+ template "#{node['mso_config_path']}#{file}" do
+ source "mso-sdnc-adapter-config/#{file}"
+ owner "jboss"
+ group "jboss"
+ mode "0744"
+ variables(
+ :var => node["mso-sdnc-adapter-config"]
+ )
+ end
+end
+
+################
+#
+######
+remote_directory "#{node['mso_config_path']}" do
+ source "mso-sdnc-adapter-config"
+ #cookbook "default is current"
+ files_mode "0744"
+ files_owner "jboss"
+ files_group "jboss"
+ mode "0755"
+ owner "jboss"
+ group "jboss"
+ overwrite true
+ recursive true
+ action :create
+end
+
diff --git a/recipes/mso-topology-config.rb b/recipes/mso-topology-config.rb
new file mode 100644
index 0000000..214c985
--- /dev/null
+++ b/recipes/mso-topology-config.rb
@@ -0,0 +1,14 @@
+######################
+# Topology template file
+##########
+['topology.properties'].each do |file|
+ template "#{node['mso_config_path']}#{file}" do
+ source "mso-topology-config/#{file}"
+ owner "jboss"
+ group "jboss"
+ mode "0744"
+ variables(
+ :var => node["mso-config"]["topology"]
+ )
+ end
+end
diff --git a/templates/default/mso-api-handler-infra-config/mso.apihandler-infra.properties b/templates/default/mso-api-handler-infra-config/mso.apihandler-infra.properties
new file mode 100644
index 0000000..1ee4206
--- /dev/null
+++ b/templates/default/mso-api-handler-infra-config/mso.apihandler-infra.properties
@@ -0,0 +1,16 @@
+# This is a chef generated properties file! Manual updates will be overridden next chef-client run, ensure desired changes are in mso-config chef cookbook or chef env file.
+bpelURL=<%= @var["bpelURL"] %>
+bpelAuth=<%= @var["bpelAuth"] %>
+camundaURL=<%= @var["camundaURL"] %>
+camundaAuth=<%= @var["camundaAuth"] %>
+
+# controls what actions the infra API (APIH) allows sent in on REST request
+vnf.v1.ApiAllowableActions=<%= @var["vnf.v1.ApiAllowableActions"] %>
+vnf.v2.ApiAllowableActions=<%= @var["vnf.v2.ApiAllowableActions"] %>
+vnf.v3.ApiAllowableActions=<%= @var["vnf.v3.ApiAllowableActions"] %>
+network.v1.ApiAllowableActions=<%= @var["network.v1.ApiAllowableActions"] %>
+network.v2.ApiAllowableActions=<%= @var["network.v2.ApiAllowableActions"] %>
+network.v3.ApiAllowableActions=<%= @var["network.v3.ApiAllowableActions"] %>
+volume.v1.ApiAllowableActions=<%= @var["volume.v1.ApiAllowableActions"] %>
+volume.v2.ApiAllowableActions=<%= @var["volume.v2.ApiAllowableActions"] %>
+volume.v3.ApiAllowableActions=<%= @var["volume.v3.ApiAllowableActions"] %>
diff --git a/templates/default/mso-appc-adapter-config/mso.appc-adapter.properties b/templates/default/mso-appc-adapter-config/mso.appc-adapter.properties
new file mode 100644
index 0000000..12233fe
--- /dev/null
+++ b/templates/default/mso-appc-adapter-config/mso.appc-adapter.properties
@@ -0,0 +1,21 @@
+# AppC base configuration
+appCURL=<%= @appc_vars["appc_url"] %>
+appCStub=<%= @appc_vars["appc_stub"] %>
+appCAuth=<%= @appc_vars["appc_auth"] %>
+appCTimeout=<%= @appc_vars["appc_timeout"] %>
+
+# UEB configuration
+UEBClusterAddress=<%= @appc_vars["ueb_cluster_address"] %>
+UEBConsumerGroup=<%= @appc_vars["ueb_consumer_group"] %>
+UEBConsumerId=<%= @appc_vars["ueb_consumer_id"] %>
+UEBTopic=<%= @appc_vars["ueb_topic"] %>
+UEBPollingInterval=<%= @appc_vars["ueb_polling_interval"] %>
+UEBPollingTimeout=<%= @appc_vars["ueb_polling_interval"] %>
+UEBUser=<%= @appc_vars["ueb_user"] %>
+UEBPassword=<%= @appc_vars["ueb_password"] %>
+
+# BPEL configuration
+bpelURL=<%= @appc_vars["bpel_url"] %>
+bpelStub=<%= @appc_vars["bpel_stub"] %>
+bpelAuth=<%= @appc_vars["bpel_auth"] %>
+bpelTimeout=<%= @appc_vars["bpel_timeout"] %> \ No newline at end of file
diff --git a/templates/default/mso-asdc-controller-config/mso.asdc.json b/templates/default/mso-asdc-controller-config/mso.asdc.json
new file mode 100644
index 0000000..e46de8b
--- /dev/null
+++ b/templates/default/mso-asdc-controller-config/mso.asdc.json
@@ -0,0 +1,5 @@
+<% require 'json' %>
+<% asdc_connections={"asdc-connections" => @allAsdcConnections, "mso.properties.reload.time.minutes" => 2} %>
+
+<%= JSON.pretty_generate(asdc_connections) %>
+
diff --git a/templates/default/mso-bpmn-config/mso.bpmn.properties b/templates/default/mso-bpmn-config/mso.bpmn.properties
new file mode 100644
index 0000000..7de2c64
--- /dev/null
+++ b/templates/default/mso-bpmn-config/mso.bpmn.properties
@@ -0,0 +1 @@
+URNMapping.FileSystemLoading.Enabled=<%= @urnFileSystemLoadingEnabled %> \ No newline at end of file
diff --git a/templates/default/mso-bpmn-config/mso.bpmn.urn.properties b/templates/default/mso-bpmn-config/mso.bpmn.urn.properties
new file mode 100644
index 0000000..7f8e823
--- /dev/null
+++ b/templates/default/mso-bpmn-config/mso.bpmn.urn.properties
@@ -0,0 +1,110 @@
+log.debug.asyncQueryAAICustomer=<%= @var["logDebugAsyncQueryAAICustomer"] %>
+log.debug.ChangeFeatureActivateV1=<%= @var["logDebugChangeFeatureActivateV1"] %>
+log.debug.ChangeLayer3ServiceActivateV1=<%= @var["logDebugChangeLayer3ServiceActivateV1"] %>
+log.debug.CompleteMsoProcess=<%= @var["logDebugCompleteMsoProcess"] %>
+log.debug.commonCompletion=<%= @var["logDebugCommonCompletion"] %>
+log.debug.CreateCustomerV1=<%= @var["logDebugCreateCustomerV1"] %>
+log.debug.CreateTenantV1=<%= @var["logDebugCreateTenantV1"] %>
+log.debug.DeleteTenantV1=<%= @var["logDebugDeleteTenantV1"] %>
+log.debug.deleteVCEV1=<%= @var["logDebugDeleteVCEV1"] %>
+log.debug.getLayer3ServiceDetailsV1=<%= @var["logDebugGetLayer3ServiceDetailsV1"] %>
+log.debug.l3ToHigherLayerAddBonding=<%= @var["logDebugL3ToHigherLayerAddBonding"] %>
+log.debug.l3ToHigherLayerDeleteBonding=<%= @var["logDebugL3ToHigherLayerDeleteBonding"] %>
+log.debug.Layer3ServiceActivateV1=<%= @var["logDebugLayer3ServiceActivateV1"] %>
+log.debug.QueryAAICustomer=<%= @var["logDebugQueryAAICustomer"] %>
+log.debug.QueryTenantInfo=<%= @var["logDebugQueryTenantInfo"] %>
+log.debug.sdncAdapter=<%= @var["logDebugSdncAdapter"] %>
+log.debug.sendAOTSTicket=<%= @var["logDebugSendAOTSTicket"] %>
+log.debug.vnfAdapterCreateV1=<%= @var["logDebugVnfAdapterCreateV1"] %>
+log.debug.vnfAdapterDeleteV1=<%= @var["logDebugVnfAdapterDeleteV1"] %>
+log.debug.RemoveLayer3Service=<%= @var["logDebugRemoveLayer3Service"] %>
+log.debug.Layer3TestAndTurnUpV1=<%= @var["logDebugLayer3TestAndTurnUpV1"] %>
+log.debug.vnfAdapterRollbackV1=<%= @var["logDebugVnfAdapterRollbackV1"] %>
+log.debug.vnfAdapterQueryV1=<%= @var["logDebugVnfAdapterQueryV1"] %>
+log.debug.CreateVfModuleVolume=<%= @var["logDebugCreateVfModuleVolume"] %>
+log.debug.DeleteVfModuleVolume=<%= @var["logDebugDeleteVfModuleVolume"] %>
+log.debug.UpdateVfModuleVolume=<%= @var["logDebugUpdateVfModuleVolume"] %>
+log.debug.createCinderVolumeV1=<%= @var["logDebugCreateCinderVolumeV1"] %>
+log.debug.deleteCinderVolumeV1=<%= @var["logDebugDeleteCinderVolumeV1"] %>
+log.debug.updateCinderVolumeV1=<%= @var["logDebugUpdateCinderVolumeV1"] %>
+log.debug.CreateNetworkV2=<%= @var["logDebugCreateNetworkV2"] %>
+log.debug.DeleteNetworkV2=<%= @var["logDebugDeleteNetworkV2"] %>
+log.debug.UpdateNetworkV2=<%= @var["logDebugUpdateNetworkV2"] %>
+log.debug.deleteGenericVNFV1=<%= @var["logDebugDeleteGenericVNFV1"] %>
+log.debug.DisconnectLayer3Service=<%= @var["logDebugDisconnectLayer3Service"] %>
+log.debug.CreateVfModuleVolumeInfraV1=<%= @var["logDebugCreateVfModuleVolumeInfraV1"] %>
+log.debug.DeleteVfModuleVolumeInfraV1=<%= @var["logDebugDeleteVfModuleVolumeInfraV1"] %>
+log.debug.UpdateVfModuleVolumeInfraV1=<%= @var["logDebugUpdateVfModuleVolumeInfraV1"] %>
+log.debug.CreateServiceInstanceInfra=<%= @var["logDebugCreateServiceInstanceInfra"] %>
+log.debug.DeleteServiceInstanceInfra=<%= @var["logDebugDeleteServiceInstanceInfra"] %>
+log.debug.CreateNetworkInstanceInfra=<%= @var["logDebugCreateNetworkInstanceInfra"] %>
+log.debug.DeleteNetworkInstanceInfra=<%= @var["logDebugDeleteNetworkInstanceInfra"] %>
+log.debug.UpdateNetworkInstanceInfra=<%= @var["logDebugUpdateNetworkInstanceInfra"] %>
+aai.endpoint=<%= @var["aaiEndpoint"] %>
+mso.adapters.completemsoprocess.endpoint=<%= @var["adaptersCompletemsoprocessEndpoint"] %>
+mso.adapters.db.endpoint=<%= @var["adaptersDbEndpoint"] %>
+mso.adapters.sdnc.endpoint=<%= @var["adaptersSdncEndpoint"] %>
+mso.adapters.tenant.endpoint=<%= @var["adaptersTenantEndpoint"] %>
+mso.workflow.sdncadapter.callback=<%= @var["workflowSdncadapterCallback"] %>
+mso.msoKey=<%= @var["msoKey"] %>
+mso.adapters.po.auth=<%= @var["adaptersPoAuth"] %>
+mso.sdnc.timeout=<%= @var["sdncTimeout"] %>
+mso.rollback=<%= @var["rollback"] %>
+mso.adapters.network.endpoint=<%= @var["adaptersNetworkEndpoint"] %>
+mso.adapters.network.rest.endpoint=<%= @var["adaptersNetworkRestEndpoint"] %>
+mso.adapters.vnf-async.endpoint=<%= @var["adaptersVnfAsyncEndpoint"] %>
+mso.workflow.vnfadapter.delete.callback=<%= @var["workflowVnfAdapterDeleteCallback"] %>
+mso.workflow.vnfadapter.create.callback=<%= @var["workflowVnfAdapterCreateCallback"] %>
+mso.adapters.vnf.rest.endpoint=<%= @var["adaptersVnfRestEndpoint"] %>
+mso.workflow.vnfadapter.rest.callback=<%= @var["workflowVnfAdapterRestCallback"] %>
+mso.po.timeout=<%= @var["poTimeout"] %>
+mso.sdnc.firewall.yang.model=<%= @var["sdncFirewallYangModel"] %>
+mso.sdnc.firewall.yang.model.version=<%= @var["sdncFirewallYangModelVersion"] %>
+mso.sdnc.timeout.firewall.minutes=<%= @var["sdncTimeoutFirewall"] %>
+mso.callbackRetryAttempts=<%= @var["callbackRetryAttempts"] %>
+mso.callbackRetrySleepTime=<%= @var["callbackRetrySleepTime"] %>
+mso.use.qualified.host=<%= @var["useQualifiedHost"] %>
+mso.workflow.l3ToHigherLayerAddBonding.model.name=<%= @var["workflowL3ToHigherLayerAddBondingModelName"] %>
+mso.workflow.l3ToHigherLayerAddBonding.model.version=<%= @var["workflowL3ToHigherLayerAddBondingModelVersion"] %>
+mso.sitename=<%= @envname %>
+mso.workflow.default.aai.network.generic-vnf.uri=<%= @var["workflowDefaultAAINetworkGenericVnfUri"] %>
+mso.workflow.deleteGenericVNFV1.aai.network.generic-vnf.uri=<%= @var["workflowDeleteGenericVNFV1AAINetworkGenericVnfUri"] %>
+mso.workflow.DoCreateVfModuleVolumeV1.aai.network.generic-vnf.uri=<%= @var["workflowDoCreateVfModuleVolumeV1AAINetworkGenericVnfUri"] %>
+mso.workflow.default.aai.network.vpn-binding.uri=<%= @var["workflowDefaultAAINetworkVpnBindingUri"] %>
+mso.workflow.CreateNetworkV2.aai.network.vpn-binding.uri=<%= @var["workflowCreateNetworkV2AAINetworkVpnBindingUri"] %>
+mso.workflow.CreateNetworkInstanceInfra.aai.network.vpn-binding.uri=<%= @var["workflowCreateNetworkInstanceInfraAAINetworkVpnBindingUri"] %>
+mso.workflow.default.aai.network.policy.uri=<%= @var["workflowDefaultAAINetworkPolicyUri"] %>
+mso.workflow.CreateNetworkV2.aai.network.policy.uri=<%= @var["workflowCreateNetworkV2AAINetworkPolicyUri"] %>
+mso.workflow.createNetworkV1.aai.network.generic-vnf.uri=<%= @var["workflowCreateNetworkV1AAINetworkVpnBindingUri"] %>
+mso.workflow.default.aai.network.vce.uri=<%= @var["workflowDefaultAAINetworkVceUri"] %>
+mso.workflow.deleteVCEV1.aai.network.vce.uri=<%= @var["workflowDeleteVCEV1AAINetworkVceUri"] %>
+mso.workflow.default.aai.network.l3-network.uri=<%= @var["workflowDefaultAAINetworkL3NetworkUri"] %>
+mso.workflow.createNetworkV1.aai.network.l3-network.uri=<%= @var["workflowCreateNetworkV1AAINetworkL3NetworkUri"] %>
+mso.workflow.deleteNetworkV1.aai.network.l3-network.uri=<%= @var["workflowDeleteNetworkV1AAINetworkL3NetworkUri"] %>
+mso.workflow.CreateNetworkV2.aai.network.l3-network.uri=<%= @var["workflowCreateNetworkV2AAINetworkL3NetworkUri"] %>
+mso.workflow.DeleteNetworkV2.aai.network.l3-network.uri=<%= @var["workflowDeleteNetworkV2AAINetworkL3NetworkUri"] %>
+mso.workflow.UpdateNetworkV2.aai.network.l3-network.uri=<%= @var["workflowUpdateNetworkV2AAINetworkL3NetworkUri"] %>
+mso.workflow.CreateNetworkInstanceInfra.aai.network.l3-network.uri=<%= @var["workflowCreateNetworkInstanceInfraAAINetworkL3NetworkUri"] %>
+mso.workflow.DeleteNetworkInstanceInfra.aai.network.l3-network.uri=<%= @var["workflowDeleteNetworkInstanceInfraAAINetworkL3NetworkUri"] %>
+mso.workflow.default.aai.business.customer.uri=<%= @var["workflowDefaultAAIBusinessCustomerUri"] %>
+mso.workflow.CreateServiceInstanceInfra.aai.business.customer.uri=<%= @var["workflowCreateServiceInstanceInfraAAIBusinessCustomerUri"] %>
+mso.workflow.default.aai.cloud-infrastructure.volume-group.uri=<%= @var["workflowDefaultAAICloudInfrastructureVolumeGroupUri"] %>
+mso.workflow.default.aai.cloud-infrastructure.tenant.uri=<%= @var["workflowDefaultAAICloudInfrastructureTenantUri"] %>
+mso.workflow.default.aai.search.generic-query.uri=<%= @var["workflowDefaultAAISearchGenericQueryUri"] %>
+mso.workflow.CreateServiceInstanceInfra.aai.search.generic-query.uri=<%= @var["workflowCreateServiceInstanceInfraAAISearchGenericQueryUri"] %>
+mso.workflow.default.aai.search.nodes-query.uri=<%= @var["workflowDefaultAAISearchNodesQueryUri"] %>
+mso.workflow.ucpeRemoveLayer3Service.aai.search.generic-query.uri=<%= @var["workflowUCPERemoveLayer3ServiceAAISearchGenericQueryUri"] %>
+mso.workflow.CreateAAIVfModule.aai.network.generic-vnf.uri=<%= @var["workflowCreateAAIVfModuleAAINetworkGenericVnfUri"] %>
+mso.workflow.DeleteAAIVfModule.aai.network.generic-vnf.uri=<%= @var["workflowDeleteAAIVfModuleAAINetworkGenericVnfUri"] %>
+mso.workflow.DoCreateVfModule.aai.network.generic-vnf.uri=<%= @var["workflowDoCreateVfModuleAAINetworkGenericVnfUri"] %>
+mso.workflow.PrepareUpdateAAIVfModule.aai.network.generic-vnf.uri=<%= @var["workflowPrepareUpdateAAIVfModuleAAINetworkGenericVnfUri"] %>
+mso.workflow.UpdateAAIVfModule.aai.network.generic-vnf.uri=<%= @var["workflowUpdateAAIVfModuleAAINetworkGenericVnfUri"] %>
+mso.workflow.default.aai.cloud-infrastructure.cloud-region.uri=<%= @var["workflowDefaultAAICloudInfrastructureCloudRegionUri"] %>
+mso.workflow.CreateNetworkInstanceInfra.aai.cloud-infrastructure.cloud-region.uri=<%= @var["workflowCreateNetworkInstanceInfraAAICloudInfrastructureCloudRegionUri"] %>
+mso.workflow.DoCreateVfModuleVolumeV1.aai.cloud-infrastructure.cloud-region.uri=<%= @var["workflowDoCreateVfModuleVolumeV1AAICloudInfrastructureCloudRegionUri"] %>
+mso.workflow.DeleteVfModuleVolumeInfraV1.aai.cloud-infrastructure.cloud-region.uri=<%= @var["workflowDeleteVfModuleVolumeInfraV1AAICloudInfrastructureCloudRegionUri"] %>
+mso.workflow.CreateAAIVfModuleVolumeGroup.aai.network.generic-vnf.uri=<%= @var["workflowCreateAAIVfModuleVolumeGroupAaiNetworkGenericVnfUri"] %>
+<% if @var.has_key?('aaiAuth') %>
+aai.auth=<%= @var["aaiAuth"] %>
+<% end %>
+
diff --git a/templates/default/mso-po-adapter-config/cloud_config.json b/templates/default/mso-po-adapter-config/cloud_config.json
new file mode 100644
index 0000000..41586c1
--- /dev/null
+++ b/templates/default/mso-po-adapter-config/cloud_config.json
@@ -0,0 +1,34 @@
+{
+ "cloud_config":
+ {
+ "identity_services":
+ {
+ <% @var["identity_services"].each_with_index do |item,count| %>
+ "<%= item[:dcp_clli] %>":
+ {
+ "identity_url": "<%= item[:identity_url] %>",
+ "mso_id": "<%= item[:mso_id] %>",
+ "mso_pass": "<%= item[:mso_pass] %>",
+ "admin_tenant": "<%= item[:admin_tenant] %>",
+ "member_role": "<%= item[:member_role] %>",
+ "tenant_metadata": <%= item[:tenant_metadata] %>,
+ "identity_server_type": "<%= item[:identity_server_type] %>",
+ "identity_authentication_type": "<%= item[:identity_authentication_type] %>"
+ }<%= ',' if count < (@var["identity_services"].size - 1) %>
+ <% end %>
+ },
+ "cloud_sites":
+ {
+ <% @var["cloud_sites"].each_with_index do |item,count| %>
+ "<%= item[:id] %>":
+ {
+ "region_id": "<%= item[:region_id] %>",
+ "clli": "<%= item[:lcp_clli] %>",
+ "aic_version": "<%= item[:aic_version] %>",
+ "identity_service_id": "<%= item[:identity_service_id] %>"
+ }<%= ',' if count < (@var["cloud_sites"].size - 1) %>
+ <% end %>
+ }
+ }
+}
+
diff --git a/templates/default/mso-po-adapter-config/mso.network.properties b/templates/default/mso-po-adapter-config/mso.network.properties
new file mode 100644
index 0000000..cab41f0
--- /dev/null
+++ b/templates/default/mso-po-adapter-config/mso.network.properties
@@ -0,0 +1,39 @@
+# MSO Properties go here
+org.openecomp.mso.adapters.network.bpelauth=<%= @var["network"]["nwbpelauth"] %>
+
+# Socket timeout for BPEL client (in seconds)
+org.openecomp.mso.adapters.network.sockettimeout=<%= @var["network"]["sockettimeout"] %>
+
+# Connect timeout for BPEL client (in seconds)
+org.openecomp.mso.adapters.network.connecttimeout=<%= @var["network"]["connecttimeout"] %>
+
+# Max number of times to retry for BPEL client
+org.openecomp.mso.adapters.network.retrycount=<%= @var["network"]["retrycount"] %>
+
+# Default interval to wait between retries (in seconds), negative means use backoff algorithm
+org.openecomp.mso.adapters.network.retryinterval=<%= @var["network"]["retryinterval"] %>
+
+# Default list of response codes to trigger a retry (900 is "connection failed")
+org.openecomp.mso.adapters.network.retrylist=<%= @var["network"]["retrylist"] %>
+
+###########
+#po
+###
+ecomp.mso.adapters.po.retryCodes=<%= @var["network"]["po.retryCodes"] %>
+ecomp.mso.adapters.po.retryDelay=<%= @var["network"]["po.retryDelay"] %>
+ecomp.mso.adapters.po.retryCount=<%= @var["network"]["po.retryCount"] %>
+
+###########
+#heat
+###
+ecomp.mso.adapters.heat.create.pollInterval=<%= @var["network"]["heat.create.pollInterval"] %>
+ecomp.mso.adapters.heat.delete.pollTimeout=<%= @var["network"]["heat.delete.pollTimeout"] %>
+ecomp.mso.adapters.heat.delete.pollInterval=<%= @var["network"]["heat.delete.pollInterval"] %>
+
+###########
+#needed in network file also for keystoneEP/ORM
+###########
+org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string=<%= @var["network"]["org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string"] %>
+org.openecomp.mso.adapters.default_keystone_url_version=<%= @var["network"]["org.openecomp.mso.adapters.default_keystone_url_version"] %>
+org.openecomp.mso.adapters.default_keystone_reg_ex=<%= @var["network"]["org.openecomp.mso.adapters.default_keystone_reg_ex"] %>
+
diff --git a/templates/default/mso-po-adapter-config/mso.tenant.properties b/templates/default/mso-po-adapter-config/mso.tenant.properties
new file mode 100644
index 0000000..52910b0
--- /dev/null
+++ b/templates/default/mso-po-adapter-config/mso.tenant.properties
@@ -0,0 +1,13 @@
+org.openecomp.mso.adapters.tenant.default_tenant_description=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_tenant_description"] %>
+org.openecomp.mso.adapters.tenant.default_region_type=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_region_type"] %>
+org.openecomp.mso.adapters.tenant.default_user_role=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_user_role"] %>
+org.openecomp.mso.adapters.tenant.default_success_status_string=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_success_status_string"] %>
+org.openecomp.mso.adapters.tenant.default_no_regions_status_string=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_no_regions_status_string"] %>
+org.openecomp.mso.adapters.tenant.default_orm_request_path=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_orm_request_path"] %>
+org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string"] %>
+org.openecomp.mso.adapters.default_keystone_url_version=<%= @var["tenant"]["org.openecomp.mso.adapters.default_keystone_url_version"] %>
+org.openecomp.mso.adapters.default_keystone_reg_ex=<%= @var["tenant"]["org.openecomp.mso.adapters.default_keystone_reg_ex"] %>
+org.openecomp.mso.adapters.tenant.default_orm_url_replace_this=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_orm_url_replace_this"] %>
+org.openecomp.mso.adapters.tenant.default_orm_url_replace_with_this=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_orm_url_replace_with_this"] %>
+org.openecomp.mso.adapters.tenant.default_quota_value=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.default_quota_value"] %>
+org.openecomp.mso.adapters.tenant.set_default_quota=<%= @var["tenant"]["org.openecomp.mso.adapters.tenant.set_default_quota"] %>
diff --git a/templates/default/mso-po-adapter-config/mso.vnf.properties b/templates/default/mso-po-adapter-config/mso.vnf.properties
new file mode 100644
index 0000000..1711a31
--- /dev/null
+++ b/templates/default/mso-po-adapter-config/mso.vnf.properties
@@ -0,0 +1,38 @@
+###########
+#vnf
+###
+org.openecomp.mso.adapters.vnf.bpelauth=<%= @var["vnf"]["vnfbpelauth"] %>
+org.openecomp.mso.adapters.vnf.checkRequiredParameters=<%= @var["vnf"]["checkrequiredparameters"] %>
+org.openecomp.mso.adapters.vnf.addGetFilesOnVolumeReq=<%= @var["vnf"]["addgetfilesonvolumereq"] %>
+# Socket timeout for BPEL client (in seconds)
+org.openecomp.mso.adapters.vnf.sockettimeout=<%= @var["vnf"]["sockettimeout"] %>
+# Connect timeout for BPEL client (in seconds)
+org.openecomp.mso.adapters.vnf.connecttimeout=<%= @var["vnf"]["connecttimeout"] %>
+# Max number of times to retry for BPEL client
+org.openecomp.mso.adapters.vnf.retrycount=<%= @var["vnf"]["retrycount"] %>
+# Default interval to wait between retries (in seconds), negative means use backoff algorithm
+org.openecomp.mso.adapters.vnf.retryinterval=<%= @var["vnf"]["retryinterval"] %>
+# Default list of response codes to trigger a retry (900 is "connection failed")
+org.openecomp.mso.adapters.vnf.retrylist=<%= @var["vnf"]["retrylist"] %>
+
+###########
+#po
+###
+ecomp.mso.adapters.po.retryCodes=<%= @var["vnf"]["po.retryCodes"] %>
+ecomp.mso.adapters.po.retryDelay=<%= @var["vnf"]["po.retryDelay"] %>
+ecomp.mso.adapters.po.retryCount=<%= @var["vnf"]["po.retryCount"] %>
+
+###########
+#heat
+###
+ecomp.mso.adapters.heat.create.pollInterval=<%= @var["vnf"]["heat.create.pollInterval"] %>
+ecomp.mso.adapters.heat.delete.pollTimeout=<%= @var["vnf"]["heat.delete.pollTimeout"] %>
+ecomp.mso.adapters.heat.delete.pollInterval=<%= @var["vnf"]["heat.delete.pollInterval"] %>
+
+###########
+#needed in vnf file also for keystoneEP/ORM
+###########
+org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string=<%= @var["vnf"]["org.openecomp.mso.adapters.tenant.default_x_aic_orm_client_string"] %>
+org.openecomp.mso.adapters.default_keystone_url_version=<%= @var["vnf"]["org.openecomp.mso.adapters.default_keystone_url_version"] %>
+org.openecomp.mso.adapters.default_keystone_reg_ex=<%= @var["vnf"]["org.openecomp.mso.adapters.default_keystone_reg_ex"] %>
+
diff --git a/templates/default/mso-sdnc-adapter-config/mso.sdnc.properties b/templates/default/mso-sdnc-adapter-config/mso.sdnc.properties
new file mode 100644
index 0000000..339783f
--- /dev/null
+++ b/templates/default/mso-sdnc-adapter-config/mso.sdnc.properties
@@ -0,0 +1,64 @@
+#MSO SDNCA Properties go here
+#DA Prod Dallas
+#EE End2End
+#ST SystemTest
+#IT Integration Test
+#DV Development
+#MY My Laptop
+###
+### UNIQUE SDNCURLs for Requests supported by SDNCA. URLS have unique tags eg a format like sdncurlX (X is a unique eg a digit)
+###
+<% @var["sdncurls"].each_with_index do |url, index| %>
+<% indexplusone = index + 1 %>
+<%= "org.openecomp.mso.adapters.sdnc.sdncurl#{indexplusone}=#{url}" %>
+<% end %>
+### BPEL ASYNC CALLLBACK/NOTIFICATION URL
+###
+org.openecomp.mso.adapters.sdnc.bpelurl=<%= @var["bpelurl"] %>
+###
+### SDNC ASYNC NOTIFICATION/RESPONSE URL
+###
+org.openecomp.mso.adapters.sdnc.myurl=<%= @var["myurl"] %>
+### Production value diff from other servers
+org.openecomp.mso.adapters.sdnc.sdncauth=<%= @var["sdncauth"] %>
+org.openecomp.mso.adapters.sdnc.bpelauth=<%= @var["bpelauth"] %>
+org.openecomp.mso.adapters.sdnc.sdncconnecttime=<%= @var["sdncconnecttime"] %>
+###
+### Distinct Requests Supported by SDNCA. sdncurls added on top of file. fields may be null eg msoaction,operation resulting in .. construct
+###
+###org.openecomp.mso.adapters.sdnc.MSOACTION.OPERATION.ACTION=METHOD|TIMEOUT|URL|HEADERNAME|NAMESPACE
+###
+
+org.openecomp.mso.adapters.sdnc.mobility..query=GET|60000|sdncurl4|
+org.openecomp.mso.adapters.sdnc...query=GET|60000|sdncurl2|
+org.openecomp.mso.adapters.sdnc...put=PUT|60000|sdncurl4|
+org.openecomp.mso.adapters.sdnc...restdelete=DELETE|60000|sdncurl4|
+org.openecomp.mso.adapters.sdnc.gammainternet.svc-topology-operation.assign=POST|60000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc.gammainternet.svc-topology-operation.delete=POST|250000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc.gammainternet.service-configuration-operation.reserve=POST|60000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc.gammainternet.service-configuration-operation.activate=POST|60000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc.gammainternet.service-configuration-operation.delete=POST|250000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc.gammainternet.service-configuration-operation.turnup=POST|60000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc.gammainternet.service-configuration-operation.changereserve=POST|60000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc.gammainternet.service-configuration-operation.changedelete=POST|250000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc.gammainternet.service-configuration-operation.changeactivate=POST|60000|sdncurl1|sdnc-request-header|com:att:sdnctl:l3api
+org.openecomp.mso.adapters.sdnc..feature-configuration-operation.activate=POST|60000|sdncurl3|sdnc-feature-request-header|com:att:sdnctl:firewallapi
+org.openecomp.mso.adapters.sdnc..feature-configuration-operation.changeactivate=POST|60000|sdncurl3|sdnc-feature-request-header|com:att:sdnctl:firewallapi
+org.openecomp.mso.adapters.sdnc..feature-configuration-operation.delete=POST|60000|sdncurl3|sdnc-feature-request-header|com:att:sdnctl:firewallapi
+org.openecomp.mso.adapters.sdnc..vnf-topology-operation.assign=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..vnf-topology-operation.activate=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..vnf-topology-operation.rollback=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..vnf-topology-operation.delete=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..vnf-topology-operation.changeassign=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..vnf-topology-operation.changedelete=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..network-topology-operation.reserve=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..network-topology-operation.assign=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..network-topology-operation.activate=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..network-topology-operation.rollback=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..network-topology-operation.delete=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..network-topology-operation.changeassign=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+org.openecomp.mso.adapters.sdnc..network-topology-operation.changedelete=POST|270000|sdncurl5|sdnc-request-header|com:att:sdnctl:vnf
+
+org.openecomp.mso.adapters.sdnc..svc-topology-operation.assign=POST|270000|sdncurl6|sdnc-request-header|com:att:sdnctl:nbncapi
+org.openecomp.mso.adapters.sdnc..svc-topology-operation.activate=POST|270000|sdncurl6|sdnc-request-header|com:att:sdnctl:nbncapi
+org.openecomp.mso.adapters.sdnc..svc-topology-operation.delete=POST|270000|sdncurl6|sdnc-request-header|com:att:sdnctl:nbncapi
diff --git a/templates/default/mso-topology-config/topology.properties b/templates/default/mso-topology-config/topology.properties
new file mode 100644
index 0000000..46fbc92
--- /dev/null
+++ b/templates/default/mso-topology-config/topology.properties
@@ -0,0 +1,17 @@
+# This is the topology used by the global healthcheck
+apih-load-balancer=<%= @var["apih-load-balancer"] %>
+jra-load-balancer=<%= @var["jra-load-balancer"] %>
+camunda-load-balancer=<%= @var["camunda-load-balancer"] %>
+
+# will be used as entry in DB to say SITE OFF/ON for healthcheck
+site-name=<%= @var["site-name"] %>
+
+server-port=<%= @var["server-port"] %>
+ssl-enable=<%= @var["ssl-enable"] %>
+
+apih-healthcheck-urn=<%= @var["apih-healthcheck-urn"] %>
+jra-healthcheck-urn=<%= @var["jra-healthcheck-urn"] %>
+camunda-healthcheck-urn=<%= @var["camunda-healthcheck-urn"] %>
+
+apih-nodehealthcheck-urn=<%= @var["apih-nodehealthcheck-urn"] %>
+jra-nodehealthcheck-urn=<%= @var["jra-nodehealthcheck-urn"] %>