cisco.cml.cml_lab (1.2.0) — module

Create, update or delete a CML Lab

| "added in version" 0.1.0 of cisco.cml"

Authors: Steven Carter (@stevenca)

preview | supported by community

Install collection

Install with ansible-galaxy collection install cisco.cml:==1.2.0


Add to requirements.yml

  collections:
    - name: cisco.cml
      version: 1.2.0

Description

Create, update or delete a CML Lab


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Build the topology
  hosts: localhost
  gather_facts: no
  tags:
    - virl
    - network
  tasks:
    - name: Check for the lab file
      stat:
        path: "{{ cml_lab_file }}"
      register: stat_result
      delegate_to: localhost
      run_once: yes

    - assert:
        that:
          - stat_result.stat.exists
          - cml_host != ""
          - cml_username != ""
          - cml_password != ""
          - cml_lab != ""
        msg: "CML host, credentials, and topology file are required.  Verify the requirements in README are met."
      delegate_to: localhost
      run_once: yes

    - name: Create the lab
      cisco.cml.cml_lab:
        host: "{{ cml_host }}"
        user: "{{ cml_username }}"
        password: "{{ cml_password }}"
        lab: "{{ cml_lab }}"
        state: present
        file: "{{ cml_lab_file }}"
      register: results

    - name: Refresh Inventory
      meta: refresh_inventory

Inputs

    
lab:
    description: The name of the CML lab (CML_LAB)
    required: true
    type: str

file:
    description: The name of the topology file to use.
    required: false
    type: str

host:
    description: FQDN of the target host (CML_HOST)
    required: true
    type: str

wait:
    default: true
    description: Wait for lab virtual machines to boot before continuing
    required: false
    type: bool

state:
    choices:
    - absent
    - present
    - started
    - stopped
    - wiped
    default: present
    description: The desired state of the lab
    required: false
    type: str

timeout:
    default: 30
    description: API Timeout
    required: false
    type: int

password:
    description: user pass for the target system (CML_PASSWORD)
    required: true
    type: str

topology:
    description: The lab topology.
    required: false
    type: str

username:
    aliases:
    - user
    description: user credential for target system (CML_USERNAME)
    required: true
    type: str

validate_certs:
    default: false
    description: certificate validation (CML_VALIDATE_CERTS)
    required: false
    type: bool