Merge "Deploy block-storage service type"
This commit is contained in:
		@@ -15,6 +15,10 @@
 | 
				
			|||||||
#   (Optional) Username for Cinder service.
 | 
					#   (Optional) Username for Cinder service.
 | 
				
			||||||
#   Defaults to 'cinder'.
 | 
					#   Defaults to 'cinder'.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# [*configure_endpoint*]
 | 
				
			||||||
 | 
					#   (Optional) Should Cinder endpoint be configured?
 | 
				
			||||||
 | 
					#   Defaults to true
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
# [*configure_endpoint_v3*]
 | 
					# [*configure_endpoint_v3*]
 | 
				
			||||||
#   (Optional) Should Cinder v3 endpoint be configured?
 | 
					#   (Optional) Should Cinder v3 endpoint be configured?
 | 
				
			||||||
#   Defaults to true
 | 
					#   Defaults to true
 | 
				
			||||||
@@ -27,20 +31,36 @@
 | 
				
			|||||||
#   (Optional) Should the admin role be configured for the service user?
 | 
					#   (Optional) Should the admin role be configured for the service user?
 | 
				
			||||||
#   Defaults to true
 | 
					#   Defaults to true
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# [*configure_service_v3*]
 | 
					# [*configure_service*]
 | 
				
			||||||
#   (Optional) Should the service be configured?
 | 
					#   (Optional) Should the service be configured?
 | 
				
			||||||
#   Defaults to True
 | 
					#   Defaults to True
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# [*configure_service_v3*]
 | 
				
			||||||
 | 
					#   (Optional) Should the v3 service be configured?
 | 
				
			||||||
 | 
					#   Defaults to True
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# [*service_name*]
 | 
				
			||||||
 | 
					#   (Optional) Name of the service.
 | 
				
			||||||
 | 
					#   Defaults to 'cinder'.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
# [*service_name_v3*]
 | 
					# [*service_name_v3*]
 | 
				
			||||||
#   (Optional) Name of the v3 service.
 | 
					#   (Optional) Name of the v3 service.
 | 
				
			||||||
#   Defaults to 'cinderv3'.
 | 
					#   Defaults to 'cinderv3'.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# [*service_type*]
 | 
				
			||||||
 | 
					#   (Optional) Type of the service.
 | 
				
			||||||
 | 
					#   Defaults to 'block-storage'.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
# [*service_type_v3*]
 | 
					# [*service_type_v3*]
 | 
				
			||||||
#   (Optional) Type of API v3 service.
 | 
					#   (Optional) Type of the v3 service.
 | 
				
			||||||
#   Defaults to 'volumev3'.
 | 
					#   Defaults to 'volumev3'.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					# [*service_description*]
 | 
				
			||||||
 | 
					#   (Optional) Description for the service.
 | 
				
			||||||
 | 
					#   Defaults to 'OpenStack Block Storage Service'.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
# [*service_description_v3*]
 | 
					# [*service_description_v3*]
 | 
				
			||||||
#   (Optional) Description for keystone v3 service.
 | 
					#   (Optional) Description for the v3 service.
 | 
				
			||||||
#   Defaults to 'Cinder Service v3'.
 | 
					#   Defaults to 'Cinder Service v3'.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# [*region*]
 | 
					# [*region*]
 | 
				
			||||||
@@ -135,12 +155,17 @@ class cinder::keystone::auth (
 | 
				
			|||||||
  Keystone::PublicEndpointUrl $public_url_v3 = 'http://127.0.0.1:8776/v3',
 | 
					  Keystone::PublicEndpointUrl $public_url_v3 = 'http://127.0.0.1:8776/v3',
 | 
				
			||||||
  Keystone::EndpointUrl $internal_url_v3     = 'http://127.0.0.1:8776/v3',
 | 
					  Keystone::EndpointUrl $internal_url_v3     = 'http://127.0.0.1:8776/v3',
 | 
				
			||||||
  Keystone::EndpointUrl $admin_url_v3        = 'http://127.0.0.1:8776/v3',
 | 
					  Keystone::EndpointUrl $admin_url_v3        = 'http://127.0.0.1:8776/v3',
 | 
				
			||||||
 | 
					  Boolean $configure_endpoint                = true,
 | 
				
			||||||
  Boolean $configure_endpoint_v3             = true,
 | 
					  Boolean $configure_endpoint_v3             = true,
 | 
				
			||||||
  Boolean $configure_user                    = true,
 | 
					  Boolean $configure_user                    = true,
 | 
				
			||||||
  Boolean $configure_user_role               = true,
 | 
					  Boolean $configure_user_role               = true,
 | 
				
			||||||
 | 
					  Boolean $configure_service                 = true,
 | 
				
			||||||
  Boolean $configure_service_v3              = true,
 | 
					  Boolean $configure_service_v3              = true,
 | 
				
			||||||
 | 
					  String[1] $service_name                    = 'cinder',
 | 
				
			||||||
  String[1] $service_name_v3                 = 'cinderv3',
 | 
					  String[1] $service_name_v3                 = 'cinderv3',
 | 
				
			||||||
 | 
					  String[1] $service_type                    = 'block-storage',
 | 
				
			||||||
  String[1] $service_type_v3                 = 'volumev3',
 | 
					  String[1] $service_type_v3                 = 'volumev3',
 | 
				
			||||||
 | 
					  String[1] $service_description             = 'OpenStack Block Storage Service',
 | 
				
			||||||
  String[1] $service_description_v3          = 'Cinder Service v3',
 | 
					  String[1] $service_description_v3          = 'Cinder Service v3',
 | 
				
			||||||
  String[1] $region                          = 'RegionOne',
 | 
					  String[1] $region                          = 'RegionOne',
 | 
				
			||||||
  # DPERECATED PARAMETERS
 | 
					  # DPERECATED PARAMETERS
 | 
				
			||||||
@@ -170,8 +195,11 @@ and will be removed in a future release.")
 | 
				
			|||||||
  keystone::resource::service_identity { 'cinder':
 | 
					  keystone::resource::service_identity { 'cinder':
 | 
				
			||||||
    configure_user      => $configure_user,
 | 
					    configure_user      => $configure_user,
 | 
				
			||||||
    configure_user_role => $configure_user_role,
 | 
					    configure_user_role => $configure_user_role,
 | 
				
			||||||
    configure_endpoint  => false,
 | 
					    configure_endpoint  => $configure_endpoint,
 | 
				
			||||||
    configure_service   => false,
 | 
					    configure_service   => $configure_service,
 | 
				
			||||||
 | 
					    service_type        => $service_type,
 | 
				
			||||||
 | 
					    service_description => $service_description,
 | 
				
			||||||
 | 
					    service_name        => $service_name,
 | 
				
			||||||
    region              => $region,
 | 
					    region              => $region,
 | 
				
			||||||
    auth_name           => $auth_name,
 | 
					    auth_name           => $auth_name,
 | 
				
			||||||
    password            => $password,
 | 
					    password            => $password,
 | 
				
			||||||
@@ -180,6 +208,9 @@ and will be removed in a future release.")
 | 
				
			|||||||
    roles               => $roles,
 | 
					    roles               => $roles,
 | 
				
			||||||
    system_scope        => $system_scope,
 | 
					    system_scope        => $system_scope,
 | 
				
			||||||
    system_roles        => $system_roles,
 | 
					    system_roles        => $system_roles,
 | 
				
			||||||
 | 
					    public_url          => $public_url_v3,
 | 
				
			||||||
 | 
					    admin_url           => $admin_url_v3,
 | 
				
			||||||
 | 
					    internal_url        => $internal_url_v3,
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  keystone::resource::service_identity { 'cinderv3':
 | 
					  keystone::resource::service_identity { 'cinderv3':
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -0,0 +1,5 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					features:
 | 
				
			||||||
 | 
					  - |
 | 
				
			||||||
 | 
					    The ``cinder::keystone::auth`` class now manages the block-storage service
 | 
				
			||||||
 | 
					    type and its endpoints.
 | 
				
			||||||
@@ -14,8 +14,11 @@ describe 'cinder::keystone::auth' do
 | 
				
			|||||||
      it { is_expected.to contain_keystone__resource__service_identity('cinder').with(
 | 
					      it { is_expected.to contain_keystone__resource__service_identity('cinder').with(
 | 
				
			||||||
        :configure_user      => true,
 | 
					        :configure_user      => true,
 | 
				
			||||||
        :configure_user_role => true,
 | 
					        :configure_user_role => true,
 | 
				
			||||||
        :configure_endpoint  => false,
 | 
					        :configure_endpoint  => true,
 | 
				
			||||||
        :configure_service   => false,
 | 
					        :configure_service   => true,
 | 
				
			||||||
 | 
					        :service_name        => 'cinder',
 | 
				
			||||||
 | 
					        :service_type        => 'block-storage',
 | 
				
			||||||
 | 
					        :service_description => 'OpenStack Block Storage Service',
 | 
				
			||||||
        :region              => 'RegionOne',
 | 
					        :region              => 'RegionOne',
 | 
				
			||||||
        :auth_name           => 'cinder',
 | 
					        :auth_name           => 'cinder',
 | 
				
			||||||
        :password            => 'cinder_password',
 | 
					        :password            => 'cinder_password',
 | 
				
			||||||
@@ -24,6 +27,9 @@ describe 'cinder::keystone::auth' do
 | 
				
			|||||||
        :roles               => ['admin'],
 | 
					        :roles               => ['admin'],
 | 
				
			||||||
        :system_scope        => 'all',
 | 
					        :system_scope        => 'all',
 | 
				
			||||||
        :system_roles        => [],
 | 
					        :system_roles        => [],
 | 
				
			||||||
 | 
					        :public_url          => 'http://127.0.0.1:8776/v3',
 | 
				
			||||||
 | 
					        :internal_url        => 'http://127.0.0.1:8776/v3',
 | 
				
			||||||
 | 
					        :admin_url           => 'http://127.0.0.1:8776/v3',
 | 
				
			||||||
      ) }
 | 
					      ) }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      it { is_expected.to contain_keystone__resource__service_identity('cinderv3').with(
 | 
					      it { is_expected.to contain_keystone__resource__service_identity('cinderv3').with(
 | 
				
			||||||
@@ -67,14 +73,19 @@ describe 'cinder::keystone::auth' do
 | 
				
			|||||||
          :system_roles_v3        => ['adminv3', 'memberv3', 'readerv3'],
 | 
					          :system_roles_v3        => ['adminv3', 'memberv3', 'readerv3'],
 | 
				
			||||||
          :configure_user_v3      => true,
 | 
					          :configure_user_v3      => true,
 | 
				
			||||||
          :configure_user_role_v3 => true,
 | 
					          :configure_user_role_v3 => true,
 | 
				
			||||||
 | 
					          :service_description    => 'Alternative OpenStack Block Storage Service',
 | 
				
			||||||
          :service_description_v3 => 'Alternative Cinder Service v3',
 | 
					          :service_description_v3 => 'Alternative Cinder Service v3',
 | 
				
			||||||
 | 
					          :service_name           => 'alt_service',
 | 
				
			||||||
          :service_name_v3        => 'alt_servicev3',
 | 
					          :service_name_v3        => 'alt_servicev3',
 | 
				
			||||||
 | 
					          :service_type           => 'alt_block-storage',
 | 
				
			||||||
          :service_type_v3        => 'alt_volumev3',
 | 
					          :service_type_v3        => 'alt_volumev3',
 | 
				
			||||||
          :region                 => 'RegionTwo',
 | 
					          :region                 => 'RegionTwo',
 | 
				
			||||||
          :public_url_v3          => 'https://10.10.10.10:80',
 | 
					          :public_url_v3          => 'https://10.10.10.10:80',
 | 
				
			||||||
          :internal_url_v3        => 'http://10.10.10.11:81',
 | 
					          :internal_url_v3        => 'http://10.10.10.11:81',
 | 
				
			||||||
          :admin_url_v3           => 'http://10.10.10.12:81',
 | 
					          :admin_url_v3           => 'http://10.10.10.12:81',
 | 
				
			||||||
 | 
					          :configure_endpoint     => false,
 | 
				
			||||||
          :configure_endpoint_v3  => false,
 | 
					          :configure_endpoint_v3  => false,
 | 
				
			||||||
 | 
					          :configure_service      => false,
 | 
				
			||||||
          :configure_service_v3   => false
 | 
					          :configure_service_v3   => false
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      end
 | 
					      end
 | 
				
			||||||
@@ -84,6 +95,9 @@ describe 'cinder::keystone::auth' do
 | 
				
			|||||||
        :configure_user_role => false,
 | 
					        :configure_user_role => false,
 | 
				
			||||||
        :configure_endpoint  => false,
 | 
					        :configure_endpoint  => false,
 | 
				
			||||||
        :configure_service   => false,
 | 
					        :configure_service   => false,
 | 
				
			||||||
 | 
					        :service_name        => 'alt_service',
 | 
				
			||||||
 | 
					        :service_type        => 'alt_block-storage',
 | 
				
			||||||
 | 
					        :service_description => 'Alternative OpenStack Block Storage Service',
 | 
				
			||||||
        :region              => 'RegionTwo',
 | 
					        :region              => 'RegionTwo',
 | 
				
			||||||
        :auth_name           => 'alt_cinder',
 | 
					        :auth_name           => 'alt_cinder',
 | 
				
			||||||
        :password            => 'cinder_password',
 | 
					        :password            => 'cinder_password',
 | 
				
			||||||
@@ -92,6 +106,9 @@ describe 'cinder::keystone::auth' do
 | 
				
			|||||||
        :roles               => ['admin', 'service'],
 | 
					        :roles               => ['admin', 'service'],
 | 
				
			||||||
        :system_scope        => 'alt_all',
 | 
					        :system_scope        => 'alt_all',
 | 
				
			||||||
        :system_roles        => ['admin', 'member', 'reader'],
 | 
					        :system_roles        => ['admin', 'member', 'reader'],
 | 
				
			||||||
 | 
					        :public_url          => 'https://10.10.10.10:80',
 | 
				
			||||||
 | 
					        :internal_url        => 'http://10.10.10.11:81',
 | 
				
			||||||
 | 
					        :admin_url           => 'http://10.10.10.12:81',
 | 
				
			||||||
      ) }
 | 
					      ) }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      it { is_expected.to contain_keystone__resource__service_identity('cinderv3').with(
 | 
					      it { is_expected.to contain_keystone__resource__service_identity('cinderv3').with(
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user