Merge "Enable Neutron LBaaS Integration"
[apex-tripleo-heat-templates.git] / puppet / services / network / contrail-tsn.yaml
1 heat_template_version: pike
2
3 description: >
4   Contrail TSN Service
5
6 parameters:
7   ServiceData:
8     default: {}
9     description: Dictionary packing service data
10     type: json
11   ServiceNetMap:
12     default: {}
13     description: Mapping of service_name -> network name. Typically set
14                  via parameter_defaults in the resource registry.  This
15                  mapping overrides those in ServiceNetMapDefaults.
16     type: json
17   DefaultPasswords:
18     default: {}
19     type: json
20   RoleName:
21     default: ''
22     description: Role name on which the service is applied
23     type: string
24   RoleParameters:
25     default: {}
26     description: Parameters specific to the role
27     type: json
28   EndpointMap:
29     default: {}
30     description: Mapping of service endpoint -> protocol. Typically set
31                  via parameter_defaults in the resource registry.
32     type: json
33   NeutronMetadataProxySharedSecret:
34     description: Metadata Secret
35     type: string
36   VrouterPhysicalInterface:
37     default: 'eth0'
38     description: vRouter physical interface
39     type: string
40   VrouterGateway:
41     default: '192.168.24.1'
42     description: vRouter default gateway
43     type: string
44   VrouterNetmask:
45     default: '255.255.255.0'
46     description: vRouter netmask
47     type: string
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 data for the Contrail TSN Service
63     value:
64       service_name: contrail_tsn
65       config_settings:
66         map_merge:
67           - get_attr: [ContrailBase, role_data, config_settings]
68           - contrail::vrouter::host_ip: {get_param: [ServiceNetMap, NeutronCorePluginOpencontrailNetwork]}
69             contrail::vrouter::physical_interface: {get_param: VrouterPhysicalInterface}
70             contrail::vrouter::gateway: {get_param: VrouterGateway}
71             contrail::vrouter::netmask: {get_param: VrouterNetmask}
72             contrail::vrouter::metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
73             contrail::vrouter::is_tsn: 'true'
74             tripleo.neutron_compute_plugin_opencontrail.firewall_rules:
75               '111 neutron_compute_plugin_opencontrail proxy':
76                 dport: 8097
77                 proto: tcp
78       step_config: |
79         include ::tripleo::network::contrail::vrouter