Merge "Render isolated network templates using jinja2"
[apex-tripleo-heat-templates.git] / puppet / services / network / contrail-control.yaml
1 heat_template_version: pike
2
3 description: >
4   Contrail Control service deployment using puppet, this YAML file
5   creates the interface between the HOT template
6   and the puppet manifest that actually installs
7   and configures Contrail Control.
8
9 parameters:
10   ServiceData:
11     default: {}
12     description: Dictionary packing service data
13     type: json
14   ServiceNetMap:
15     default: {}
16     description: Mapping of service_name -> network name. Typically set
17                  via parameter_defaults in the resource registry.  This
18                  mapping overrides those in ServiceNetMapDefaults.
19     type: json
20   DefaultPasswords:
21     default: {}
22     type: json
23   RoleName:
24     default: ''
25     description: Role name on which the service is applied
26     type: string
27   RoleParameters:
28     default: {}
29     description: Parameters specific to the role
30     type: json
31   EndpointMap:
32     default: {}
33     description: Mapping of service endpoint -> protocol. Typically set
34                  via parameter_defaults in the resource registry.
35     type: json
36   ContrailControlASN:
37     description: Autonomous System Number
38     type: number
39     default: 64512
40   ContrailControlRNDCSecret:
41     description: sda1/256 hmac key, e.g. echo -n "values" | openssl dgst -sha256 -hmac key -binary | base64
42     type: string
43     hidden: true
44   ContrailControlManageNamed:
45     description: named config file mgmt
46     type: string
47     default: true
48
49 resources:
50   ContrailBase:
51     type: ./contrail-base.yaml
52     properties:
53       ServiceData: {get_param: ServiceData}
54       ServiceNetMap: {get_param: ServiceNetMap}
55       DefaultPasswords: {get_param: DefaultPasswords}
56       EndpointMap: {get_param: EndpointMap}
57       RoleName: {get_param: RoleName}
58       RoleParameters: {get_param: RoleParameters}
59
60 outputs:
61   role_data:
62     description: Role Contrail Control using composable services.
63     value:
64       service_name: contrail_control
65       config_settings:
66         map_merge:
67           - get_attr: [ContrailBase, role_data, config_settings]
68           - contrail::control::asn: {get_param: ContrailControlASN }
69             contrail::control::host_ip: {get_param: [ServiceNetMap, ContrailControlNetwork]}
70             contrail::control::rndc_secret: {get_param: ContrailControlRNDCSecret}
71             contrail::control::manage_named: {get_param: ContrailControlManageNamed}
72       step_config: |
73         include ::tripleo::network::contrail::control