Sha256: 384378d50cf27018b7808f1c7b251676d240c96c8f4d7d0ee71ea4ac74c140dd
Contents?: true
Size: 1.69 KB
Versions: 1
Compression:
Stored size: 1.69 KB
Contents
module Fog module Resources class AzureRM # This class provides the actual implemention for service calls. class Real def list_tagged_resources(tag_name, tag_value = nil) Fog::Logger.debug "Listing Resources with tagname: #{tag_name}" unless tag_name.nil? query_filter = "tagname eq '#{tag_name}' " query_filter += tag_value.nil? ? '' : "and tagvalue eq '#{tag_value}'" begin resources = @rmc.resources.list_as_lazy(query_filter) resources.next_link = '' if resources.next_link.nil? resources.value rescue MsRestAzure::AzureOperationError => e raise Fog::AzureRm::OperationError.new(e) end end end end # This class provides the mock implementation for unit tests. class Mock def list_tagged_resources(tag_name, tag_value) resources = { 'value' => [ { 'id' => '/subscriptions/########-####-####-####-############/fog-rg', 'name' => 'your-resource-name', 'type' => 'providernamespace/resourcetype', 'location' => 'westus', 'tags' => { tag_name => tag_value }, 'plan' => { 'name' => 'free' } } ] } result_mapper = Azure::ARM::Resources::Models::ResourceListResult.mapper @rmc.deserialize(result_mapper, resources, 'result.body').value end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fog-azure-rm-0.0.5 | lib/fog/azurerm/requests/resources/list_tagged_resources.rb |