Fix Puppet Configuring NetApp Cinder Backend
[apex-tripleo-heat-templates.git] / puppet / extraconfig / pre_deploy / controller / cinder-netapp.yaml
1 heat_template_version: 2015-04-30
2
3 description: Configure hieradata for Cinder Netapp configuration
4
5 parameters:
6   server:
7     description: ID of the controller node to apply this config to
8     type: string
9
10   # Config specific parameters, to be provided via parameter_defaults
11   CinderEnableNetappBackend:
12     type: boolean
13     default: true
14   CinderNetappBackendName:
15     type: string
16     default: 'tripleo_netapp'
17   CinderNetappLogin:
18     type: string
19   CinderNetappPassword:
20     type: string
21   CinderNetappServerHostname:
22     type: string
23   CinderNetappServerPort:
24     type: string
25     default: '80'
26   CinderNetappSizeMultiplier:
27     type: string
28     default: '1.2'
29   CinderNetappStorageFamily:
30     type: string
31     default: 'ontap_cluster'
32   CinderNetappStorageProtocol:
33     type: string
34     default: 'nfs'
35   CinderNetappTransportType:
36     type: string
37     default: 'http'
38   CinderNetappVfiler:
39     type: string
40     default: ''
41   CinderNetappVolumeList:
42     type: string
43     default: ''
44   CinderNetappVserver:
45     type: string
46     default: ''
47   CinderNetappPartnerBackendName:
48     type: string
49     default: ''
50   CinderNetappNfsShares:
51     type: string
52     default: ''
53   CinderNetappNfsSharesConfig:
54     type: string
55     default: '/etc/cinder/shares.conf'
56   CinderNetappNfsMountOptions:
57     type: string
58     default: ''
59   CinderNetappCopyOffloadToolPath:
60     type: string
61     default: ''
62   CinderNetappControllerIps:
63     type: string
64     default: ''
65   CinderNetappSaPassword:
66     type: string
67     default: ''
68   CinderNetappStoragePools:
69     type: string
70     default: ''
71   CinderNetappEseriesHostType:
72     type: string
73     default: 'linux_dm_mp'
74   CinderNetappWebservicePath:
75     type: string
76     default: '/devmgr/v2'
77
78 resources:
79   CinderNetappConfig:
80     type: OS::Heat::StructuredConfig
81     properties:
82       group: os-apply-config
83       config:
84         hiera:
85           datafiles:
86             cinder_netapp_data:
87               mapped_data:
88                 cinder_enable_netapp_backend: {get_input: EnableNetappBackend}
89                 cinder::backend::netapp::title: {get_input: NetappBackendName}
90                 cinder::backend::netapp::netapp_login: {get_input: NetappLogin}
91                 cinder::backend::netapp::netapp_password: {get_input: NetappPassword}
92                 cinder::backend::netapp::netapp_server_hostname: {get_input: NetappServerHostname}
93                 cinder::backend::netapp::netapp_server_port: {get_input: NetappServerPort}
94                 cinder::backend::netapp::netapp_size_multiplier: {get_input: NetappSizeMultiplier}
95                 cinder::backend::netapp::netapp_storage_family: {get_input: NetappStorageFamily}
96                 cinder::backend::netapp::netapp_storage_protocol: {get_input: NetappStorageProtocol}
97                 cinder::backend::netapp::netapp_transport_type: {get_input: NetappTransportType}
98                 cinder::backend::netapp::netapp_vfiler: {get_input: NetappVfiler}
99                 cinder::backend::netapp::netapp_volume_list: {get_input: NetappVolumeList}
100                 cinder::backend::netapp::netapp_vserver: {get_input: NetappVserver}
101                 cinder::backend::netapp::netapp_partner_backend_name: {get_input: NetappPartnerBackendName}
102                 cinder::backend::netapp::nfs_shares: {get_input: NetappNfsShares}
103                 cinder::backend::netapp::nfs_shares_config: {get_input: NetappNfsSharesConfig}
104                 cinder::backend::netapp::nfs_mount_options: {get_input: NetappNfsMountOptions}
105                 cinder::backend::netapp::netapp_copyoffload_tool_path: {get_input: NetappCopyOffloadToolPath}
106                 cinder::backend::netapp::netapp_controller_ips: {get_input: NetappControllerIps}
107                 cinder::backend::netapp::netapp_sa_password: {get_input: NetappSaPassword}
108                 cinder::backend::netapp::netapp_storage_pools: {get_input: NetappStoragePools}
109                 cinder::backend::netapp::netapp_eseries_host_type: {get_input: NetappEseriesHostType}
110                 cinder::backend::netapp::netapp_webservice_path: {get_input: NetappWebservicePath}
111
112   CinderNetappDeployment:
113     type: OS::Heat::StructuredDeployment
114     properties:
115       config: {get_resource: CinderNetappConfig}
116       server: {get_param: server}
117       input_values:
118         EnableNetappBackend: {get_param: CinderEnableNetappBackend}
119         NetappBackendName: {get_param: CinderNetappBackendName}
120         NetappLogin: {get_param: CinderNetappLogin}
121         NetappPassword: {get_param: CinderNetappPassword}
122         NetappServerHostname: {get_param: CinderNetappServerHostname}
123         NetappServerPort: {get_param: CinderNetappServerPort}
124         NetappSizeMultiplier: {get_param: CinderNetappSizeMultiplier}
125         NetappStorageFamily: {get_param: CinderNetappStorageFamily}
126         NetappStorageProtocol: {get_param: CinderNetappStorageProtocol}
127         NetappTransportType: {get_param: CinderNetappTransportType}
128         NetappVfiler: {get_param: CinderNetappVfiler}
129         NetappVolumeList: {get_param: CinderNetappVolumeList}
130         NetappVserver: {get_param: CinderNetappVserver}
131         NetappPartnerBackendName: {get_param: CinderNetappPartnerBackendName}
132         NetappNfsShares: {get_param: CinderNetappNfsShares}
133         NetappNfsSharesConfig: {get_param: CinderNetappNfsSharesConfig}
134         NetappNfsMountOptions: {get_param: CinderNetappNfsMountOptions}
135         NetappCopyOffloadToolPath: {get_param: CinderNetappCopyOffloadToolPath}
136         NetappControllerIps: {get_param: CinderNetappControllerIps}
137         NetappSaPassword: {get_param: CinderNetappSaPassword}
138         NetappStoragePools: {get_param: CinderNetappStoragePools}
139         NetappEseriesHostType: {get_param: CinderNetappEseriesHostType}
140         NetappWebservicePath: {get_param: CinderNetappWebservicePath}
141
142 outputs:
143   deploy_stdout:
144     description: Deployment reference, used to trigger puppet apply on changes
145     value: {get_attr: [CinderNetappDeployment, deploy_stdout]}