|
|
|
---
|
|
|
|
- debug: msg="START junos_system netconf/basic.yaml on connection={{ ansible_connection }}"
|
|
|
|
|
|
|
|
- name: setup - remove hostname
|
|
|
|
junos_system:
|
|
|
|
hostname: vsrx01
|
|
|
|
state: absent
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
|
|
|
|
- name: Set hostname
|
|
|
|
junos_system:
|
|
|
|
hostname: vsrx01
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<host-name>vsrx01</host-name>' in config.xml"
|
|
|
|
|
|
|
|
- name: Set hostname (idempotent)
|
|
|
|
junos_system:
|
|
|
|
hostname: vsrx01
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == false"
|
|
|
|
|
|
|
|
- name: Deactivate hostname configuration
|
|
|
|
junos_system:
|
|
|
|
hostname: vsrx01
|
|
|
|
state: present
|
|
|
|
active: False
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<host-name inactive=\"inactive\">' in config.xml"
|
|
|
|
|
|
|
|
- name: Activate hostname configuration
|
|
|
|
junos_system:
|
|
|
|
hostname: vsrx01
|
|
|
|
state: present
|
|
|
|
active: True
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<host-name>vsrx01</host-name>' in config.xml"
|
|
|
|
|
|
|
|
- name: Delete hostname configuration
|
|
|
|
junos_system:
|
|
|
|
hostname: vsrx01
|
|
|
|
state: absent
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<host-name>vsrx01</host-name>' in config.xml"
|
|
|
|
|
|
|
|
- name: Teardown - set hostname
|
|
|
|
junos_system:
|
|
|
|
hostname: vsrx01
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
|
|
|
|
- name: setup - remove domain name
|
|
|
|
junos_system:
|
|
|
|
domain_name: ansible.com
|
|
|
|
state: absent
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
|
|
|
|
- name: Set domain name
|
|
|
|
junos_system:
|
|
|
|
domain_name: ansible.com
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<domain-name>ansible.com</domain-name>' in config.xml"
|
|
|
|
|
|
|
|
- name: Set domain name (idempotent)
|
|
|
|
junos_system:
|
|
|
|
domain_name: ansible.com
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == false"
|
|
|
|
|
|
|
|
- name: Deactivate domain name
|
|
|
|
junos_system:
|
|
|
|
domain_name: ansible.com
|
|
|
|
state: present
|
|
|
|
active: False
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<domain-name inactive=\"inactive\">' in config.xml"
|
|
|
|
|
|
|
|
- name: Activate domain name
|
|
|
|
junos_system:
|
|
|
|
domain_name: ansible.com
|
|
|
|
state: present
|
|
|
|
active: True
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<domain-name>ansible.com</domain-name>' in config.xml"
|
|
|
|
|
|
|
|
- name: Delete domain name
|
|
|
|
junos_system:
|
|
|
|
domain_name: ansible.com
|
|
|
|
state: absent
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<domain-name>ansible.com</domain-name>' not in config.xml"
|
|
|
|
|
|
|
|
- name: Teardown - set domain name
|
|
|
|
junos_system:
|
|
|
|
domain_name: ansible.com
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
|
|
|
|
- name: Setup - delete domain search
|
|
|
|
junos_system:
|
|
|
|
domain_search:
|
|
|
|
- test.com
|
|
|
|
- sample.com
|
|
|
|
state: absent
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Set domain search
|
|
|
|
junos_system:
|
|
|
|
domain_search:
|
|
|
|
- test.com
|
|
|
|
- sample.com
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<domain-search>test.com</domain-search>' in config.xml"
|
|
|
|
- "'<domain-search>sample.com</domain-search>' in config.xml"
|
|
|
|
|
|
|
|
- name: Set domain search (idempotency)
|
|
|
|
junos_system:
|
|
|
|
domain_search:
|
|
|
|
- test.com
|
|
|
|
- sample.com
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == false"
|
|
|
|
|
|
|
|
- name: Deactivate domain search
|
|
|
|
junos_system:
|
|
|
|
domain_search:
|
|
|
|
- test.com
|
|
|
|
- sample.com
|
|
|
|
state: present
|
|
|
|
active: False
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<domain-search inactive=\"inactive\">test.com</domain-search>' in config.xml"
|
|
|
|
- "'<domain-search inactive=\"inactive\">sample.com</domain-search>' in config.xml"
|
|
|
|
|
|
|
|
- name: Activate domain search
|
|
|
|
junos_system:
|
|
|
|
domain_search:
|
|
|
|
- test.com
|
|
|
|
- sample.com
|
|
|
|
state: present
|
|
|
|
active: True
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<domain-search>test.com</domain-search>' in config.xml"
|
|
|
|
- "'<domain-search>sample.com</domain-search>' in config.xml"
|
|
|
|
|
|
|
|
- name: Delete domain search
|
|
|
|
junos_system:
|
|
|
|
domain_search:
|
|
|
|
- test.com
|
|
|
|
- sample.com
|
|
|
|
state: absent
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<domain-search>test.com</domain-search>' not in config.xml"
|
|
|
|
- "'<domain-search>sample.com</domain-search>' not in config.xml"
|
|
|
|
|
|
|
|
- name: Setup - delete name servers
|
|
|
|
junos_system:
|
|
|
|
name_servers:
|
|
|
|
- 8.8.8.8
|
|
|
|
- 8.8.4.4
|
|
|
|
state: absent
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Set name servers
|
|
|
|
junos_system:
|
|
|
|
name_servers:
|
|
|
|
- 8.8.8.8
|
|
|
|
- 8.8.4.4
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<name>8.8.8.8</name>' in config.xml"
|
|
|
|
- "'<name>8.8.4.4</name>' in config.xml"
|
|
|
|
|
|
|
|
- name: Set name servers (idempotent)
|
|
|
|
junos_system:
|
|
|
|
name_servers:
|
|
|
|
- 8.8.8.8
|
|
|
|
- 8.8.4.4
|
|
|
|
state: present
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == false"
|
|
|
|
|
|
|
|
- name: Deactivate name servers
|
|
|
|
junos_system:
|
|
|
|
name_servers:
|
|
|
|
- 8.8.8.8
|
|
|
|
- 8.8.4.4
|
|
|
|
state: present
|
|
|
|
active: False
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<name-server inactive=\"inactive\">' in config.xml"
|
|
|
|
|
|
|
|
- name: Activate name servers
|
|
|
|
junos_system:
|
|
|
|
name_servers:
|
|
|
|
- 8.8.8.8
|
|
|
|
- 8.8.4.4
|
|
|
|
state: present
|
|
|
|
active: True
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<name>8.8.8.8</name>' in config.xml"
|
|
|
|
- "'<name>8.8.4.4</name>' in config.xml"
|
|
|
|
|
|
|
|
- name: Delete name servers
|
|
|
|
junos_system:
|
|
|
|
name_servers:
|
|
|
|
- 8.8.8.8
|
|
|
|
- 8.8.4.4
|
|
|
|
state: absent
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: Get running configuration
|
|
|
|
junos_rpc:
|
|
|
|
rpc: get-configuration
|
|
|
|
provider: "{{ netconf }}"
|
|
|
|
register: config
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "result.changed == true"
|
|
|
|
- "'<name>8.8.8.8</name>' not in config.xml"
|
|
|
|
- "'<name>8.8.4.4</name>' not in config.xml"
|
|
|
|
|
|
|
|
- debug: msg="END junos_system netconf/basic.yaml on connection={{ ansible_connection }}"
|