Merge "Composable roles within services - Redis"
[apex-tripleo-heat-templates.git] / puppet / extraconfig / pre_deploy / controller / neutron-plumgrid.yaml
1 heat_template_version: 2015-04-30
2
3 description: Controller hieradata for Neutron PLUMgrid configuration
4
5 parameters:
6   server:
7     description: ID of the controller node to apply this config to
8     type: string
9   PLUMgridDirectorServer:
10     description: IP address of the PLUMgrid Director Server
11     type: string
12     default: 127.0.0.1
13   PLUMgridDirectorServerPort:
14     description: Port of the PLUMgrid Director Server
15     type: string
16     default: 443
17   PLUMgridUsername:
18     description: Username for PLUMgrid platform
19     type: string
20   PLUMgridPassword:
21     description: Password for PLUMgrid platform
22     type: string
23     hidden: true
24   PLUMgridServerTimeOut:
25     description: Request timeout duration (seconds) to PLUMgrid platform
26     type: string
27     default: 99
28   PLUMgridNovaMetadataIP:
29     description: IP address of Nova Metadata
30     type: string
31     default: 169.254.169.254
32   PLUMgridNovaMetadataPort:
33     description: Port of Nova Metadata
34     type: string
35     default: 8775
36   PLUMgridL2GatewayVendor:
37     description: Vendor for L2 Gateway Switch
38     type: string
39     default: vendor
40   PLUMgridL2GatewayUsername:
41     description: Username for L2 Gateway Switch
42     type: string
43     default: username
44   PLUMgridL2GatewayPassword:
45     description: Password for L2 Gateway Switch
46     type: string
47     hidden: true
48   PLUMgridIdentityVersion:
49     description: Keystone Identity version
50     type: string
51     default: v2.0
52   PLUMgridConnectorType:
53     description: Neutron Network Connector Type
54     type: string
55     default: distributed
56   PLUMgridNeutronPluginVersion:
57     description: PLUMgrid Neutron Plugin version
58     type: string
59     default: present
60   PLUMgridPlumlibVersion:
61     description: PLUMgrid Plumlib version
62     type: string
63     default: present
64
65
66 resources:
67   ControllerPLUMgridConfig:
68     type: OS::Heat::StructuredConfig
69     properties:
70       group: os-apply-config
71       config:
72         hiera:
73           datafiles:
74             neutron_plumgrid_data:
75               mapped_data:
76                 neutron::plugins::plumgrid::director_server: {get_input: plumgrid_director_server}
77                 neutron::plugins::plumgrid::director_server_port: {get_input: plumgrid_director_server_port}
78                 neutron::plugins::plumgrid::username: {get_input: plumgrid_username}
79                 neutron::plugins::plumgrid::password: {get_input: plumgrid_password}
80                 neutron::plugins::plumgrid::nova_metadata_ip: {get_input: plumgrid_nova_metadata_ip}
81                 neutron::plugins::plumgrid::nova_metadata_port: {get_input: plumgrid_nova_metadata_port}
82                 neutron::plugins::plumgrid::l2gateway_vendor: {get_input: plumgrid_l2gateway_vendor}
83                 neutron::plugins::plumgrid::l2gateway_sw_username: {get_input: plumgrid_l2gateway_sw_username}
84                 neutron::plugins::plumgrid::l2gateway_sw_password: {get_input: plumgrid_l2gateway_sw_password}
85                 neutron::plugins::plumgrid::connector_type: {get_input: plumgrid_connector_type}
86                 neutron::plugins::plumgrid::identity_version: {get_input: plumgrid_identity_version}
87                 neutron::plugins::plumgrid::package_ensure: {get_input: plumgrid_neutron_plugin_version}
88                 neutron::plugins::plumgrid::plumlib_package_ensure: {get_input: plumgrid_plumlib_version}
89
90   ControllerPLUMgridDeployment:
91     type: OS::Heat::StructuredDeployment
92     properties:
93       config: {get_resource: ControllerPLUMgridConfig}
94       server: {get_param: server}
95       input_values:
96         plumgrid_director_server: {get_param: PLUMgridDirectorServer}
97         plumgrid_director_server_port: {get_param: PLUMgridDirectorServerPort}
98         plumgrid_username: {get_param: PLUMgridUsername}
99         plumgrid_password: {get_param: PLUMgridPassword}
100         plumgrid_nova_metadata_ip: {get_param: PLUMgridNovaMetadataIP}
101         plumgrid_nova_metadata_port: {get_param: PLUMgridNovaMetadataPort}
102         plumgrid_l2gateway_vendor: {get_param: PLUMgridL2GatewayVendor}
103         plumgrid_l2gateway_sw_username: {get_param: PLUMgridL2GatewayUsername}
104         plumgrid_l2gateway_sw_password: {get_param: PLUMgridL2GatewayPassword}
105         plumgrid_identity_version: {get_param: PLUMgridIdentityVersion}
106         plumgrid_connector_type: {get_param: PLUMgridConnectorType}
107         plumgrid_neutron_plugin_version: {get_param: PLUMgridNeutronPluginVersion}
108         plumgrid_plumlib_version: {get_param: PLUMgridPlumlibVersion}
109
110 outputs:
111   deploy_stdout:
112     description: Deployment reference, used to trigger puppet apply on changes
113     value: {get_attr: [ControllerPLUMgridDeployment, deploy_stdout]}