azure.rm.openshiftmanagedcluster (0.0.6) — module

Manage Azure OpenShiftManagedCluster instance.

| "added in version" 2.9 of azure.rm"

Authors: Zim Kalinowski (@zikalino)

preview | supported by community

Install collection

Install with ansible-galaxy collection install azure.rm:==0.0.6


Add to requirements.yml

  collections:
    - name: azure.rm
      version: 0.0.6

Description

Create, update and delete instance of Azure OpenShiftManagedCluster.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create/Update OpenShift Managed Cluster
  azure.rm.openshiftmanagedcluster:
    resource_group: myResourceGroup
    name: myOpenShiftManagedCluster
    location: eastus
    open_shift_version: v3.11
    network_profile:
      vnet_cidr: 10.0.0.0/8
    router_profiles:
      - name: default
    master_pool_profile:
      name: master
      count: '3'
      vm_size: Standard_D4s_v3
      subnet_cidr: 10.0.0.0/24
      os_type: Linux
    agent_pool_profiles:
      - name: infra
        count: '2'
        vm_size: Standard_D4s_v3
        subnet_cidr: 10.0.0.0/24
        os_type: Linux
        role: infra
      - name: compute
        count: '4'
        vm_size: Standard_D4s_v3
        subnet_cidr: 10.0.0.0/24
        os_type: Linux
        role: compute
    auth_profile:
      identity_providers:
        - name: Azure AD
          provider:
            kind: AADIdentityProvider
            clientId: xxxxxxxx-xxxx-xxxx
            secret: xxxxxxxx-xxxx-xxxx
            tenantId: xxxxxxxx-xxxx-xxxx
            customerAdminGroupId: xxxxxxxx-xxxx-xxxx
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete OpenShift Managed Cluster
  azure.rm.openshiftmanagedcluster:
    resource_group: myResourceGroup
    name: myOpenShiftManagedCluster
    state: absent

Inputs

    
id:
    description:
    - Resource Id
    type: str

fqdn:
    description:
    - Service generated FQDN for OpenShift API server loadbalancer internal hostname.
    type: str

name:
    description:
    - Resource name
    type: str

plan:
    description:
    - Define the resource plan as required by ARM for billing purposes
    suboptions:
      name:
        description:
        - The plan ID.
        type: str
      product:
        description:
        - Specifies the product of the image from the marketplace. This is the same value
          as Offer under the imageReference element.
        type: str
      promotion_code:
        description:
        - The promotion code.
        type: str
      publisher:
        description:
        - The plan ID.
        type: str
    type: dict

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.
    - Currently, Azure DNS zones and Traffic Manager services also don't allow the use
      of spaces in the tag.
    - Azure Front Door doesn't support the use of
    - Azure Automation and Azure CDN only support 15 tags on resources.
    type: dict

type:
    description:
    - Resource type
    type: str

state:
    choices:
    - absent
    - present
    default: present
    description:
    - Assert the state of the OpenShiftManagedCluster.
    - Use C(present) to create or update an OpenShiftManagedCluster 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

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

location:
    description:
    - Resource location
    required: true
    type: str

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

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

auth_profile:
    description:
    - Configures OpenShift authentication.
    suboptions:
      identity_providers:
        description:
        - Type of authentication profile to use.
        suboptions:
          name:
            description:
            - Name of the provider.
            type: str
          provider:
            description:
            - Configuration of the provider.
            type: dict
        type: list
    type: dict

resource_group:
    description:
    - The name of the resource group.
    required: true
    type: str

cluster_version:
    description:
    - Version of OpenShift specified when creating the cluster.
    type: str

network_profile:
    description:
    - Configuration for OpenShift networking.
    suboptions:
      peer_vnet_id:
        description:
        - CIDR of the Vnet to peer.
        type: str
      vnet_cidr:
        description:
        - CIDR for the OpenShift Vnet.
        type: str
      vnet_id:
        description:
        - ID of the Vnet created for OSA cluster.
        type: str
    type: dict

public_hostname:
    description:
    - Service generated FQDN for OpenShift API server.
    type: str

router_profiles:
    description:
    - Configuration for OpenShift router(s).
    suboptions:
      fqdn:
        description:
        - Auto-allocated FQDN for the OpenShift router.
        type: str
      name:
        description:
        - Name of the router profile.
        type: str
      public_subdomain:
        description:
        - DNS subdomain for OpenShift router.
        type: str
    type: list

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

open_shift_version:
    description:
    - Version of OpenShift specified when creating the cluster.
    required: true
    type: str

provisioning_state:
    description:
    - The current deployment or provisioning state, which only appears in the response.
    type: str

agent_pool_profiles:
    description:
    - Configuration of OpenShift cluster VMs.
    suboptions:
      count:
        description:
        - Number of agents (VMs) to host docker containers.
        required: true
        type: int
      name:
        description:
        - Unique name of the pool profile in the context of the subscription and resource
          group.
        required: true
        type: str
      os_type:
        description:
        - OsType to be used to specify os type. Choose from Linux and Windows. Default
          to Linux.
        type: str
      role:
        description:
        - Define the role of the AgentPoolProfile.
        type: str
      subnet_cidr:
        description:
        - Subnet CIDR for the peering.
        type: str
      vm_size:
        description:
        - Size of agent VMs.
        required: true
        type: str
    type: list

master_pool_profile:
    description:
    - Configuration for OpenShift master VMs.
    suboptions:
      count:
        description:
        - Number of masters (VMs) to host docker containers. The default value is 3.
        required: true
        type: int
      name:
        description:
        - Unique name of the master pool profile in the context of the subscription and
          resource group.
        type: str
      os_type:
        description:
        - OsType to be used to specify os type. Choose from Linux and Windows. Default
          to Linux.
        type: str
      subnet_cidr:
        description:
        - Subnet CIDR for the peering.
        type: str
      vm_size:
        description:
        - Size of agent VMs.
        required: true
        type: str
    type: dict

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

Outputs

id:
  description:
  - Resource Id
  returned: always
  sample: null
  type: str
location:
  description:
  - Resource location
  returned: always
  sample: null
  type: str
name:
  description:
  - Resource name
  returned: always
  sample: null
  type: str
plan:
  contains:
    name:
      description:
      - The plan ID.
      returned: always
      sample: null
      type: str
    product:
      description:
      - Specifies the product of the image from the marketplace. This is the same
        value as Offer under the imageReference element.
      returned: always
      sample: null
      type: str
    promotion_code:
      description:
      - The promotion code.
      returned: always
      sample: null
      type: str
    publisher:
      description:
      - The plan ID.
      returned: always
      sample: null
      type: str
  description:
  - Define the resource plan as required by ARM for billing purposes
  returned: always
  sample: null
  type: dict
properties:
  contains:
    agent_pool_profiles:
      contains:
        count:
          description:
          - Number of agents (VMs) to host docker containers.
          returned: always
          sample: null
          type: int
        name:
          description:
          - Unique name of the pool profile in the context of the subscription and
            resource group.
          returned: always
          sample: null
          type: str
        os_type:
          description:
          - OsType to be used to specify os type. Choose from Linux and Windows. Default
            to Linux.
          returned: always
          sample: null
          type: str
        role:
          description:
          - Define the role of the AgentPoolProfile.
          returned: always
          sample: null
          type: str
        subnet_cidr:
          description:
          - Subnet CIDR for the peering.
          returned: always
          sample: null
          type: str
        vm_size:
          description:
          - Size of agent VMs.
          returned: always
          sample: null
          type: str
      description:
      - Configuration of OpenShift cluster VMs.
      returned: always
      sample: null
      type: dict
    auth_profile:
      contains:
        identity_providers:
          contains:
            name:
              description:
              - Name of the provider.
              returned: always
              sample: null
              type: str
            provider:
              description:
              - Configuration of the provider.
              returned: always
              sample: null
              type: dict
          description:
          - Type of authentication profile to use.
          returned: always
          sample: null
          type: dict
      description:
      - Configures OpenShift authentication.
      returned: always
      sample: null
      type: dict
    cluster_version:
      description:
      - Version of OpenShift specified when creating the cluster.
      returned: always
      sample: null
      type: str
    fqdn:
      description:
      - Service generated FQDN for OpenShift API server loadbalancer internal hostname.
      returned: always
      sample: null
      type: str
    master_pool_profile:
      contains:
        count:
          description:
          - Number of masters (VMs) to host docker containers. The default value is
            3.
          returned: always
          sample: null
          type: int
        name:
          description:
          - Unique name of the master pool profile in the context of the subscription
            and resource group.
          returned: always
          sample: null
          type: str
        os_type:
          description:
          - OsType to be used to specify os type. Choose from Linux and Windows. Default
            to Linux.
          returned: always
          sample: null
          type: str
        subnet_cidr:
          description:
          - Subnet CIDR for the peering.
          returned: always
          sample: null
          type: str
        vm_size:
          description:
          - Size of agent VMs.
          returned: always
          sample: null
          type: str
      description:
      - Configuration for OpenShift master VMs.
      returned: always
      sample: null
      type: dict
    network_profile:
      contains:
        vnet_cidr:
          description:
          - CIDR for the OpenShift Vnet.
          returned: always
          type: str
      description:
      - Configuration for OpenShift networking.
      returned: always
      sample: null
      type: dict
    open_shift_version:
      description:
      - Version of OpenShift specified when creating the cluster.
      returned: always
      sample: null
      type: str
    provisioning_state:
      description:
      - The current deployment or provisioning state, which only appears in the response.
      returned: always
      sample: null
      type: str
    public_hostname:
      description:
      - Service generated FQDN for OpenShift API server.
      returned: always
      sample: null
      type: str
    router_profiles:
      contains:
        fqdn:
          description:
          - Auto-allocated FQDN for the OpenShift router.
          returned: always
          sample: null
          type: str
        name:
          description:
          - Name of the router profile.
          returned: always
          sample: null
          type: str
        public_subdomain:
          description:
          - DNS subdomain for OpenShift router.
          returned: always
          sample: null
          type: str
      description:
      - Configuration for OpenShift router(s).
      returned: always
      sample: null
      type: dict
  description:
  - Properties of a OpenShift managed cluster.
  returned: always
  sample: null
  type: dict
tags:
  description:
  - Resource tags
  returned: always
  sample: null
  type: str
type:
  description:
  - Resource type
  returned: always
  sample: null
  type: str

See also