Support for Dell EMC VNX Manila Driver
authorrajinir <rajini_ram@dell.com>
Thu, 3 Aug 2017 20:32:28 +0000 (15:32 -0500)
committerEmilien Macchi <emilien@redhat.com>
Tue, 5 Sep 2017 04:52:47 +0000 (04:52 +0000)
This changes adds Dell EMC VNX backend as composable service
and matches the tripleo-heat-templates.

Change-Id: Iab80dc636913610704e1ceb2642ce738b68bb827
Implements: blueprint support-dellemc-vnx-manila
(cherry picked from commit eca5b4dfb22a9e9476cd835d2e211def4c9bd5c9)

manifests/profile/base/manila/api.pp
manifests/profile/pacemaker/manila.pp
releasenotes/notes/vnx_driver_aea44d073cd161e7.yaml [new file with mode: 0644]

index a86c5b2..374479c 100644 (file)
@@ -29,6 +29,7 @@
 # [*backend_vmax_enabled*]
 #   (Optional) Whether or not the vmax backend is enabled
 #   Defaults to hiera('manila_backend_vmax_enabled', false)
+#
 # [*backend_isilon_enabled*]
 #   (Optional) Whether or not the isilon backend is enabled
 #   Defaults to hiera('manila_backend_isilon_enabled', false)
 #   (Optional) Whether or not the unity backend is enabled
 #   Defaults to hiera('manila_backend_unity_enabled', false)
 #
+# [*backend_vnx_enabled*]
+#   (Optional) Whether or not the vnx backend is enabled
+#   Defaults to hiera('manila_backend_vnx_enabled', false)
+#
 # [*backend_cephfs_enabled*]
 #   (Optional) Whether or not the cephfs backend is enabled
 #   Defaults to hiera('manila_backend_cephfs_enabled', false)
@@ -56,6 +61,7 @@ class tripleo::profile::base::manila::api (
   $backend_vmax_enabled    = hiera('manila_backend_vmax_enabled', false),
   $backend_isilon_enabled  = hiera('manila_backend_isilon_enabled', false),
   $backend_unity_enabled   = hiera('manila_backend_unity_enabled', false),
+  $backend_vnx_enabled     = hiera('manila_backend_vnx_enabled', false),
   $backend_cephfs_enabled  = hiera('manila_backend_cephfs_enabled', false),
   $bootstrap_node          = hiera('bootstrap_nodeid', undef),
   $step                    = Integer(hiera('step')),
@@ -69,9 +75,10 @@ class tripleo::profile::base::manila::api (
   include ::tripleo::profile::base::manila
 
   if $step >= 4 or ($step >= 3 and $sync_db) {
-    if $backend_generic_enabled or $backend_netapp_enabled or $backend_vmax_enabled or $backend_isilon_enabled or $backend_unity_enabled {
-      $nfs_protocol = 'NFS'
-      $cifs_protocol = 'CIFS'
+    if $backend_generic_enabled or $backend_netapp_enabled or $backend_vmax_enabled or
+      $backend_isilon_enabled or $backend_unity_enabled or $backend_vnx_enabled {
+        $nfs_protocol = 'NFS'
+        $cifs_protocol = 'CIFS'
     } else {
       $nfs_protocol = undef
       $cifs_protocol = undef
index d21c9c4..0af0a7b 100644 (file)
 #   (Optional) The hostname of the node responsible for bootstrapping tasks
 #   Defaults to hiera('manila_share_short_bootstrap_node_name')
 #
+# [*backend_vnx_enabled*]
+#   (Optional) Whether or not the vnx backend is enabled
+#   Defaults to hiera('manila_backend_vnx_enabled', false)
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
@@ -61,6 +65,7 @@ class tripleo::profile::pacemaker::manila (
   $backend_vmax_enabled    = hiera('manila_backend_vmax_enabled', false),
   $backend_isilon_enabled  = hiera('manila_backend_isilon_enabled', false),
   $backend_unity_enabled   = hiera('manila_backend_unity_enabled', false),
+  $backend_vnx_enabled     = hiera('manila_backend_vnx_enabled', false),
   $backend_cephfs_enabled  = hiera('manila_backend_cephfs_enabled', false),
   $bootstrap_node          = hiera('manila_share_short_bootstrap_node_name'),
   $step                    = Integer(hiera('step')),
@@ -196,6 +201,21 @@ class tripleo::profile::pacemaker::manila (
         unity_ethernet_ports         => hiera('manila::backend::dellemc_unity::unity_ethernet_ports'),
       }
     }
+    # manila vnx:
+    if $backend_vnx_enabled {
+      $manila_vnx_backend = hiera('manila::backend::dellemc_vnx::title')
+      manila::backend::dellemc_vnx { $manila_vnx_backend :
+        driver_handles_share_servers => hiera('manila::backend::dellemc_vnx::driver_handles_share_servers', false),
+        emc_nas_login                => hiera('manila::backend::dellemc_vnx::emc_nas_login'),
+        emc_nas_password             => hiera('manila::backend::dellemc_vnx::emc_nas_password'),
+        emc_nas_server               => hiera('manila::backend::dellemc_vnx::emc_nas_server'),
+        emc_share_backend            => hiera('manila::backend::dellemc_vnx::emc_share_backend','vnx'),
+        share_backend_name           => hiera('manila::backend::dellemc_vnx::share_backend_name'),
+        vnx_server_container         => hiera('manila::backend::dellemc_vnx::vnx_server_container'),
+        vnx_share_data_pools         => hiera('manila::backend::dellemc_vnx::vnx_share_data_pools'),
+        vnx_ethernet_ports           => hiera('manila::backend::dellemc_vnx::vnx_ethernet_ports'),
+      }
+    }
 
 
 
@@ -222,7 +242,8 @@ class tripleo::profile::pacemaker::manila (
         $manila_netapp_backend,
         $manila_vmax_backend,
         $manila_isilon_backend,
-        $manila_unity_backend
+        $manila_unity_backend,
+        $manila_vnx_backend
       ]
     )
     class { '::manila::backends' :
diff --git a/releasenotes/notes/vnx_driver_aea44d073cd161e7.yaml b/releasenotes/notes/vnx_driver_aea44d073cd161e7.yaml
new file mode 100644 (file)
index 0000000..0c222ee
--- /dev/null
@@ -0,0 +1,4 @@
+---
+features:
+  - |
+    Add support to configure Dell EMC VNX backend