class Azure::Storage::Mgmt::V2016_01_01::StorageAccounts
The Storage
Management Client.
Attributes
@return [StorageManagementClient] reference to the StorageManagementClient
Private Class Methods
Creates and initializes a new instance of the StorageAccounts
class. @param client service class for accessing basic functionality.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 17 def initialize(client) @client = client end
Private Instance Methods
Asynchronously creates a new storage account with the specified parameters. If an account is already created and a subsequent create request is issued with different properties, the account properties will be updated. If an account is already created and a subsequent create or update request is issued with the exact same set of properties, the request will succeed.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param parameters [StorageAccountCreateParameters] The parameters to provide for the created account. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [StorageAccount] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 962 def begin_create(resource_group_name, account_name, parameters, custom_headers:nil) response = begin_create_async(resource_group_name, account_name, parameters, custom_headers:custom_headers).value! response.body unless response.nil? end
Asynchronously creates a new storage account with the specified parameters. If an account is already created and a subsequent create request is issued with different properties, the account properties will be updated. If an account is already created and a subsequent create or update request is issued with the exact same set of properties, the request will succeed.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param parameters [StorageAccountCreateParameters] The parameters to provide for the created account. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 1009 def begin_create_async(resource_group_name, account_name, parameters, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, 'account_name is nil' if account_name.nil? fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '24'" if !account_name.nil? && account_name.length > 24 fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3 fail ArgumentError, 'parameters is nil' if parameters.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? # Serialize Request request_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccountCreateParameters.mapper() request_content = @client.serialize(request_mapper, parameters) request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'accountName' => account_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, body: request_content, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:put, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 || status_code == 202 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccount.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Asynchronously creates a new storage account with the specified parameters. If an account is already created and a subsequent create request is issued with different properties, the account properties will be updated. If an account is already created and a subsequent create or update request is issued with the exact same set of properties, the request will succeed.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param parameters [StorageAccountCreateParameters] The parameters to provide for the created account. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 986 def begin_create_with_http_info(resource_group_name, account_name, parameters, custom_headers:nil) begin_create_async(resource_group_name, account_name, parameters, custom_headers:custom_headers).value! end
Checks that the storage account name is valid and is not already in use.
@param account_name [StorageAccountCheckNameAvailabilityParameters] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [CheckNameAvailabilityResult] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 36 def check_name_availability(account_name, custom_headers:nil) response = check_name_availability_async(account_name, custom_headers:custom_headers).value! response.body unless response.nil? end
Checks that the storage account name is valid and is not already in use.
@param account_name [StorageAccountCheckNameAvailabilityParameters] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 69 def check_name_availability_async(account_name, custom_headers:nil) fail ArgumentError, 'account_name is nil' if account_name.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? # Serialize Request request_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccountCheckNameAvailabilityParameters.mapper() request_content = @client.serialize(request_mapper, account_name) request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.Storage/checkNameAvailability' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, body: request_content, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:post, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::CheckNameAvailabilityResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Checks that the storage account name is valid and is not already in use.
@param account_name [StorageAccountCheckNameAvailabilityParameters] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 53 def check_name_availability_with_http_info(account_name, custom_headers:nil) check_name_availability_async(account_name, custom_headers:custom_headers).value! end
Asynchronously creates a new storage account with the specified parameters. If an account is already created and a subsequent create request is issued with different properties, the account properties will be updated. If an account is already created and a subsequent create or update request is issued with the exact same set of properties, the request will succeed.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param parameters [StorageAccountCreateParameters] The parameters to provide for the created account. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [StorageAccount] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 149 def create(resource_group_name, account_name, parameters, custom_headers:nil) response = create_async(resource_group_name, account_name, parameters, custom_headers:custom_headers).value! response.body unless response.nil? end
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param parameters [StorageAccountCreateParameters] The parameters to provide for the created account. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] promise which provides async access to http response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 168 def create_async(resource_group_name, account_name, parameters, custom_headers:nil) # Send request promise = begin_create_async(resource_group_name, account_name, parameters, custom_headers:custom_headers) promise = promise.then do |response| # Defining deserialization method. deserialize_method = lambda do |parsed_response| result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccount.mapper() parsed_response = @client.deserialize(result_mapper, parsed_response) end # Waiting for response. @client.get_long_running_operation_result(response, deserialize_method) end promise end
Deletes a storage account in Microsoft Azure
.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 198 def delete(resource_group_name, account_name, custom_headers:nil) response = delete_async(resource_group_name, account_name, custom_headers:custom_headers).value! nil end
Deletes a storage account in Microsoft Azure
.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 233 def delete_async(resource_group_name, account_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, 'account_name is nil' if account_name.nil? fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '24'" if !account_name.nil? && account_name.length > 24 fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3 fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'accountName' => account_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:delete, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 || status_code == 204 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? result end promise.execute end
Deletes a storage account in Microsoft Azure
.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 216 def delete_with_http_info(resource_group_name, account_name, custom_headers:nil) delete_async(resource_group_name, account_name, custom_headers:custom_headers).value! end
Returns the properties for the specified storage account including but not limited to name, SKU name, location, and account status. The ListKeys operation should be used to retrieve storage keys.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [StorageAccount] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 295 def get_properties(resource_group_name, account_name, custom_headers:nil) response = get_properties_async(resource_group_name, account_name, custom_headers:custom_headers).value! response.body unless response.nil? end
Returns the properties for the specified storage account including but not limited to name, SKU name, location, and account status. The ListKeys operation should be used to retrieve storage keys.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 334 def get_properties_async(resource_group_name, account_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, 'account_name is nil' if account_name.nil? fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '24'" if !account_name.nil? && account_name.length > 24 fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3 fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'accountName' => account_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:get, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccount.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Returns the properties for the specified storage account including but not limited to name, SKU name, location, and account status. The ListKeys operation should be used to retrieve storage keys.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 315 def get_properties_with_http_info(resource_group_name, account_name, custom_headers:nil) get_properties_async(resource_group_name, account_name, custom_headers:custom_headers).value! end
Lists all the storage accounts available under the subscription. Note that storage keys are not returned; use the ListKeys operation for this.
@param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [StorageAccountListResult] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 543 def list(custom_headers:nil) response = list_async(custom_headers:custom_headers).value! response.body unless response.nil? end
Lists all the storage accounts available under the subscription. Note that storage keys are not returned; use the ListKeys operation for this.
@param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 570 def list_async(custom_headers:nil) fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.Storage/storageAccounts' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:get, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccountListResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Lists all the storage accounts available under the given resource group. Note that storage keys are not returned; use the ListKeys operation for this.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [StorageAccountListResult] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 634 def list_by_resource_group(resource_group_name, custom_headers:nil) response = list_by_resource_group_async(resource_group_name, custom_headers:custom_headers).value! response.body unless response.nil? end
Lists all the storage accounts available under the given resource group. Note that storage keys are not returned; use the ListKeys operation for this.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 665 def list_by_resource_group_async(resource_group_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:get, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccountListResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Lists all the storage accounts available under the given resource group. Note that storage keys are not returned; use the ListKeys operation for this.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 650 def list_by_resource_group_with_http_info(resource_group_name, custom_headers:nil) list_by_resource_group_async(resource_group_name, custom_headers:custom_headers).value! end
Lists the access keys for the specified storage account.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [StorageAccountListKeysResult] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 732 def list_keys(resource_group_name, account_name, custom_headers:nil) response = list_keys_async(resource_group_name, account_name, custom_headers:custom_headers).value! response.body unless response.nil? end
Lists the access keys for the specified storage account.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 767 def list_keys_async(resource_group_name, account_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, 'account_name is nil' if account_name.nil? fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '24'" if !account_name.nil? && account_name.length > 24 fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3 fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listKeys' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'accountName' => account_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:post, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccountListKeysResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Lists the access keys for the specified storage account.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 750 def list_keys_with_http_info(resource_group_name, account_name, custom_headers:nil) list_keys_async(resource_group_name, account_name, custom_headers:custom_headers).value! end
Lists all the storage accounts available under the subscription. Note that storage keys are not returned; use the ListKeys operation for this.
@param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 557 def list_with_http_info(custom_headers:nil) list_async(custom_headers:custom_headers).value! end
Regenerates one of the access keys for the specified storage account.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param regenerate_key
[StorageAccountRegenerateKeyParameters] Specifies name of the key which should be regenerated – key1 or key2. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [StorageAccountListKeysResult] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 839 def regenerate_key(resource_group_name, account_name, regenerate_key, custom_headers:nil) response = regenerate_key_async(resource_group_name, account_name, regenerate_key, custom_headers:custom_headers).value! response.body unless response.nil? end
Regenerates one of the access keys for the specified storage account.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param regenerate_key
[StorageAccountRegenerateKeyParameters] Specifies name of the key which should be regenerated – key1 or key2. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 878 def regenerate_key_async(resource_group_name, account_name, regenerate_key, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, 'account_name is nil' if account_name.nil? fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '24'" if !account_name.nil? && account_name.length > 24 fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3 fail ArgumentError, 'regenerate_key is nil' if regenerate_key.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? # Serialize Request request_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccountRegenerateKeyParameters.mapper() request_content = @client.serialize(request_mapper, regenerate_key) request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'accountName' => account_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, body: request_content, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:post, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccountListKeysResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Regenerates one of the access keys for the specified storage account.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param regenerate_key
[StorageAccountRegenerateKeyParameters] Specifies name of the key which should be regenerated – key1 or key2. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 859 def regenerate_key_with_http_info(resource_group_name, account_name, regenerate_key, custom_headers:nil) regenerate_key_async(resource_group_name, account_name, regenerate_key, custom_headers:custom_headers).value! end
The update operation can be used to update the SKU, encryption, access tier, or tags for a storage account. It can also be used to map the account to a custom domain. Only one custom domain is supported per storage account; the replacement/change of custom domain is not supported. In order to replace an old custom domain, the old value must be cleared/unregistered before a new value can be set. The update of multiple properties is supported. This call does not change the storage keys for the account. If you want to change the storage account keys, use the regenerate keys operation. The location and name of the storage account cannot be changed after creation.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param parameters [StorageAccountUpdateParameters] The parameters to provide for the updated account. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [StorageAccount] operation results.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 414 def update(resource_group_name, account_name, parameters, custom_headers:nil) response = update_async(resource_group_name, account_name, parameters, custom_headers:custom_headers).value! response.body unless response.nil? end
The update operation can be used to update the SKU, encryption, access tier, or tags for a storage account. It can also be used to map the account to a custom domain. Only one custom domain is supported per storage account; the replacement/change of custom domain is not supported. In order to replace an old custom domain, the old value must be cleared/unregistered before a new value can be set. The update of multiple properties is supported. This call does not change the storage keys for the account. If you want to change the storage account keys, use the regenerate keys operation. The location and name of the storage account cannot be changed after creation.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param parameters [StorageAccountUpdateParameters] The parameters to provide for the updated account. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 469 def update_async(resource_group_name, account_name, parameters, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, 'account_name is nil' if account_name.nil? fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '24'" if !account_name.nil? && account_name.length > 24 fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3 fail ArgumentError, 'parameters is nil' if parameters.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? # Serialize Request request_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccountUpdateParameters.mapper() request_content = @client.serialize(request_mapper, parameters) request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'accountName' => account_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, body: request_content, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:patch, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Storage::Mgmt::V2016_01_01::Models::StorageAccount.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
The update operation can be used to update the SKU, encryption, access tier, or tags for a storage account. It can also be used to map the account to a custom domain. Only one custom domain is supported per storage account; the replacement/change of custom domain is not supported. In order to replace an old custom domain, the old value must be cleared/unregistered before a new value can be set. The update of multiple properties is supported. This call does not change the storage keys for the account. If you want to change the storage account keys, use the regenerate keys operation. The location and name of the storage account cannot be changed after creation.
@param resource_group_name [String] The name of the resource group within the user's subscription. @param account_name [String] The name of the storage account within the specified resource group. Storage
account names must be between 3 and 24 characters in length and use numbers and lower-case letters only. @param parameters [StorageAccountUpdateParameters] The parameters to provide for the updated account. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2016-01-01/generated/azure_mgmt_storage/storage_accounts.rb, line 442 def update_with_http_info(resource_group_name, account_name, parameters, custom_headers:nil) update_async(resource_group_name, account_name, parameters, custom_headers:custom_headers).value! end