Cassandra OOM Alignment

Change-Id: If9792919dba17936965b45361888a44a12a76b67
Issue-ID: SDC-911
Signed-off-by: Yuli Shlosberg <ys9693@att.com>
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/attributes/default.rb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/attributes/default.rb
new file mode 100644
index 0000000..6bac10e
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/attributes/default.rb
@@ -0,0 +1 @@
+normal['version'] ="1.2.0"
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/01-createCsUser.rb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/01-createCsUser.rb
new file mode 100644
index 0000000..2eb6d58
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/01-createCsUser.rb
@@ -0,0 +1,18 @@
+template "/tmp/create_cassandra_user.sh" do
+  source "create_cassandra_user.sh.erb"
+  sensitive true
+  mode 0755
+  variables({
+     :cassandra_ip => node['Nodes']['CS'],
+     :cassandra_pwd => ENV['CS_PASSWORD'],
+     :sdc_usr => ENV['SDC_USER'],
+     :sdc_pwd => ENV['SDC_PASSWORD']
+  })
+end
+
+
+bash "create-sdc-user" do
+   code <<-EOH
+     cd /tmp ; /tmp/create_cassandra_user.sh
+   EOH
+end
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/02-createDoxKeyspace.rb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/02-createDoxKeyspace.rb
new file mode 100644
index 0000000..87edf8c
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/02-createDoxKeyspace.rb
@@ -0,0 +1,38 @@
+template "/tmp/create_dox_keyspace.sh" do
+    source "create_dox_keyspace.sh.erb"
+    sensitive true
+    mode 0755
+    variables({
+      :cassandra_ip => node['Nodes']['CS'],
+      :DC_NAME      => node['cassandra'][:cluster_name]+node.chef_environment,
+      :cassandra_pwd => node['cassandra'][:cassandra_password],
+      :cassandra_usr => node['cassandra'][:cassandra_user]
+    })
+end
+
+
+remote_directory '/tmp/tools' do
+    source 'tools'
+    mode '0755'
+    files_mode '0755'
+    action :create
+end
+
+
+bash "onboard-db-schema-creation" do
+    ignore_failure true
+    code <<-EOH
+     cd /tmp/tools/build/scripts
+     chmod +x onboard-db-schema-creation.sh
+     bash /tmp/tools/build/scripts/onboard-db-schema-creation.sh
+    EOH
+end
+    
+bash "create-DOX-schema" do
+    ignore_failure true
+    code <<-EOH
+     cd /tmp 
+     chmod +x /tmp/create_dox_keyspace.sh
+     /tmp/create_dox_keyspace.sh
+    EOH
+end
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/03-schemaCreation.rb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/03-schemaCreation.rb
new file mode 100644
index 0000000..ea8daf0
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/03-schemaCreation.rb
@@ -0,0 +1,72 @@
+cookbook_file "/tmp/sdctool.tar" do
+  source "sdctool.tar"
+  mode 0755
+end
+
+## extract sdctool.tar
+bash "install tar" do
+  cwd "/tmp"
+  code <<-EOH
+     /bin/tar xf /tmp/sdctool.tar -C /tmp
+  EOH
+end
+
+
+template "titan.properties" do
+  sensitive true
+  path "/tmp/sdctool/config/titan.properties"
+  source "titan.properties.erb"
+  mode "0755"
+  variables({
+     :DC_NAME      => node['cassandra'][:cluster_name]+node.chef_environment,
+     :cassandra_ip             => node['Nodes']['CS'],
+     :cassandra_pwd => node['cassandra'][:cassandra_password],
+     :cassandra_usr => node['cassandra'][:cassandra_user],
+     :titan_connection_timeout => node['cassandra']['titan_connection_timeout']
+  })
+end
+
+
+template "/tmp/sdctool/config/configuration.yaml" do
+  sensitive true
+  source "configuration.yaml.erb"
+  mode 0755
+  variables({
+      :host_ip                => node['Nodes']['BE'],
+      :catalog_port           => node['BE'][:http_port],
+      :ssl_port               => node['BE'][:https_port],
+      :cassandra_ip           => node['Nodes']['CS'],
+      :rep_factor             => 1,
+      :DC_NAME                => node['cassandra'][:cluster_name]+node.chef_environment,
+      :titan_Path             => "/tmp/sdctool/config/",
+      :socket_connect_timeout => node['cassandra']['socket_connect_timeout'],
+      :socket_read_timeout    => node['cassandra']['socket_read_timeout'],
+      :cassandra_pwd          => node['cassandra'][:cassandra_password],
+      :cassandra_usr          => node['cassandra'][:cassandra_user]
+  })
+end
+
+
+template "/tmp/sdctool/config/elasticsearch.yml" do
+  sensitive true
+  source "elasticsearch.yml.erb"
+  mode 0755
+  variables({
+     :elastic_ip => node['Nodes']['ES']
+  })
+end
+
+bash "excuting-schema-creation" do
+   code <<-EOH
+     cd /tmp
+     chmod +x /tmp/sdctool/scripts/schemaCreation.sh
+     /tmp/sdctool/scripts/schemaCreation.sh /tmp/sdctool/config
+   EOH
+end
+
+bash "excuting-titanSchemaCreation.sh" do
+  code <<-EOH
+     chmod +x /tmp/sdctool/scripts/titanSchemaCreation.sh
+     /tmp/sdctool/scripts/titanSchemaCreation.sh /tmp/sdctool/config
+   EOH
+end
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/04-importComformance.rb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/04-importComformance.rb
new file mode 100644
index 0000000..3b293e8
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/recipes/04-importComformance.rb
@@ -0,0 +1,20 @@
+working_directory =  "/tmp"
+cl_release=node['version'].split('.')[0..2].join('.').split('-')[0]
+printf("\033[33mcl_release=[%s]\n\033[0m", cl_release)
+
+
+
+bash "import-Comformance" do
+  cwd "#{working_directory}"
+  code <<-EOH
+    conf_dir=/tmp/sdctool/config
+    tosca_dir=/tmp/sdctool/tosca
+
+    cl_version=`grep 'toscaConformanceLevel:' $conf_dir/configuration.yaml |awk '{print $2}'`
+
+    cd /tmp/sdctool/scripts
+    /bin/chmod +x sdcSchemaFileImport.sh
+    echo "execute /tmp/sdctool/scripts/sdcSchemaFileImport.sh ${tosca_dir} #{cl_release} ${cl_version} ${conf_dir} "
+    ./sdcSchemaFileImport.sh ${tosca_dir} #{cl_release} ${cl_version} ${conf_dir}
+  EOH
+end
\ No newline at end of file
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/configuration.yaml.erb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/configuration.yaml.erb
new file mode 100644
index 0000000..e16cb1a
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/configuration.yaml.erb
@@ -0,0 +1,611 @@
+identificationHeaderFields:
+   - HTTP_IV_USER
+   - HTTP_CSP_FIRSTNAME
+   - HTTP_CSP_LASTNAME
+   - HTTP_IV_REMOTE_ADDRESS
+   - HTTP_CSP_WSTYPE
+
+
+# catalog backend hostname
+beFqdn: <%= @host_ip %>
+
+# catalog backend http port
+beHttpPort: <%= @catalog_port %>
+
+# catalog backend http context
+beContext: /sdc/rest/config/get
+
+# catalog backend protocol
+beProtocol: http
+
+# catalog backend ssl port
+beSslPort: <%= @ssl_port %>
+version: 1.0
+released: 2012-11-30
+toscaConformanceLevel: 5.0
+minToscaConformanceLevel: 3.0
+
+titanCfgFile: <%= @titan_Path %>/titan.properties
+titanInMemoryGraph: false
+titanLockTimeout: 1800
+# The interval to try and reconnect to titan DB when it is down during ASDC startup:
+titanReconnectIntervalInSeconds: 3
+
+# The read timeout towards Titan DB when health check is invoked:
+titanHealthCheckReadTimeout: 1
+
+# The interval to try and reconnect to Elasticsearch when it is down during ASDC startup:
+
+esReconnectIntervalInSeconds: 3
+uebHealthCheckReconnectIntervalInSeconds: 15
+uebHealthCheckReadTimeout: 4
+
+# Protocols
+protocols:
+   - http
+   - https
+
+# Default imports
+defaultImports:
+   - nodes:
+        file: nodes.yml
+   - datatypes:
+        file: data.yml
+   - capabilities:
+        file: capabilities.yml
+   - relationships:
+        file: relationships.yml
+   - groups:
+        file: groups.yml
+   - policies:
+        file: policies.yml
+
+# Users
+users:
+    tom: passwd
+    bob: passwd
+
+
+cassandraConfig:
+    cassandraHosts: [<%= @cassandra_ip %>]
+    localDataCenter: <%= @DC_NAME %>
+    reconnectTimeout : 30000
+    socketReadTimeout: <%= @socket_read_timeout %>
+    socketConnectTimeout: <%= @socket_connect_timeout %>
+    authenticate: true
+    username: asdc_user
+    password: Aa1234%^!
+    ssl: false
+    truststorePath : /config/.truststore
+    truststorePassword : Aa123456
+    keySpaces:
+        - { name: dox, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
+        - { name: sdcaudit, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
+        - { name: sdcartifact, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
+        - { name: sdccomponent, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
+        - { name: sdcrepository, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
+
+#Application-specific settings of ES
+elasticSearch:
+    # Mapping of index prefix to time-based frame. For example, if below is configured:
+    #
+    # - indexPrefix: auditingevents
+    #    creationPeriod: minute
+    #
+    # then ES object of type which is mapped to "auditingevents-*" template, and created on 2015-12-23 13:24:54, will enter "auditingevents-2015-12-23-13-24" index.
+    # Another object created on 2015-12-23 13:25:54, will enter "auditingevents-2015-12-23-13-25" index.
+    # If creationPeriod: month, both of the above will enter "auditingevents-2015-12" index.
+    #
+    # PLEASE NOTE: the timestamps are created in UTC/GMT timezone! This is needed so that timestamps will be correctly presented in Kibana.
+    #
+    # Legal values for creationPeriod - year, month, day, hour, minute, none (meaning no time-based behaviour).
+    #
+    # If no creationPeriod is configured for indexPrefix, default behavour is creationPeriod: month.
+
+    indicesTimeFrequency:
+      - indexPrefix: auditingevents
+        creationPeriod: month
+      - indexPrefix: monitoring_events
+        creationPeriod: month
+artifactTypes:
+   - CHEF
+   - PUPPET
+   - SHELL
+   - YANG
+   - YANG_XML
+   - HEAT
+   - BPEL
+   - DG_XML
+   - MURANO_PKG
+   - WORKFLOW
+   - NETWORK_CALL_FLOW
+   - TOSCA_TEMPLATE
+   - TOSCA_CSAR
+   - AAI_SERVICE_MODEL
+   - AAI_VF_MODEL
+   - AAI_VF_MODULE_MODEL
+   - AAI_VF_INSTANCE_MODEL
+   - OTHER
+   - SNMP_POLL
+   - SNMP_TRAP
+   - GUIDE
+
+licenseTypes:
+   - User
+   - Installation
+   - CPU
+
+#Deployment artifacts placeHolder
+resourceTypes: &allResourceTypes
+  - VFC
+  - CP
+  - VL
+  - VF
+  - VFCMT
+  - Abstract
+
+# validForResourceTypes usage
+#     validForResourceTypes:
+#        - VF
+#        - VL
+deploymentResourceArtifacts:
+
+
+deploymentResourceInstanceArtifacts:
+  heatEnv:
+      displayName: "HEAT ENV"
+      type: HEAT_ENV
+      description: "Auto-generated HEAT Environment deployment artifact"
+      fileExtension: "env"
+  VfHeatEnv:
+      displayName: "VF HEAT ENV"
+      type: HEAT_ENV
+      description: "VF Auto-generated HEAT Environment deployment artifact"
+      fileExtension: "env"
+
+#tosca artifacts placeholders
+toscaArtifacts:
+  assetToscaTemplate:
+      artifactName: -template.yml
+      displayName: Tosca Template
+      type: TOSCA_TEMPLATE
+      description: TOSCA representation of the asset
+  assetToscaCsar:
+      artifactName: -csar.csar
+      displayName: Tosca Model
+      type: TOSCA_CSAR
+      description: TOSCA definition package of the asset
+
+#Informational artifacts placeHolder
+excludeResourceCategory:
+  - Generic
+informationalResourceArtifacts:
+  features:
+      displayName: Features
+      type: OTHER
+  capacity:
+      displayName: Capacity
+      type: OTHER
+  vendorTestResult:
+      displayName: Vendor Test Result
+      type: OTHER
+  testScripts:
+      displayName: Test Scripts
+      type: OTHER
+  CloudQuestionnaire:
+      displayName: Cloud Questionnaire (completed)
+      type: OTHER
+  HEATTemplateFromVendor:
+      displayName: HEAT Template from Vendor
+      type: HEAT
+  resourceSecurityTemplate:
+      displayName: Resource Security Template
+      type: OTHER
+
+excludeServiceCategory:
+
+informationalServiceArtifacts:
+  serviceArtifactPlan:
+      displayName: Service Artifact Plan
+      type: OTHER
+  summaryOfImpactsToECOMPElements:
+      displayName: Summary of impacts to ECOMP elements,OSSs, BSSs
+      type: OTHER
+  controlLoopFunctions:
+      displayName: Control Loop Functions
+      type: OTHER
+  dimensioningInfo:
+      displayName: Dimensioning Info
+      type: OTHER
+  affinityRules:
+      displayName: Affinity Rules
+      type: OTHER
+  operationalPolicies:
+      displayName: Operational Policies
+      type: OTHER
+  serviceSpecificPolicies:
+      displayName: Service-specific Policies
+      type: OTHER
+  engineeringRules:
+      displayName: Engineering Rules (ERD)
+      type: OTHER
+  distributionInstructions:
+      displayName: Distribution Instructions
+      type: OTHER
+  certificationTestResults:
+      displayName: TD Certification Test Results
+      type: OTHER
+  deploymentVotingRecord:
+      displayName: Deployment Voting Record
+      type: OTHER
+  serviceQuestionnaire:
+      displayName: Service Questionnaire
+      type: OTHER
+  serviceSecurityTemplate:
+      displayName: Service Security Template
+      type: OTHER
+
+serviceApiArtifacts:
+  configuration:
+      displayName: Configuration
+      type: OTHER
+  instantiation:
+      displayName: Instantiation
+      type: OTHER
+  monitoring:
+      displayName: Monitoring
+      type: OTHER
+  reporting:
+      displayName: Reporting
+      type: OTHER
+  logging:
+      displayName: Logging
+      type: OTHER
+  testing:
+      displayName: Testing
+      type: OTHER
+
+
+additionalInformationMaxNumberOfKeys: 50
+
+systemMonitoring:
+    enabled: true
+    isProxy: false
+    probeIntervalInSeconds: 15
+defaultHeatArtifactTimeoutMinutes: 60
+
+serviceDeploymentArtifacts:
+    YANG_XML:
+        acceptedTypes:
+            - xml
+    VNF_CATALOG:
+        acceptedTypes:
+            - xml
+    MODEL_INVENTORY_PROFILE:
+        acceptedTypes:
+            - xml
+    MODEL_QUERY_SPEC:
+        acceptedTypes:
+            - xml
+    AAI_SERVICE_MODEL:
+        acceptedTypes:
+            - xml
+    AAI_VF_MODULE_MODEL:
+        acceptedTypes:
+            - xml
+    AAI_VF_INSTANCE_MODEL:
+        acceptedTypes:
+            - xml
+    OTHER:
+        acceptedTypes:
+
+
+resourceDeploymentArtifacts:
+    HEAT:
+        acceptedTypes:
+            - yaml
+            - yml
+        validForResourceTypes: *allResourceTypes
+    HEAT_VOL:
+        acceptedTypes:
+            - yaml
+            - yml
+        validForResourceTypes: *allResourceTypes
+    HEAT_NET:
+        acceptedTypes:
+            - yaml
+            - yml
+        validForResourceTypes: *allResourceTypes
+    HEAT_NESTED:
+        acceptedTypes:
+            - yaml
+            - yml
+        validForResourceTypes: *allResourceTypes
+    HEAT_ARTIFACT:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    YANG_XML:
+        acceptedTypes:
+            - xml
+        validForResourceTypes: *allResourceTypes
+    VNF_CATALOG:
+        acceptedTypes:
+            - xml
+        validForResourceTypes: *allResourceTypes
+    VF_LICENSE:
+        acceptedTypes:
+            - xml
+        validForResourceTypes: *allResourceTypes
+    VENDOR_LICENSE:
+        acceptedTypes:
+            - xml
+        validForResourceTypes: *allResourceTypes
+    MODEL_INVENTORY_PROFILE:
+        acceptedTypes:
+            - xml
+        validForResourceTypes: *allResourceTypes
+    MODEL_QUERY_SPEC:
+        acceptedTypes:
+            - xml
+        validForResourceTypes: *allResourceTypes
+    LIFECYCLE_OPERATIONS:
+        acceptedTypes:
+            - yaml
+            - yml
+        validForResourceTypes:
+            - VF
+            - VFC
+    VES_EVENTS:
+        acceptedTypes:
+            - yaml
+            - yml
+        validForResourceTypes: *allResourceTypes
+    PERFORMANCE_COUNTER:
+        acceptedTypes:
+            - csv
+        validForResourceTypes: *allResourceTypes
+    APPC_CONFIG:
+        acceptedTypes:
+        validForResourceTypes:
+            - VF
+    DCAE_TOSCA:
+        acceptedTypes:
+            - yml
+            - yaml
+        validForResourceTypes:
+            - VF
+            - VFCMT
+    DCAE_JSON:
+        acceptedTypes:
+            - json
+        validForResourceTypes:
+            - VF
+            - VFCMT
+    DCAE_POLICY:
+        acceptedTypes:
+            - emf
+        validForResourceTypes:
+            - VF
+            - VFCMT
+    DCAE_DOC:
+        acceptedTypes:
+        validForResourceTypes:
+            - VF
+            - VFCMT
+    DCAE_EVENT:
+        acceptedTypes:
+        validForResourceTypes:
+            - VF
+            - VFCMT
+    AAI_VF_MODEL:
+        acceptedTypes:
+            - xml
+        validForResourceTypes:
+            - VF
+    AAI_VF_MODULE_MODEL:
+        acceptedTypes:
+            - xml
+        validForResourceTypes:
+            - VF
+    OTHER:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    SNMP_POLL:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    SNMP_TRAP:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+
+resourceInstanceDeploymentArtifacts:
+    HEAT_ENV:
+        acceptedTypes:
+            - env
+    VF_MODULES_METADATA:
+        acceptedTypes:
+            - json
+    VES_EVENTS:
+        acceptedTypes:
+            - yaml
+            - yml
+    PERFORMANCE_COUNTER:
+        acceptedTypes:
+            - csv
+    DCAE_INVENTORY_TOSCA:
+        acceptedTypes:
+            - yml
+            - yaml
+    DCAE_INVENTORY_JSON:
+        acceptedTypes:
+            - json
+    DCAE_INVENTORY_POLICY:
+      acceptedTypes:
+            - emf
+    DCAE_INVENTORY_DOC:
+      acceptedTypes:
+    DCAE_INVENTORY_BLUEPRINT:
+      acceptedTypes:
+    DCAE_INVENTORY_EVENT:
+      acceptedTypes:
+    SNMP_POLL:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    SNMP_TRAP:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+
+resourceInformationalArtifacts:
+    CHEF:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    PUPPET:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    SHELL:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    YANG:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    YANG_XML:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    HEAT:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    BPEL:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    DG_XML:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    MURANO_PKG:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    OTHER:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    SNMP_POLL:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    SNMP_TRAP:
+        acceptedTypes:
+        validForResourceTypes: *allResourceTypes
+    GUIDE:
+        acceptedTypes:
+        validForResourceTypes:
+            - VF
+            - VFC
+
+resourceInformationalDeployedArtifacts:
+
+
+requirementsToFulfillBeforeCert:
+
+capabilitiesToConsumeBeforeCert:
+
+unLoggedUrls:
+   - /sdc2/rest/healthCheck
+
+cleanComponentsConfiguration:
+    cleanIntervalInMinutes: 1440
+    componentsToClean:
+       - Resource
+       - Service
+
+artifactsIndex: resources
+
+heatEnvArtifactHeader: ""
+heatEnvArtifactFooter: ""
+
+onboarding:
+    protocol: http
+    host: <%= @host_ip %>
+    port: <%= @catalog_port %>
+    downloadCsarUri: "/onboarding-api/v1.0/vendor-software-products/packages"
+    healthCheckUri: "/onboarding-api/v1.0/healthcheck"
+
+dcae:
+    protocol: http
+    host: <%= @host_ip %>
+    port: <%= @catalog_port %>
+    healthCheckUri: "/dcae/healthCheck"
+
+# #GSS IDNS
+switchoverDetector:
+    gBeFqdn:
+    gFeFqdn:
+    beVip: 1.2.3.4
+    feVip: 1.2.3.4
+    beResolveAttempts: 3
+    feResolveAttempts: 3
+    enabled: false
+    interval: 60
+    changePriorityUser: ecompasdc
+    changePriorityPassword: ecompasdc123
+    publishNetworkUrl:
+    publishNetworkBody: '{"note":"comment"}'
+    groups:
+      beSet: { changePriorityUrl: "", changePriorityBody: '{"name":"","uri":"","no_ad_redirection":false,"v4groups":{"failover_groups":["","","failover_policy":["FAILALL"]},"comment":"","intended_app_proto":"DNS"}'}
+      feSet: { changePriorityUrl: "", changePriorityBody: '{"name":"","uri":"","no_ad_redirection":false,"v4groups":{"failover_groups":["",""],"failover_policy":["FAILALL"]},"comment":"","intended_app_proto":"DNS"}'}
+
+applicationL1Cache:
+    datatypes:
+        enabled: true
+        firstRunDelay: 10
+        pollIntervalInSec: 60
+
+applicationL2Cache:
+    enabled: true
+    catalogL1Cache:
+        enabled: true
+        resourcesSizeInCache: 300
+        servicesSizeInCache: 200
+        productsSizeInCache: 100
+    queue:
+        syncIntervalInSecondes: 43200
+        waitOnShutDownInMinutes: 10
+        numberOfCacheWorkers: 4
+
+toscaValidators:
+    stringMaxLength: 2500
+
+disableAudit: false
+vfModuleProperties:
+    min_vf_module_instances:
+        forBaseModule: 1
+        forNonBaseModule: 0
+    max_vf_module_instances:
+        forBaseModule: 1
+        forNonBaseModule:
+    initial_count:
+        forBaseModule: 1
+        forNonBaseModule: 0
+    vf_module_type:
+        forBaseModule: Base
+        forNonBaseModule: Expansion
+
+genericAssetNodeTypes:
+  VFC: org.openecomp.resource.abstract.nodes.VFC
+  VF : org.openecomp.resource.abstract.nodes.VF
+  Service: org.openecomp.resource.abstract.nodes.service
+
+workloadContext: Production
+
+environmentContext:
+    defaultValue: General_Revenue-Bearing
+    validValues:
+       - Critical_Revenue-Bearing
+       - Vital_Revenue-Bearing
+       - Essential_Revenue-Bearing
+       - Important_Revenue-Bearing
+       - Needed_Revenue-Bearing
+       - Useful_Revenue-Bearing
+       - General_Revenue-Bearing
+       - Critical_Non-Revenue
+       - Vital_Non-Revenue
+       - Essential_Non-Revenue
+       - Important_Non-Revenue
+       - Needed_Non-Revenue
+       - Useful_Non-Revenue
+       - General_Non-Revenue
\ No newline at end of file
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/create_cassandra_user.sh.erb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/create_cassandra_user.sh.erb
new file mode 100644
index 0000000..df4a55e
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/create_cassandra_user.sh.erb
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+CASSANDRA_IP=<%= @cassandra_ip %>
+CS_PASSWORD=<%= @cassandra_pwd %>
+SDC_USER=<%= @sdc_usr %>
+SDC_PASSWORD=<%= @sdc_pwd %>
+
+
+pass_changed=99
+retry_num=1
+is_up=0
+while [ $is_up -eq 0 -a $retry_num -le 100 ]; do
+
+   echo "exit" | cqlsh -u cassandra -p $CS_PASSWORD $CASSANDRA_IP  > /dev/null 2>&1
+   res1=$?
+
+   if [ $res1 -eq 0 ]; then
+      echo "`date` --- cqlsh is enabled to connect."
+      is_up=1
+   else
+      echo "`date` --- cqlsh is NOT enabled to connect yet. sleep 5"
+      sleep 5
+   fi
+   let "retry_num++"
+done
+
+cassandra_user_exist=`echo "list users;" | cqlsh -u cassandra -p $CS_PASSWORD $CASSANDRA_IP  |grep -c $SDC_USER`
+        if [ $cassandra_user_exist -eq 1 ] ; then
+                echo "cassandra user $SDC_USER already exist"
+        else
+                echo "Going to create $SDC_USER"
+                echo "create user $SDC_USER with password '$SDC_PASSWORD' nosuperuser;" | cqlsh -u cassandra -p $CS_PASSWORD $CASSANDRA_IP
+        fi
\ No newline at end of file
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/create_dox_keyspace.sh.erb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/create_dox_keyspace.sh.erb
new file mode 100644
index 0000000..c350704
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/create_dox_keyspace.sh.erb
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+CASSANDRA_USER='<%= @cassandra_usr %>'
+CASSANDRA_PASS='<%= @cassandra_pwd %>'
+CASSANDRA_IP='<%= @cassandra_ip %>'
+
+KEYSPACE="CREATE KEYSPACE IF NOT EXISTS dox WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', '<%= @DC_NAME %>': '1'};"
+KEYSPACE1="CREATE KEYSPACE IF NOT EXISTS zusammen_dox WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', '<%= @DC_NAME %>': '1'};"
+
+echo "run create_dox_keyspace.cql"
+echo -e "$KEYSPACE\n$KEYSPACE1" > /tmp/create_dox_keyspace.cql
+
+chmod 755 /tmp/create_dox_keyspace.cql
+cqlsh -u $CASSANDRA_USER -p $CASSANDRA_PASS $CASSANDRA_IP -f /tmp/create_dox_keyspace.cql > /dev/null 2>&1
+
+
+res=`echo "select keyspace_name from system.schema_keyspaces ;" | cqlsh -u $CASSANDRA_USER -p $CASSANDRA_PASS $CASSANDRA_IP |grep -c dox 2>/dev/null`
+
+if [ $res -gt 0 ]; then
+        echo "`date` --- dox keyspace was created "
+else
+        echo "`date` --- Failed to create dox keyspace"
+fi
+
+
+echo "run create_dox_db.cql"
+chmod 755 /tmp/tools/build/scripts/create_dox_db.cql
+cqlsh -u $CASSANDRA_USER -p $CASSANDRA_PASS $CASSANDRA_IP -f /tmp/tools/build/scripts/create_dox_db.cql > /dev/null 2>&1
+
+sleep 10
+
+echo "run alter_dox_db.cql"
+chmod 755 /tmp/tools/build/scripts/alter_dox_db.cql
+cqlsh -u $CASSANDRA_USER -p $CASSANDRA_PASS $CASSANDRA_IP -f /tmp/tools/build/scripts/alter_dox_db.cql > /dev/null 2>&1
+
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/elasticsearch.yml.erb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/elasticsearch.yml.erb
new file mode 100644
index 0000000..79d11f4
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/elasticsearch.yml.erb
@@ -0,0 +1,11 @@
+discovery.zen.ping.multicast.enabled: false
+discovery.zen.ping.unicast.enabled: true
+node.name: asdc-01
+cluster.name: elasticsearch
+node.master: false
+node.data: false
+http.cors.enabled: true
+path.home: "/var/lib/jetty/config"
+elasticSearch.transportclient: true
+transport.client.initial_nodes:
+   - <%= @elastic_ip %>:9300
diff --git a/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/titan.properties.erb b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/titan.properties.erb
new file mode 100644
index 0000000..0f31341
--- /dev/null
+++ b/asdctool/sdc-cassandra-init/chef-repo/cookbooks/cassandra-actions/templates/default/titan.properties.erb
@@ -0,0 +1,29 @@
+storage.backend=cassandra
+storage.hostname=<%= @cassandra_ip %>
+storage.port=9160
+storage.username=<%= @cassandra_usr %>
+storage.password=<%= @cassandra_pwd %>
+storage.connection-timeout=<%= @titan_connection_timeout %>
+storage.cassandra.keyspace=sdctitan
+
+
+storage.cassandra.ssl.enabled=false
+storage.cassandra.ssl.truststore.location=/var/lib/jetty/config/.truststore
+storage.cassandra.ssl.truststore.password=Aa123456
+
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.NetworkTopologyStrategy
+storage.cassandra.replication-strategy-options=<%= @DC_NAME %>,1
+storage.cassandra.astyanax.local-datacenter=<%= @DC_NAME %>
+
+cache.db-cache = false
+cache.db-cache-clean-wait = 20
+cache.db-cache-time = 180000
+cache.db-cache-size = 0.5
+
+cache.tx-cache-size = 1000000
+
+storage.lock.retries=5
+storage.lock.wait-time=500
+