---
# Container descriptor
- descriptor: "pip-services:context-info:default:default:1.0"
  name: "pip-services-infrastructure"
  description: "Infrastructure microservice for pip-services"

# Console logger
- descriptor: "pip-services:logger:console:default:1.0"
  level: "trace"

# Performance counters that posts values to log
- descriptor: "pip-services:counters:log:default:1.0"
  level: "trace"

# AWS logging component
- descriptor: "pip-services:logger:cloudwatch:default:1.0"
  level: "info"
  group: "pip-services-infrastructure-node"
  connection:
    region: "{{{AWS_REGION}}}"
  credential:
    access_id: "{{{AWS_ACCESS_ID}}}"
    access_key: "{{{AWS_ACCESS_KEY}}}"

# AWS metrics component
- descriptor: "pip-services:counters:cloudwatch:default:1.0"
  level: "info"
  connection:
    region: "{{{AWS_REGION}}}"
  credential:
    access_id: "{{{AWS_ACCESS_ID}}}"
    access_key: "{{{AWS_ACCESS_KEY}}}"

# Common HTTP endpoint
- descriptor: "pip-services:endpoint:http:default:1.0"
  connection:
    protocol: "http"
    host: "0.0.0.0"
    port: 8080

# HTTP endpoint version 1.0
#- descriptor: "pip-services-infrastructure:service:http:default:1.0"

# Heartbeat service
- descriptor: "pip-services:heartbeat-service:http:default:1.0"

# Status service
- descriptor: "pip-services:status-service:http:default:1.0"

# Discovery service
- descriptor: "pip-services:discovery:memory:default:*"
  mongodb: "uri={{{MONGO_SERVICE_URI}}};host={{{MONGO_SERVICE_HOST}}};port={{{MONGO_SERVICE_PORT}}};database={{{MONGO_DB}}}"

############## Infrastructure components ##############

# Event Log components
- descriptor: "pip-services-eventlog:persistence:mongodb:default:*"
  connection:
    discovery_key: mongodb
- descriptor: "pip-services-eventlog:controller:default:default:*"
- descriptor: "pip-services-eventlog:client:direct:default:*"
- descriptor: "pip-services-eventlog:service:http:default:*"

# # Blobs components
# - descriptor: "pip-services-blobs:client:s3:default:*"
#   connection:
#     arn: "{{{AWS_BLOBS_ARN}}}"
#   credential:
#     access_id: "{{{AWS_ACCESS_ID}}}"
#     access_key: "{{{AWS_ACCESS_KEY}}}"
# - descriptor: "pip-services-blobs:service:http:default:*"
    
# # Statistics components
# - descriptor: "pip-services-statistics:persistence:mongodb:default:*"
#   connection:
#     discovery_key: mongodb
# - descriptor: "pip-services-statistics:controller:default:default:*"
# - descriptor: "pip-services-statistics:client:direct:default:*"
# - descriptor: "pip-services-statistics:service:http:default:*"

# Settings components
- descriptor: "pip-services-settings:persistence:mongodb:default:*"
  connection:
    discovery_key: mongodb
- descriptor: "pip-services-settings:controller:default:default:*"
- descriptor: "pip-services-settings:client:direct:default:*"
- descriptor: "pip-services-settings:service:http:default:*"

# # ChangeScopes components
# - descriptor: "pip-services-changescopes:persistence:mongodb:default:*"
#   connection:
#     discovery_key: mongodb
# - descriptor: "pip-services-changescopes:controller:default:default:*"
# - descriptor: "pip-services-changescopes:client:direct:default:*"
# - descriptor: "pip-services-changescopes:service:http:default:*"

# Email components
- descriptor: "pip-services-email:controller:default:default:*"
  connection:
    service: "{{{EMAIL_SERVICE}}}"
    host: "{{{EMAIL_SERVICE_HOST}}}"
    secure_connection: "{{{EMAIL_SSL}}}"
    port: "{{{EMAIL_SERVICE_PORT}}}"
  credential:
    username: "{{{EMAIL_USER}}}"
    password: "{{{EMAIL_PASS}}}"
  message:
    from: "{{{EMAIL_FROM}}}"
  parameters:
    client_name: "{{{CLIENT_NAME}}}"
    client_url: "{{{CLIENT_URL}}}"
    server_url: "{{{SERVER_URL}}}"
    signature: "{{{EMAIL_SIGNATURE}}}"
- descriptor: "pip-services-email:client:direct:default:*"
- descriptor: "pip-services-email:service:http:default:*"

# Sms components
- descriptor: "pip-services-sms:controller:default:default:*"
  credential:
    access_id: {{{AWS_ACCESS_ID}}}
    access_key: {{{AWS_ACCESS_KEY}}}
  message:
    from: "{{{SMS_FROM}}}"
  parameters:
    client_name: "{{{CLIENT_NAME}}}"
    client_url: "{{{CLIENT_URL}}}"
    server_url: "{{{SERVER_URL}}}"
    signature: "{{{SMS_SIGNATURE}}}"
- descriptor: "pip-services-sms:client:direct:default:*"
- descriptor: "pip-services-sms:service:http:default:*"
