AzureRMR (version 2.1.1)

az_subscription: Azure subscription class

Description

Class representing an Azure subscription.

Usage

az_subscription

Arguments

Format

An R6 object of class az_subscription.

Methods

  • new(token, id, ...): Initialize a subscription object.

  • list_resource_groups(): Return a list of resource group objects for this subscription.

  • get_resource_group(name): Return an object representing an existing resource group.

  • create_resource_group(name, location): Create a new resource group in the specified region/location, and return an object representing it.

  • delete_resource_group(name, confirm=TRUE): Delete a resource group, after asking for confirmation.

  • resource_group_exists(name): Check if a resource group exists.

  • list_resources(): List all resources deployed under this subscription.

  • list_locations(): List locations available.

  • get_provider_api_version(provider, type, which=1, stable_only=TRUE): Get the current API version for the given resource provider and type. If no resource type is supplied, returns a vector of API versions, one for each resource type for the given provider. If neither provider nor type is supplied, returns the API versions for all resources and providers. Set stable_only=FALSE to allow preview APIs to be returned. Set which to a number > 1 to return an API other than the most recent.

  • create_lock(name, level): Create a management lock on this subscription (which will propagate to all resources within it).

  • get_lock(name): Returns a management lock object.

  • delete_lock(name): Deletes a management lock object.

  • list_locks(): List all locks that exist in this subscription.

  • add_role_assignment(name, ...): Adds a new role assignment. See 'Role-based access control' below.

  • get_role_assignment(id): Retrieves an existing role assignment.

  • remove_role_assignment(id): Removes an existing role assignment.

  • list_role_assignments(): Lists role assignments.

  • get_role_definition(id): Retrieves an existing role definition.

  • list_role_definitions() Lists role definitions.

Role-based access control

AzureRMR implements a subset of the full RBAC functionality within Azure Active Directory. You can retrieve role definitions and add and remove role assignments, at the subscription, resource group and resource levels. See rbac for more information.

Details

Generally, the easiest way to create a subscription object is via the get_subscription or list_subscriptions methods of the az_rm class. To create a subscription object in isolation, call the new() method and supply an Oauth 2.0 token of class AzureToken, along with the ID of the subscription.

See Also

Azure Resource Manager overview

For role-based access control methods, see rbac

For management locks, see lock

Examples

Run this code
# NOT RUN {
# recommended way to retrieve a subscription object
sub <- get_azure_login("myaadtenant")$
    get_subscription("subscription_id")

# retrieve list of resource group objects under this subscription
sub$list_resource_groups()

# get a resource group
sub$get_resource_group("rgname")

# check if a resource group exists, and if not, create it
rg_exists <- sub$resource_group_exists("rgname")
if(!rg_exists)
    sub$create_resource_group("rgname", location="australiaeast")

# delete a resource group
sub$delete_resource_group("rgname")

# get provider API versions for some resource types
sub$get_provider_api_version("Microsoft.Compute", "virtualMachines")
sub$get_provider_api_version("Microsoft.Storage", "storageAccounts")

# }

Run the code above in your browser using DataCamp Workspace