summaryrefslogtreecommitdiffstats
path: root/test/integration/targets/ios_config
diff options
context:
space:
mode:
authorGanesh Nalawade <ganesh634@gmail.com>2019-01-24 05:06:16 +0100
committerGitHub <noreply@github.com>2019-01-24 05:06:16 +0100
commit70bf9b9919cd633938419f530ebfa8ec881dedfc (patch)
tree5aa434cd74cc44c0566554e09a730ac557cdc5fd /test/integration/targets/ios_config
parentfacts: solaris: introduce distribution_major version detection for Solaris (#... (diff)
downloadansible-70bf9b9919cd633938419f530ebfa8ec881dedfc.tar.xz
ansible-70bf9b9919cd633938419f530ebfa8ec881dedfc.zip
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
Diffstat (limited to 'test/integration/targets/ios_config')
-rw-r--r--test/integration/targets/ios_config/tests/cli/backup.yaml80
-rw-r--r--test/integration/targets/ios_config/tests/cli_config/cli_backup.yaml113
2 files changed, 191 insertions, 2 deletions
diff --git a/test/integration/targets/ios_config/tests/cli/backup.yaml b/test/integration/targets/ios_config/tests/cli/backup.yaml
index 15e0cb3bd6..0921d0086b 100644
--- a/test/integration/targets/ios_config/tests/cli/backup.yaml
+++ b/test/integration/targets/ios_config/tests/cli/backup.yaml
@@ -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 }}"
diff --git a/test/integration/targets/ios_config/tests/cli_config/cli_backup.yaml b/test/integration/targets/ios_config/tests/cli_config/cli_backup.yaml
new file mode 100644
index 0000000000..a431c01fde
--- /dev/null
+++ b/test/integration/targets/ios_config/tests/cli_config/cli_backup.yaml
@@ -0,0 +1,113 @@
+- debug: msg="END cli_config/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: collect any backup files
+ find:
+ paths: "{{ role_path }}/backup"
+ pattern: "{{ inventory_hostname_short }}_config*"
+ register: backup_files
+ connection: local
+
+- name: delete backup files
+ file:
+ path: "{{ item.path }}"
+ state: absent
+ with_items: "{{backup_files.files|default([])}}"
+
+- name: take config backup
+ cli_config:
+ backup: yes
+ become: yes
+ register: result
+
+- assert:
+ that:
+ - "result.changed == true"
+
+- name: collect any backup files
+ find:
+ paths: "{{ role_path }}/backup"
+ pattern: "{{ inventory_hostname_short }}_config*"
+ register: backup_files
+ connection: local
+
+- assert:
+ that:
+ - "backup_files.files is defined"
+
+- name: take configuration backup in custom filename and directory path
+ cli_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
+ cli_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
+ cli_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_config/backup.yaml on connection={{ ansible_connection }}"