mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
don't retrieve config in running_config when config is provided for diff (#41400)
* don't retrieve config in running_config when config is provided for diff Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> * fix for eos, nxos Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> * add integration test Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
This commit is contained in:
parent
a4f49ed648
commit
8ab0d654f3
9 changed files with 106 additions and 6 deletions
|
@ -410,7 +410,7 @@ def main():
|
|||
|
||||
result['changed'] = True
|
||||
|
||||
running_config = None
|
||||
running_config = module.params['running_config']
|
||||
startup_config = None
|
||||
|
||||
diff_ignore_lines = module.params['diff_ignore_lines']
|
||||
|
@ -435,7 +435,7 @@ def main():
|
|||
output = run_commands(module, {'command': 'show running-config', 'output': 'text'})
|
||||
contents = output[0]
|
||||
else:
|
||||
contents = running_config.config_text
|
||||
contents = running_config
|
||||
|
||||
# recreate the object in order to process diff_ignore_lines
|
||||
running_config = NetworkConfig(indent=1, contents=contents, ignore_lines=diff_ignore_lines)
|
||||
|
|
|
@ -447,7 +447,7 @@ def main():
|
|||
|
||||
result['changed'] = True
|
||||
|
||||
running_config = None
|
||||
running_config = module.params['running_config']
|
||||
startup_config = None
|
||||
|
||||
diff_ignore_lines = module.params['diff_ignore_lines']
|
||||
|
@ -470,7 +470,7 @@ def main():
|
|||
output = run_commands(module, 'show running-config')
|
||||
contents = output[0]
|
||||
else:
|
||||
contents = running_config.config_text
|
||||
contents = running_config
|
||||
|
||||
# recreate the object in order to process diff_ignore_lines
|
||||
running_config = NetworkConfig(indent=1, contents=contents, ignore_lines=diff_ignore_lines)
|
||||
|
|
|
@ -444,7 +444,7 @@ def main():
|
|||
|
||||
result['changed'] = True
|
||||
|
||||
running_config = None
|
||||
running_config = module.params['running_config']
|
||||
startup_config = None
|
||||
|
||||
diff_ignore_lines = module.params['diff_ignore_lines']
|
||||
|
@ -467,7 +467,7 @@ def main():
|
|||
output = execute_show_commands(module, 'show running-config')
|
||||
contents = output[0]
|
||||
else:
|
||||
contents = running_config.config_text
|
||||
contents = running_config
|
||||
|
||||
# recreate the object in order to process diff_ignore_lines
|
||||
running_config = NetworkConfig(indent=1, contents=contents, ignore_lines=diff_ignore_lines)
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
version 15.6
|
||||
service timestamps debug datetime msec
|
||||
service timestamps log datetime msec
|
||||
no service password-encryption
|
||||
!
|
||||
hostname an-ios-01.ansible.com
|
||||
!
|
||||
boot-start-marker
|
||||
boot-end-marker
|
|
@ -0,0 +1,9 @@
|
|||
version 15.6
|
||||
service timestamps debug datetime msec
|
||||
service timestamps log datetime msec
|
||||
no service password-encryption
|
||||
!
|
||||
hostname an-ios-02.ansible.com
|
||||
!
|
||||
boot-start-marker
|
||||
boot-end-marker
|
29
test/integration/targets/ios_config/tests/cli/diff.yaml
Normal file
29
test/integration/targets/ios_config/tests/cli/diff.yaml
Normal file
|
@ -0,0 +1,29 @@
|
|||
---
|
||||
- debug: msg="START cli/diff.yaml on connection={{ ansible_connection }}"
|
||||
|
||||
- name: ios_config diff against retrieved config
|
||||
ios_config:
|
||||
diff_against: intended
|
||||
intended_config: "{{ lookup('file', '{{ role_path }}/templates/basic/intended_running_config') }}"
|
||||
diff: true
|
||||
register: result
|
||||
|
||||
- assert:
|
||||
that:
|
||||
- "'hostname an-ios-02.ansible.com' in result['diff']['after']"
|
||||
- "'hostname {{ shorter_hostname }}' in result['diff']['before']"
|
||||
|
||||
- name: ios_config diff against provided running_config
|
||||
ios_config:
|
||||
diff_against: intended
|
||||
intended_config: "{{ lookup('file', '{{ role_path }}/templates/basic/intended_running_config') }}"
|
||||
running_config: "{{ lookup('file', '{{ role_path }}/templates/basic/base_running_config') }}"
|
||||
diff: true
|
||||
register: result
|
||||
|
||||
- assert:
|
||||
that:
|
||||
- "'hostname an-ios-02.ansible.com' in result['diff']['after']"
|
||||
- "'hostname an-ios-01.ansible.com' in result['diff']['before']"
|
||||
|
||||
- debug: msg="END cli/diff.yaml on connection={{ ansible_connection }}"
|
|
@ -0,0 +1,10 @@
|
|||
version 7.0(3)I6(1)
|
||||
hostname an-nxos9k-02.ansible.com
|
||||
vdc an-nxos9k-02 id 1
|
||||
limit-resource vlan minimum 16 maximum 4094
|
||||
limit-resource vrf minimum 2 maximum 4096
|
||||
limit-resource port-channel minimum 0 maximum 511
|
||||
limit-resource u4route-mem minimum 96 maximum 96
|
||||
limit-resource u6route-mem minimum 24 maximum 24
|
||||
limit-resource m4route-mem minimum 58 maximum 58
|
||||
limit-resource m6route-mem minimum 8 maximum 8
|
|
@ -0,0 +1,10 @@
|
|||
version 7.0(3)I6(1)
|
||||
hostname an-nxos9k-01.ansible.com
|
||||
vdc an-nxos9k-01 id 1
|
||||
limit-resource vlan minimum 16 maximum 4094
|
||||
limit-resource vrf minimum 2 maximum 4096
|
||||
limit-resource port-channel minimum 0 maximum 511
|
||||
limit-resource u4route-mem minimum 96 maximum 96
|
||||
limit-resource u6route-mem minimum 24 maximum 24
|
||||
limit-resource m4route-mem minimum 58 maximum 58
|
||||
limit-resource m6route-mem minimum 8 maximum 8
|
33
test/integration/targets/nxos_config/tests/cli/diff.yaml
Normal file
33
test/integration/targets/nxos_config/tests/cli/diff.yaml
Normal file
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
- debug: msg="START cli/diff.yaml on connection={{ ansible_connection }}"
|
||||
|
||||
- name: setup hostname
|
||||
nxos_config:
|
||||
lines: hostname switch
|
||||
|
||||
- name: nxos_config diff against retrieved config
|
||||
nxos_config:
|
||||
diff_against: intended
|
||||
intended_config: "{{ lookup('file', '{{ role_path }}/templates/basic/intended_running_config') }}"
|
||||
diff: true
|
||||
register: result
|
||||
|
||||
- assert:
|
||||
that:
|
||||
- "'hostname an-nxos9k-01.ansible.com' in result['diff']['after']"
|
||||
- "'hostname switch' in result['diff']['before']"
|
||||
|
||||
- name: nxos_config diff against provided running_config
|
||||
nxos_config:
|
||||
diff_against: intended
|
||||
intended_config: "{{ lookup('file', '{{ role_path }}/templates/basic/intended_running_config') }}"
|
||||
running_config: "{{ lookup('file', '{{ role_path }}/templates/basic/base_running_config') }}"
|
||||
diff: true
|
||||
register: result
|
||||
|
||||
- assert:
|
||||
that:
|
||||
- "'hostname an-nxos9k-01.ansible.com' in result['diff']['after']"
|
||||
- "'hostname an-nxos9k-02.ansible.com' in result['diff']['before']"
|
||||
|
||||
- debug: msg="END cli/diff.yaml on connection={{ ansible_connection }}"
|
Loading…
Reference in a new issue