module MsRestAzure::Common::Configurable
The Azure::Common::Configurable module provides basic configuration for Azure activities.
Attributes
@return [MsRestAzure::ActiveDirectoryServiceSettings] Azure active directory service settings.
@return [String] Azure client id.
@return [String] Azure secret key.
@return [MsRest::ServiceClientCredentials] credentials to authorize HTTP requests made by the service client.
@return [String] Azure subscription id.
@return [String] Azure tenant id (also known as domain).
Public Class Methods
List of configurable keys for {Azure::Common::Client}. @return [Array] of option keys.
# File lib/ms_rest_azure/common/configurable.rb, line 31 def keys @keys ||= [:tenant_id, :client_id, :client_secret, :subscription_id, :active_directory_settings] end
Public Instance Methods
# File lib/ms_rest_azure/common/configurable.rb, line 71 def config self end
Set configuration options using a block.
# File lib/ms_rest_azure/common/configurable.rb, line 39 def configure yield self end
Resets the configurable options to provided options or defaults. This will also creates MsRest::TokenCredentials to be used for subsequent Azure Resource Manager clients.
# File lib/ms_rest_azure/common/configurable.rb, line 47 def reset!(options = {}) MsRestAzure::Common::Configurable.keys.each do |key| default_value = MsRestAzure::Common::Default.options[key] instance_variable_set(:"@#{key}", options.fetch(key, default_value)) end if(options[:credentials].nil?) # The user has not passed in the credentials. So, the SDK has to # build the credentials itself. fail ArgumentError, 'tenant_id is nil' if self.tenant_id.nil? fail ArgumentError, 'client_id is nil' if self.client_id.nil? fail ArgumentError, 'client_secret is nil' if self.client_secret.nil? fail ArgumentError, 'active_directory_settings is nil' if self.active_directory_settings.nil? self.credentials = MsRest::TokenCredentials.new( MsRestAzure::ApplicationTokenProvider.new( self.tenant_id, self.client_id, self.client_secret, self.active_directory_settings)) else self.credentials = options[:credentials] end self end
Private Instance Methods
configures configurable options to default values
# File lib/ms_rest_azure/common/configurable.rb, line 80 def setup_default_options opts = {} MsRestAzure::Common::Configurable.keys.map do |key| opts[key] = MsRestAzure::Common::Default.options[key] end opts end