ansible.builtin.azure_rm_containerinstance (v2.9.17) — module

Manage an Azure Container Instance

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

Authors: Zim Kalinowski (@zikalino)

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.9.17

Description

Create, update and delete an Azure Container Instance.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Create sample container group
    azure_rm_containerinstance:
      resource_group: myResourceGroup
      name: myContainerInstanceGroup
      os_type: linux
      ip_address: public
      containers:
        - name: myContainer1
          image: httpd
          memory: 1.5
          ports:
            - 80
            - 81

Inputs

    
name:
    description:
    - The name of the container group.
    required: true

tags:
    description:
    - Dictionary of string:string pairs to assign as metadata to the object.
    - Metadata tags on the object will be updated with any provided values.
    - To remove tags set append_tags option to false.
    type: dict

ports:
    description:
    - List of ports exposed within the container group.
    - This option is deprecated, using I(ports) under I(containers)".
    type: list

state:
    choices:
    - absent
    - present
    default: present
    description:
    - Assert the state of the container instance. Use C(present) to create or update an
      container instance and C(absent) to delete it.

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
    default: linux
    description:
    - The OS type of containers.

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

location:
    description:
    - Valid azure location. Defaults to location of the resource group.

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

containers:
    description:
    - List of containers.
    - Required when creation.
    suboptions:
      commands:
        description:
        - List of commands to execute within the container instance in exec form.
        - When updating existing container all existing commands will be replaced by new
          ones.
        type: list
        version_added: '2.8'
        version_added_collection: ansible.builtin
      cpu:
        default: 1
        description:
        - The required number of CPU cores of the containers.
        type: float
      environment_variables:
        description:
        - List of container environment variables.
        - When updating existing container all existing variables will be replaced by
          new ones.
        suboptions:
          is_secure:
            description:
            - Is variable secure.
            type: bool
          name:
            description:
            - Environment variable name.
            type: str
          value:
            description:
            - Environment variable value.
            type: str
        type: dict
        version_added: '2.8'
        version_added_collection: ansible.builtin
      image:
        description:
        - The container image name.
        required: true
      memory:
        default: 1.5
        description:
        - The required memory of the containers in GB.
        type: float
      name:
        description:
        - The name of the container instance.
        required: true
      ports:
        description:
        - List of ports exposed within the container group.
        type: list

ip_address:
    choices:
    - public
    - none
    default: none
    description:
    - The IP address type of the container group.
    - Default is C(none) and creating an instance without public IP.

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

force_update:
    default: 'no'
    description:
    - Force update of existing container instance. Any update will result in deletion
      and recreation of existing containers.
    type: bool

dns_name_label:
    description:
    - The Dns name label for the IP.
    type: str
    version_added: '2.8'
    version_added_collection: ansible.builtin

resource_group:
    description:
    - Name of resource group.
    required: true

restart_policy:
    choices:
    - always
    - on_failure
    - never
    description:
    - Restart policy for all containers within the container group.
    type: str
    version_added: '2.8'
    version_added_collection: ansible.builtin

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

registry_password:
    description:
    - The password to log in container image registry server.

registry_username:
    description:
    - The username to log in container image registry server.

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

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

registry_login_server:
    description:
    - The container image registry login server.

Outputs

id:
  description:
  - Resource ID.
  returned: always
  sample: /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ContainerInstance/containerGroups/aci1b6dd89
  type: str
ip_address:
  description:
  - Public IP Address of created container group.
  returned: if address is public
  sample: 175.12.233.11
  type: str
provisioning_state:
  description:
  - Provisioning state of the container.
  returned: always
  sample: Creating
  type: str

See also