mirror of
https://opendev.org/openstack/ansible-collections-openstack.git
synced 2026-07-28 18:54:29 +00:00
Refactored volume_backup{,_info} modules
Change-Id: I523fd25a11f8f39a346afc17ae1e3a4dfcb8bae2
This commit is contained in:
89
ci/roles/volume_backup/tasks/main.yml
Normal file
89
ci/roles/volume_backup/tasks/main.yml
Normal file
@@ -0,0 +1,89 @@
|
||||
---
|
||||
- name: Get existing backups
|
||||
openstack.cloud.volume_backup_info:
|
||||
cloud: "{{ cloud }}"
|
||||
register: info
|
||||
|
||||
- name: Assert volume_backup_info
|
||||
assert:
|
||||
that:
|
||||
- info.volume_backups|length == 0
|
||||
|
||||
- name: Get non-existing backup
|
||||
openstack.cloud.volume_backup_info:
|
||||
cloud: "{{ cloud }}"
|
||||
name: non-existing-backup
|
||||
register: info
|
||||
|
||||
- name: Assert volume_backup_info
|
||||
assert:
|
||||
that:
|
||||
- info.volume_backups|length == 0
|
||||
|
||||
- name: Create volume
|
||||
openstack.cloud.volume:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
size: 1
|
||||
name: ansible_volume
|
||||
register: volume
|
||||
|
||||
- name: Create volume backup
|
||||
openstack.cloud.volume_backup:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
name: ansible_volume_backup
|
||||
volume: ansible_volume
|
||||
# TODO: Uncomment code when https://storyboard.openstack.org/#!/story/2010395 has been solved.
|
||||
#metadata:
|
||||
# key1: value1
|
||||
# key2: value2
|
||||
register: backup
|
||||
|
||||
- name: Assert volume_backup
|
||||
assert:
|
||||
that:
|
||||
- backup.volume_backup.name == "ansible_volume_backup"
|
||||
- backup.volume_backup.volume_id == volume.volume.id
|
||||
# TODO: Uncomment code when https://storyboard.openstack.org/#!/story/2010395 has been solved.
|
||||
#- backup.volume_backup.metadata.keys()|sort == ['key1', 'key2']
|
||||
#- backup.volume_backup.metadata['key1'] == 'value1'
|
||||
#- backup.volume_backup.metadata['key2'] == 'value2'
|
||||
|
||||
- name: Assert return values of volume_backup module
|
||||
assert:
|
||||
that:
|
||||
# allow new fields to be introduced but prevent fields from being removed
|
||||
- expected_fields|difference(backup.volume_backup.keys())|length == 0
|
||||
|
||||
- name: Get backup info
|
||||
openstack.cloud.volume_backup_info:
|
||||
cloud: "{{ cloud }}"
|
||||
name: ansible_volume_backup
|
||||
register: info
|
||||
|
||||
- name: Assert volume_backup_info
|
||||
assert:
|
||||
that:
|
||||
- info.volume_backups|length == 1
|
||||
- info.volume_backups[0].id == backup.backup.id
|
||||
- info.volume_backups[0].volume_id == volume.volume.id
|
||||
|
||||
- name: Assert return values of volume_info module
|
||||
assert:
|
||||
that:
|
||||
# allow new fields to be introduced but prevent fields from being removed
|
||||
- expected_fields|difference(info.volume_backups[0].keys())|length == 0
|
||||
|
||||
- name: Delete volume backup
|
||||
openstack.cloud.volume_backup:
|
||||
cloud: "{{ cloud }}"
|
||||
name: ansible_volume_backup
|
||||
wait: false
|
||||
state: absent
|
||||
|
||||
- name: Delete volume
|
||||
openstack.cloud.volume:
|
||||
cloud: "{{ cloud }}"
|
||||
state: absent
|
||||
name: ansible_volume
|
||||
Reference in New Issue
Block a user