From 3639bedd1a6e7b9650ac1a48a37116836c166419 Mon Sep 17 00:00:00 2001 From: rajinir Date: Mon, 26 Jun 2017 13:08:58 -0500 Subject: [PATCH] Eqlx: Added support for password less login Added missing san_private_key paraeter used for password less SSH authentication for Eqlx Cinder Backend. Change-Id: I76072131dceeadfcad5b344df9af123ab3988166 --- manifests/backend/eqlx.pp | 6 ++++++ manifests/volume/eqlx.pp | 6 ++++++ releasenotes/notes/eqlx-c76440e19622a1e4.yaml | 4 ++++ spec/classes/cinder_volume_eqlx_spec.rb | 1 + spec/defines/cinder_backend_eqlx_spec.rb | 1 + 5 files changed, 18 insertions(+) create mode 100644 releasenotes/notes/eqlx-c76440e19622a1e4.yaml diff --git a/manifests/backend/eqlx.pp b/manifests/backend/eqlx.pp index 4392b8a8..6203f57b 100644 --- a/manifests/backend/eqlx.pp +++ b/manifests/backend/eqlx.pp @@ -13,6 +13,10 @@ # [*san_password*] # (required) The password for the specified SSH account. # +# [*san_private_key*] +# (optional) Filename of private key to use for SSH authentication. +# Defaults to $::os_service_default +# # [*san_thin_provision*] # (optional) Boolean. Whether or not to use thin provisioning for volumes. The # default value in OpenStack is true. @@ -65,6 +69,7 @@ define cinder::backend::eqlx ( $san_ip, $san_login, $san_password, + $san_private_key = $::os_service_default, $san_thin_provision = $::os_service_default, $volume_backend_name = $name, $eqlx_group_name = $::os_service_default, @@ -94,6 +99,7 @@ define cinder::backend::eqlx ( "${name}/san_ip": value => $san_ip; "${name}/san_login": value => $san_login; "${name}/san_password": value => $san_password, secret => true; + "${name}/san_private_key": value => $san_private_key; "${name}/san_thin_provision": value => $san_thin_provision; "${name}/eqlx_group_name": value => $eqlx_group_name; "${name}/use_chap_auth": value => $use_chap_auth; diff --git a/manifests/volume/eqlx.pp b/manifests/volume/eqlx.pp index 15690e39..69b050e6 100644 --- a/manifests/volume/eqlx.pp +++ b/manifests/volume/eqlx.pp @@ -13,6 +13,10 @@ # [*san_password*] # (required) The password for the specified SSH account. # +# [*san_private_key*] +# (optional) Filename of private key to use for SSH authentication. +# Defaults to $::os_service_default +# # [*san_thin_provision*] # (optional) Whether or not to use thin provisioning for volumes. # Defaults to $::os_service_default @@ -72,6 +76,7 @@ class cinder::volume::eqlx ( $san_ip, $san_login, $san_password, + $san_private_key = $::os_service_default, $san_thin_provision = $::os_service_default, $eqlx_group_name = $::os_service_default, $eqlx_pool = $::os_service_default, @@ -133,6 +138,7 @@ cinder::backend::eqlx instead.') san_ip => $san_ip, san_login => $san_login, san_password => $san_password, + san_private_key => $san_private_key, san_thin_provision => $san_thin_provision, eqlx_group_name => $eqlx_group_name, eqlx_pool => $eqlx_pool, diff --git a/releasenotes/notes/eqlx-c76440e19622a1e4.yaml b/releasenotes/notes/eqlx-c76440e19622a1e4.yaml new file mode 100644 index 00000000..c60d9dcf --- /dev/null +++ b/releasenotes/notes/eqlx-c76440e19622a1e4.yaml @@ -0,0 +1,4 @@ +--- +upgrade: + - add new parameter san_private_key to configure SSH Private Key + for Eqlx Cinder Backend diff --git a/spec/classes/cinder_volume_eqlx_spec.rb b/spec/classes/cinder_volume_eqlx_spec.rb index c7f40c59..f5114e56 100644 --- a/spec/classes/cinder_volume_eqlx_spec.rb +++ b/spec/classes/cinder_volume_eqlx_spec.rb @@ -6,6 +6,7 @@ describe 'cinder::volume::eqlx' do :san_ip => '192.168.100.10', :san_login => 'grpadmin', :san_password => '12345', + :san_private_key => '', :san_thin_provision => true, :eqlx_group_name => 'group-a', :eqlx_pool => 'apool', diff --git a/spec/defines/cinder_backend_eqlx_spec.rb b/spec/defines/cinder_backend_eqlx_spec.rb index 9e34f5cc..99e86a86 100644 --- a/spec/defines/cinder_backend_eqlx_spec.rb +++ b/spec/defines/cinder_backend_eqlx_spec.rb @@ -10,6 +10,7 @@ describe 'cinder::backend::eqlx' do :san_ip => '192.168.100.10', :san_login => 'grpadmin', :san_password => '12345', + :san_private_key => '', :volume_backend_name => 'Dell_EQLX', :san_thin_provision => '', :eqlx_group_name => '',