ansible.builtin.azure_rm_managed_disk (v2.4.4.0-1) — module

Manage Azure Manage Disks

| "added in version" 2.4 of ansible.builtin"

Authors: Bruno Medina (@brusMX)

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.4.4.0.post1

Description

Create, update and delete an Azure Managed Disk


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
    - name: Create managed disk
      azure_rm_managed_disk:
        name: mymanageddisk
        location: eastus
        resource_group: Testing
        disk_size_gb: 4
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
    - name: Delete managed disk
      azure_rm_manage_disk:
        name: mymanageddisk
        location: eastus
        resource_group: Testing
        state: absent

Inputs

    
name:
    description:
    - Name of the managed disk
    required: true

tags:
    description:
    - Tags to assign to the managed disk.
    required: false
    type: dict

state:
    choices:
    - absent
    - present
    default: present
    description:
    - Assert the state of the managed disk. Use 'present' to create or update a managed
      disk and 'absent' to delete a managed disk.
    required: false

secret:
    description:
    - Azure client secret. Use when authenticating with a Service Principal.
    type: str

tenant:
    description:
    - Azure tenant ID. Use when authenticating with a Service Principal.
    type: str

ad_user:
    description:
    - Active Directory username. Use when authenticating with an Active Directory user
      rather than service principal.
    type: str

os_type:
    choices:
    - linux
    - windows
    description:
    - 'Type of Operating System: ''linux'' or ''windows''. Used when ''create_option''
      is either ''copy'' or ''import'' and the source is an OS disk.'
    required: false

profile:
    description:
    - Security profile found in ~/.azure/credentials file.
    type: str

location:
    default: resource_group location
    description:
    - Valid Azure location. Defaults to location of the resource group.
    required: false

log_mode:
    description:
    - Parent argument.
    type: str

log_path:
    description:
    - Parent argument.
    type: str

password:
    description:
    - Active Directory user password. Use when authenticating with an Active Directory
      user rather than service principal.
    type: str

client_id:
    description:
    - Azure client ID. Use when authenticating with a Service Principal.
    type: str

source_uri:
    description:
    - URI to a valid VHD file to be used when 'create_option' is 'import'.
    required: false

api_profile:
    default: latest
    description:
    - Selects an API profile to use when communicating with Azure services. Default value
      of C(latest) is appropriate for public clouds; future values will allow use with
      Azure Stack.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

append_tags:
    default: true
    description:
    - Use to control if tags field is canonical or just appends to existing tags.
    - When canonical, any tags not found in the tags parameter will be removed from the
      object's metadata.
    type: bool

auth_source:
    choices:
    - auto
    - cli
    - credential_file
    - env
    - msi
    default: auto
    description:
    - Controls the source of the credentials to use for authentication.
    - Can also be set via the C(ANSIBLE_AZURE_AUTH_SOURCE) environment variable.
    - When set to C(auto) (the default) the precedence is module parameters -> C(env)
      -> C(credential_file) -> C(cli).
    - When set to C(env), the credentials will be read from the environment variables
    - When set to C(credential_file), it will read the profile from C(~/.azure/credentials).
    - When set to C(cli), the credentials will be sources from the Azure CLI profile.
      C(subscription_id) or the environment variable C(AZURE_SUBSCRIPTION_ID) can be used
      to identify the subscription ID if more than one is present otherwise the default
      az cli subscription is used.
    - When set to C(msi), the host machine must be an azure resource with an enabled MSI
      extension. C(subscription_id) or the environment variable C(AZURE_SUBSCRIPTION_ID)
      can be used to identify the subscription ID if the resource is granted access to
      more than one subscription, otherwise the first subscription is chosen.
    - The C(msi) was added in Ansible 2.6.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

disk_size_gb:
    description: -Size in GB of the managed disk to be created. If 'create_option' is
      'copy' then the value must be greater than or equal to the source's size.
    required: true

create_option:
    choices:
    - empty
    - import
    - copy
    description:
    - 'Allowed values: empty, import, copy. ''import'' from a VHD file in ''source_uri''
      and ''copy'' from previous managed disk ''source_resource_uri''.'
    required: false

resource_group:
    description:
    - Name of a resource group where the managed disk exists or will be created.
    required: true

subscription_id:
    description:
    - Your Azure subscription Id.
    type: str

cloud_environment:
    default: AzureCloud
    description:
    - For cloud environments other than the US public cloud, the environment name (as
      defined by Azure Python SDK, eg, C(AzureChinaCloud), C(AzureUSGovernment)), or a
      metadata discovery endpoint URL (required for Azure Stack). Can also be set via
      credential file profile or the C(AZURE_CLOUD_ENVIRONMENT) environment variable.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

adfs_authority_url:
    description:
    - Azure AD authority url. Use when authenticating with Username/password, and has
      your own ADFS authority.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

source_resource_uri:
    description:
    - The resource ID of the managed disk to copy when 'create_option' is 'copy'.
    required: false

cert_validation_mode:
    choices:
    - ignore
    - validate
    description:
    - Controls the certificate validation behavior for Azure endpoints. By default, all
      modules will validate the server certificate, but when an HTTPS proxy is in use,
      or against Azure Stack, it may be necessary to disable this behavior by passing
      C(ignore). Can also be set via credential file profile or the C(AZURE_CERT_VALIDATION)
      environment variable.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

storage_account_type:
    choices:
    - Standard_LRS
    - Premium_LRS
    description:
    - 'Type of storage for the managed disk: ''Standard_LRS''  or ''Premium_LRS''. If
      not specified the disk is created ''Standard_LRS'''
    required: false

Outputs

changed:
  description: Whether or not the resource has changed
  returned: always
  type: bool
id:
  description: The managed disk resource ID.
  returned: always
  type: dict
state:
  description: Current state of the managed disk
  returned: always
  type: dict

See also