Class: Fog::Resources::AzureRM::Real
- Inherits:
-
Object
- Object
- Fog::Resources::AzureRM::Real
- Defined in:
- lib/fog/azurerm/resources.rb,
lib/fog/azurerm/requests/resources/list_resource_groups.rb,
lib/fog/azurerm/requests/resources/create_resource_group.rb,
lib/fog/azurerm/requests/resources/delete_resource_group.rb
Instance Method Summary collapse
- #create_resource_group(name, location) ⇒ Object
- #delete_resource_group(name) ⇒ Object
-
#initialize(options) ⇒ Real
constructor
A new instance of Real.
- #list_resource_groups ⇒ Object
Constructor Details
#initialize(options) ⇒ Real
Returns a new instance of Real.
33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/fog/azurerm/resources.rb', line 33 def initialize() begin require 'azure_mgmt_resources' rescue LoadError => e retry if require('rubygems') raise e. end credentials = Fog::Credentials::AzureRM.get_credentials([:tenant_id], [:client_id], [:client_secret]) @rmc = ::Azure::ARM::Resources::ResourceManagementClient.new(credentials) @rmc.subscription_id = [:subscription_id] end |
Instance Method Details
#create_resource_group(name, location) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/fog/azurerm/requests/resources/create_resource_group.rb', line 5 def create_resource_group(name, location) begin Fog::Logger.debug "Creating Resource Group: #{name}." rg_properties = ::Azure::ARM::Resources::Models::ResourceGroup.new rg_properties.location = location promise = @rmc.resource_groups.create_or_update(name, rg_properties) result = promise.value! Fog::Logger.debug "Resource Group #{name} created successfully." result rescue MsRestAzure::AzureOperationError => e msg = "Exception creating Resource Group #{name}. #{e.body['error']['message']}" raise msg end end |
#delete_resource_group(name) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/fog/azurerm/requests/resources/delete_resource_group.rb', line 5 def delete_resource_group(name) begin Fog::Logger.debug "Deleting Resource Group: #{name}." promise = @rmc.resource_groups.delete(name) result = promise.value! Fog::Logger.debug "Resource Group #{name} deleted successfully." result rescue MsRestAzure::AzureOperationError => e msg = "Exception deleting Resource Group #{name}. #{e.body['error']['message']}" raise msg end end |
#list_resource_groups ⇒ Object
5 6 7 8 9 10 11 12 13 14 |
# File 'lib/fog/azurerm/requests/resources/list_resource_groups.rb', line 5 def list_resource_groups begin promise = @rmc.resource_groups.list response = promise.value! response.body.value rescue MsRestAzure::AzureOperationError => e msg = "Exception listing Resource Groups. #{e.body['error']['message']}" raise msg end end |