On this page
azure_rm_virtualmachine_extension - Managed Azure Virtual Machine extension
New in version 2.4.
Synopsis
- Create, update and delete Azure Virtual Machine Extension
Requirements (on host that executes module)
- python >= 2.7
- azure >= 2.0.0
Options
parameter | required | default | choices | comments |
---|---|---|---|---|
ad_user |
no |
Active Directory username. Use when authenticating with an Active Directory user rather than service principal.
|
||
auto_upgrade_minor_version |
no |
Whether the extension handler should be automatically upgraded across minor versions.
|
||
client_id |
no |
Azure client ID. Use when authenticating with a Service Principal.
|
||
cloud_environment |
no | AzureCloud |
For cloud environments other than the US public cloud, the environment name (as defined by Azure Python SDK, eg, AzureChinaCloud , AzureUSGovernment ), or a metadata discovery endpoint URL (required for Azure Stack). Can also be set via credential file profile or the AZURE_CLOUD_ENVIRONMENT environment variable.
|
|
location |
no | resource_group location |
Valid azure location. Defaults to location of the resource group.
|
|
name |
yes |
Name of the vm extension
|
||
password |
no |
Active Directory user password. Use when authenticating with an Active Directory user rather than service principal.
|
||
profile |
no |
Security profile found in ~/.azure/credentials file.
|
||
protected_settings |
no |
Json formatted protected settings for the extension.
|
||
publisher |
no |
The name of the extension handler publisher.
|
||
resource_group |
yes |
Name of a resource group where the vm extension exists or will be created.
|
||
secret |
no |
Azure client secret. Use when authenticating with a Service Principal.
|
||
settings |
no |
Json formatted public settings for the extension.
|
||
state |
no | present |
|
Assert the state of the vm extension. Use 'present' to create or update a vm extension and 'absent' to delete a vm extension.
|
subscription_id |
no |
Your Azure subscription Id.
|
||
tenant |
no |
Azure tenant ID. Use when authenticating with a Service Principal.
|
||
type_handler_version |
no |
The type version of the extension handler.
|
||
virtual_machine_extension_type |
no |
The type of the extension handler.
|
||
virtual_machine_name |
no |
The name of the virtual machine where the extension should be create or updated.
|
Examples
- name: Create VM Extension
azure_rm_virtualmachine_extension:
name: myvmextension
location: eastus
resource_group: Testing
virtual_machine_name: myvm
publisher: Microsoft.Azure.Extensions
virtual_machine_extension_type: CustomScript
type_handler_version: 2.0
settings: '{"commandToExecute": "hostname"}'
auto_upgrade_minor_version: true
- name: Delete VM Extension
azure_rm_virtualmachine_extension:
name: myvmextension
location: eastus
resource_group: Testing
virtual_machine_name: myvm
state: absent
Return Values
Common return values are documented here Return Values, the following are the fields unique to this module:
name | description | returned | type | sample |
---|---|---|---|---|
changed |
Whether or not the resource has changed
|
always | bool | |
state |
Current state of the vm extension
|
always | dict |
Notes
Note
- For authentication with Azure you can pass parameters, set environment variables or use a profile stored in ~/.azure/credentials. Authentication is possible using a service principal or Active Directory user. To authenticate via service principal, pass subscription_id, client_id, secret and tenant or set environment variables AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET and AZURE_TENANT.
- To authenticate via Active Directory user, pass ad_user and password, or set AZURE_AD_USER and AZURE_PASSWORD in the environment.
- Alternatively, credentials can be stored in ~/.azure/credentials. This is an ini file containing a [default] section and the following keys: subscription_id, client_id, secret and tenant or subscription_id, ad_user and password. It is also possible to add additional profiles. Specify the profile by passing profile or setting AZURE_PROFILE in the environment.
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/azure_rm_virtualmachine_extension_module.html