# == Class: keystone::endpoint # # Creates the auth endpoints for keystone # # === Parameters # # [*public_url*] # (optional) Public url for keystone endpoint. (Defaults to 'http://127.0.0.1:5000') # This url should *not* contain any version or trailing '/'. # # [*internal_url*] # (optional) Internal url for keystone endpoint. (Defaults to $public_url) # This url should *not* contain any version or trailing '/'. # # [*admin_url*] # (optional) Admin url for keystone endpoint. (Defaults to 'http://127.0.0.1:35357') # This url should *not* contain any version or trailing '/'. # # [*region*] # (optional) Region for endpoint. (Defaults to 'RegionOne') # # [*version*] # (optional) API version for endpoint. Appended to all endpoint urls. (Defaults to 'v2.0') # # [*public_protocol*] # (optional) DEPRECATED: Use public_url instead. # Protocol for public access to keystone endpoint. (Defaults to 'http') # Setting this parameter overrides public_url parameter. # # [*public_address*] # (optional) DEPRECATED: Use public_url instead. # Public address for keystone endpoint. (Defaults to '127.0.0.1') # Setting this parameter overrides public_url parameter. # # [*public_port*] # (optional) DEPRECATED: Use public_url instead. # Port for non-admin access to keystone endpoint. (Defaults to 5000) # Setting this parameter overrides public_url parameter. # # [*internal_address*] # (optional) DEPRECATED: Use internal_url instead. # Internal address for keystone endpoint. (Defaults to '127.0.0.1') # Setting this parameter overrides internal_url parameter. # # [*internal_port*] # (optional) DEPRECATED: Use internal_url instead. # Port for internal access to keystone endpoint. (Defaults to $public_port) # Setting this parameter overrides internal_url parameter. # # [*admin_address*] # (optional) DEPRECATED: Use admin_url instead. # Admin address for keystone endpoint. (Defaults to '127.0.0.1') # Setting this parameter overrides admin_url parameter. # # [*admin_port*] # (optional) DEPRECATED: Use admin_url instead. # Port for admin access to keystone endpoint. (Defaults to 35357) # Setting this parameter overrides admin_url parameter. # # === Deprecation notes # # If any value is provided for public_protocol, public_address or public_port parameters, # public_url will be completely ignored. The same applies for internal and admin parameters. # # === Examples # # class { 'keystone::endpoint': # public_url => 'https://154.10.10.23:5000', # internal_url => 'https://11.0.1.7:5000', # admin_url => 'https://10.0.1.7:35357', # } # class keystone::endpoint ( $public_url = 'http://127.0.0.1:5000', $internal_url = undef, $admin_url = 'http://127.0.0.1:35357', $version = 'v2.0', $region = 'RegionOne', # DEPRECATED PARAMETERS $public_protocol = undef, $public_address = undef, $public_port = undef, $internal_address = undef, $internal_port = undef, $admin_address = undef, $admin_port = undef, ) { warning('keystone::endpoint class is deprecated, use keystone::resource::service_identity instead.') if $public_port { warning('The public_port parameter is deprecated, use public_url instead.') } if $public_protocol { warning('The public_protocol parameter is deprecated, use public_url instead.') } if $public_address { warning('The public_address parameter is deprecated, use public_url instead.') } if $internal_address { warning('The internal_address parameter is deprecated, use internal_url instead.') } if $internal_port { warning('The internal_port parameter is deprecated, use internal_url instead.') } if $admin_address { warning('The admin_address parameter is deprecated, use admin_url instead.') } if $admin_port { warning('The admin_port parameter is deprecated, use admin_url instead.') } $public_url_real = inline_template('<%= if (!@public_protocol.nil?) || (!@public_address.nil?) || (!@public_port.nil?) @public_protocol ||= "http" @public_address ||= "127.0.0.1" @public_port ||= "5000" "#{@public_protocol}://#{@public_address}:#{@public_port}/#{@version}" else "#{@public_url}/#{@version}" end %>') $internal_url_real = inline_template('<%= if (!@internal_address.nil?) || (!@internal_port.nil?) || (!@public_port.nil?) @internal_address ||= @public_address ||= "127.0.0.1" @internal_port ||= @public_port ||= "5000" "http://#{@internal_address}:#{@internal_port}/#{@version}" elsif (!@internal_url.nil?) "#{@internal_url}/#{@version}" else "#{@public_url}/#{@version}" end %>') $admin_url_real = inline_template('<%= if (!@admin_address.nil?) || (!@admin_port.nil?) @admin_address ||= "127.0.0.1" @admin_port ||= "35357" "http://#{@admin_address}:#{@admin_port}/#{@version}" else "#{@admin_url}/#{@version}" end %>') keystone::resource::service_identity { 'keystone': configure_user => false, configure_user_role => false, service_type => 'identity', service_description => 'OpenStack Identity Service', public_url => $public_url_real, admin_url => $admin_url_real, internal_url => $internal_url_real, region => $region, } }