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: 4.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: <%= @dc1 %>
    reconnectTimeout : 30000
    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: ['<%= @dc1 %>', '<%= @rep_factor %>']}
        - { name: sdcrepository, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @dc1 %>', '<%= @rep_factor %>', '<%= @dc2 %>', '<%= @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
  - CVFC

# 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
excludeResourceType:
  - PNF
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 Artifacts
    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 Artifacts
    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_VF Instance Artifacts
    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: 
            - VFC
            - CVFC
            - CP
            - VL
            - VF
            - VFCMT
            - Abstract
            - PNF
    SNMP_POLL:
        acceptedTypes:
        validForResourceTypes: *allResourceTypes
    SNMP_TRAP:
        acceptedTypes:
        validForResourceTypes: *allResourceTypes
    GUIDE:
        acceptedTypes:
        validForResourceTypes:
            - VF
            - VFC
            - CVFC

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"


# #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
  CVFC: org.openecomp.resource.abstract.nodes.VFC
  VF : org.openecomp.resource.abstract.nodes.VF
  PNF: org.openecomp.resource.abstract.nodes.PNF
  Service: org.openecomp.resource.abstract.nodes.service

