Add backup filename and dir path option for config network modules (#50801)

* Add configurable backup path option for network config modules

Fixes #50283
Fixes #32724

*  Add back_options in network config module argspec
*  Handle backup path options in network action plugin

* Fix review comments

* Add integration tests

* Update changelog
This commit is contained in:
Ganesh Nalawade
2019-01-24 09:36:16 +05:30
committed by GitHub
parent fe8412128b
commit 70bf9b9919
41 changed files with 2228 additions and 119 deletions

View File

@@ -1,5 +1,5 @@
---
- debug: msg="START cli/backup.yaml on connection={{ ansible_connection }}"
- debug: msg="START cli/cli_backup.yaml on connection={{ ansible_connection }}"
- name: setup
ios_config:
@@ -46,4 +46,80 @@
that:
- "backup_files.files is defined"
- debug: msg="END cli/backup.yaml on connection={{ ansible_connection }}"
- name: delete configurable backup file path
file:
path: "{{ item }}"
state: absent
with_items:
- "{{ role_path }}/backup_test_dir/"
- "{{ role_path }}/backup/backup.cfg"
- name: take configuration backup in custom filename and directory path
ios_config:
backup: yes
backup_options:
filename: backup.cfg
dir_path: "{{ role_path }}/backup_test_dir/{{ inventory_hostname_short }}"
become: yes
register: result
- assert:
that:
- "result.changed == true"
- name: check if the backup file-1 exist
find:
paths: "{{ role_path }}/backup_test_dir/{{ inventory_hostname_short }}/backup.cfg"
register: backup_file
connection: local
- assert:
that:
- "backup_file.files is defined"
- name: take configuration backup in custom filename
ios_config:
backup: yes
backup_options:
filename: backup.cfg
become: yes
register: result
- assert:
that:
- "result.changed == true"
- name: check if the backup file-2 exist
find:
paths: "{{ role_path }}/backup/backup.cfg"
register: backup_file
connection: local
- assert:
that:
- "backup_file.files is defined"
- name: take configuration backup in custom path and default filename
ios_config:
backup: yes
backup_options:
dir_path: "{{ role_path }}/backup_test_dir/{{ inventory_hostname_short }}"
become: yes
register: result
- assert:
that:
- "result.changed == true"
- name: check if the backup file-3 exist
find:
paths: "{{ role_path }}/backup_test_dir/{{ inventory_hostname_short }}"
pattern: "{{ inventory_hostname_short }}_config*"
register: backup_file
connection: local
- assert:
that:
- "backup_file.files is defined"
- debug: msg="END cli/cli_backup.yaml on connection={{ ansible_connection }}"