f9a6b10cf1794081c050b7e2d69835d6f0c2939b
[mirror/dsa-puppet.git] / 3rdparty / modules / cinder / manifests / volume / vmdk.pp
1 # == define: cinder::volume::vmdk
2 #
3 # Configure the VMware VMDK driver for cinder.
4 #
5 # === Parameters
6 #
7 # [*host_ip*]
8 #   The IP address of the VMware vCenter server.
9 #
10 # [*host_username*]
11 #   The username for connection to VMware vCenter server.
12 #
13 # [*host_password*]
14 #   The password for connection to VMware vCenter server.
15 #
16 # [*api_retry_count*]
17 #   (optional) The number of times we retry on failures,
18 #   e.g., socket error, etc.
19 #   Defaults to 10.
20 #
21 # [*max_object_retrieval*]
22 #   (optional) The maximum number of ObjectContent data objects that should
23 #   be returned in a single result. A positive value will cause
24 #   the operation to suspend the retrieval when the count of
25 #   objects reaches the specified maximum. The server may still
26 #   limit the count to something less than the configured value.
27 #   Any remaining objects may be retrieved with additional requests.
28 #   Defaults to 100.
29 #
30 # [*task_poll_interval*]
31 #   (optional) The interval in seconds used for polling of remote tasks.
32 #   Defaults to 5.
33 #
34 # [*image_transfer_timeout_secs*]
35 #   (optional) The timeout in seconds for VMDK volume transfer between Cinder and Glance.
36 #   Defaults to 7200.
37 #
38 # [*wsdl_location*]
39 #   (optional) VIM Service WSDL Location e.g
40 #   http://<server>/vimService.wsdl. Optional over-ride to
41 #   default location for bug work-arounds.
42 #   Defaults to None.
43 #
44 # [*volume_folder*]
45 #   (optional) The name for the folder in the VC datacenter that will contain cinder volumes.
46 #   Defaults to 'cinder-volumes'.
47 #
48
49 class cinder::volume::vmdk(
50   $host_ip,
51   $host_username,
52   $host_password,
53   $volume_folder               = 'cinder-volumes',
54   $api_retry_count             = 10,
55   $max_object_retrieval        = 100,
56   $task_poll_interval          = 5,
57   $image_transfer_timeout_secs = 7200,
58   $wsdl_location               = undef
59 ) {
60
61   cinder::backend::vmdk { 'DEFAULT':
62     host_ip                     => $host_ip,
63     host_username               => $host_username,
64     host_password               => $host_password,
65     volume_folder               => $volume_folder,
66     api_retry_count             => $api_retry_count,
67     max_object_retrieval        => $max_object_retrieval,
68     task_poll_interval          => $task_poll_interval,
69     image_transfer_timeout_secs => $image_transfer_timeout_secs,
70     wsdl_location               => $wsdl_location,
71   }
72 }