class Azure::Armrest::RoleService
Abstract base class for use by role related service classes.
Public Instance Methods
get_by_id(role_id, options = {})
click to toggle source
Gets information for the role assignment via a resource string ID.
# File lib/azure/armrest/role.rb, line 36 def get_by_id(role_id, options = {}) url = build_url(options.merge(:resource => role_id)) response = rest_get(url) model_class.new(response.body) end
Also aliased as: get_by_resource
get_by_name(role_name, options = {})
click to toggle source
Gets information for the role assignment by name, where the “name” is really just the last portion (GUID) of an ID string.
# File lib/azure/armrest/role.rb, line 26 def get_by_name(role_name, options = {}) url = build_url(options.merge(:subscription => true), role_name) response = rest_get(url) model_class.new(response.body) end
Also aliased as: get
list(resource_group, options = {})
click to toggle source
List all role assignments for the given resource_group
.
# File lib/azure/armrest/role.rb, line 56 def list(resource_group, options = {}) url = build_url(options.merge(:resource_group => resource_group)) response = rest_get(url) Azure::Armrest::ArmrestCollection.create_from_response(response, model_class) end
Also aliased as: list_for_resource_group
list_all(options = {})
click to toggle source
List all role assignments for the current subscription.
# File lib/azure/armrest/role.rb, line 46 def list_all(options = {}) url = build_url(options.merge(:subscription => true)) response = rest_get(url) Azure::Armrest::ArmrestCollection.create_from_response(response, model_class) end
Also aliased as: list_for_subscription
list_for_resource(resource, options = {})
click to toggle source
List all role assignments for the given resource
.
Example:
vms = Azure::Armrest::VirtualMachineService.new(conf) ads = Azure::Armrest::Role::AssignmentService.new(conf) vm = vms.get('some_vm', 'some_group') ads.list_for_resource(vm.id)
# File lib/azure/armrest/role.rb, line 74 def list_for_resource(resource, options = {}) url = build_url(options.merge(:resource => resource)) response = rest_get(url) Azure::Armrest::ArmrestCollection.create_from_response(response, model_class) end
Private Instance Methods
build_url(options = {}, property = nil)
click to toggle source
# File lib/azure/armrest/role.rb, line 82 def build_url(options = {}, property = nil) resource = options.delete(:resource) resource_group = options.delete(:resource_group) subscription = options.delete(:subscription) if subscription url = File.join(base_url, 'providers', provider, service_name) elsif resource_group url = File.join(base_url, 'resourceGroups', resource_group, 'providers', provider, service_name) else # resource url = File.join(configuration.environment.resource_url, resource, 'providers', provider, service_name) end url = File.join(url, property) if property url = "#{url}?api-version=#{api_version}" options.each { |key, value| url << "&$#{key}=#{value}" } url end