Scaleway Database Backup : Create new module (#741) (#909)

* Scaleway Database Backup : Create new module

* Add changelog

* Fix typo

* Remove module duplicate

* Fix typo

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Remove changelog

* Improve doc

* Improve documentation

* Improve parameters checking

* Fix blank space

* Change result name (data to metadata)

See https://github.com/ansible-collections/community.general/pull/741#discussion_r468537460

* Fix doc typo

* Update plugins/modules/cloud/scaleway/scaleway_database_backup.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* States explanations

https://github.com/ansible-collections/community.general/pull/741/files/03f58894ff6d7a4432a06eaa4052dc882d33c414#r470845287

* Fix documentation typo

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 8a16b51202)

Co-authored-by: Guillaume RODRIGUEZ <guiguidu31300@gmail.com>
This commit is contained in:
patchback[bot] 2020-09-17 19:24:11 +02:00 committed by GitHub
parent 8bd8ccd974
commit 496218b6e6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 606 additions and 0 deletions

View file

@ -0,0 +1,2 @@
cloud/scaleway
unsupported

View file

@ -0,0 +1,5 @@
---
scaleway_name: scaleway_database_backup_test
scaleway_region: fr-par
scaleway_database_name: scaleway_database_test
scaleway_instance_id:

View file

@ -0,0 +1,228 @@
- name: Create a backup (Check)
check_mode: yes
scaleway_database_backup:
name: '{{ scaleway_name }}'
state: present
region: '{{ scaleway_region }}'
database_name: '{{ scaleway_database_name }}'
instance_id: '{{ scaleway_instance_id }}'
register: backup_creation_check_task
- debug: var=backup_creation_check_task
- assert:
that:
- backup_creation_check_task is success
- backup_creation_check_task is changed
- name: Create a backup
scaleway_database_backup:
name: '{{ scaleway_name }}'
state: present
region: '{{ scaleway_region }}'
database_name: '{{ scaleway_database_name }}'
instance_id: '{{ scaleway_instance_id }}'
wait: true
register: backup_creation_task
- debug: var=backup_creation_task
- assert:
that:
- backup_creation_task is success
- backup_creation_task is changed
- name: Create a backup (Confirmation)
scaleway_database_backup:
name: '{{ scaleway_name }}'
state: present
region: '{{ scaleway_region }}'
database_name: '{{ scaleway_database_name }}'
instance_id: '{{ scaleway_instance_id }}'
id: '{{ backup_creation_task.metadata.id }}'
register: backup_creation_confirmation_task
- debug: var=backup_creation_confirmation_task
- assert:
that:
- backup_creation_confirmation_task is success
- backup_creation_confirmation_task is not changed
- name: Patch backup name (Check)
check_mode: yes
scaleway_database_backup:
name: '{{ scaleway_name }}-changed'
state: present
region: '{{ scaleway_region }}'
database_name: '{{ scaleway_database_name }}'
instance_id: '{{ scaleway_instance_id }}'
id: '{{ backup_creation_task.metadata.id }}'
register: backup_patching_check_task
- debug: var=backup_patching_check_task
- assert:
that:
- backup_patching_check_task is success
- backup_patching_check_task is changed
- name: Patch backup name
scaleway_database_backup:
name: '{{ scaleway_name }}-changed'
state: present
region: '{{ scaleway_region }}'
database_name: '{{ scaleway_database_name }}'
instance_id: '{{ scaleway_instance_id }}'
id: '{{ backup_creation_task.metadata.id }}'
register: backup_patching_task
- debug: var=backup_patching_task
- assert:
that:
- backup_patching_task is success
- backup_patching_task is changed
- name: Patch backup name (Confirmation)
scaleway_database_backup:
name: '{{ scaleway_name }}-changed'
state: present
region: '{{ scaleway_region }}'
database_name: '{{ scaleway_database_name }}'
instance_id: '{{ scaleway_instance_id }}'
id: '{{ backup_creation_task.metadata.id }}'
register: backup_patching_confirmation_task
- debug: var=backup_patching_confirmation_task
- assert:
that:
- backup_patching_confirmation_task is success
- backup_patching_confirmation_task is not changed
- name: Export backup (Check)
check_mode: yes
scaleway_database_backup:
id: '{{ backup_creation_task.metadata.id }}'
state: exported
region: '{{ scaleway_region }}'
register: backup_export_check_task
- debug: var=backup_export_check_task
- assert:
that:
- backup_export_check_task is success
- backup_export_check_task is changed
- name: Export backup
scaleway_database_backup:
id: '{{ backup_creation_task.metadata.id }}'
state: exported
region: '{{ scaleway_region }}'
wait: true
register: backup_export_task
- debug: var=backup_export_task
- assert:
that:
- backup_export_task is success
- backup_export_task is changed
- backup_export_task.metadata.download_url != ""
- name: Export backup (Confirmation)
scaleway_database_backup:
id: '{{ backup_creation_task.metadata.id }}'
state: exported
region: '{{ scaleway_region }}'
register: backup_export_confirmation_task
- debug: var=backup_export_confirmation_task
- assert:
that:
- backup_export_confirmation_task is success
- backup_export_confirmation_task is not changed
- backup_export_confirmation_task.metadata.download_url != ""
- name: Restore backup (Check)
check_mode: yes
scaleway_database_backup:
id: '{{ backup_creation_task.metadata.id }}'
state: restored
region: '{{ scaleway_region }}'
database_name: '{{ scaleway_database_name }}'
instance_id: '{{ scaleway_instance_id }}'
register: backup_restore_check_task
- debug: var=backup_restore_check_task
- assert:
that:
- backup_restore_check_task is success
- backup_restore_check_task is changed
- name: Restore backup
scaleway_database_backup:
id: '{{ backup_creation_task.metadata.id }}'
state: restored
region: '{{ scaleway_region }}'
database_name: '{{ scaleway_database_name }}'
instance_id: '{{ scaleway_instance_id }}'
wait: true
register: backup_restore_task
- debug: var=backup_restore_task
- assert:
that:
- backup_restore_task is success
- backup_restore_task is changed
- name: Delete backup (Check)
check_mode: yes
scaleway_database_backup:
id: '{{ backup_creation_task.metadata.id }}'
state: absent
region: '{{ scaleway_region }}'
register: backup_delete_check_task
- debug: var=backup_delete_check_task
- assert:
that:
- backup_delete_check_task is success
- backup_delete_check_task is changed
- name: Delete backup
scaleway_database_backup:
id: '{{ backup_creation_task.metadata.id }}'
state: absent
region: '{{ scaleway_region }}'
register: backup_delete_task
- debug: var=backup_delete_task
- assert:
that:
- backup_delete_task is success
- backup_delete_task is changed
- name: Delete backup (Confirmation)
scaleway_database_backup:
id: '{{ backup_creation_task.metadata.id }}'
state: absent
region: '{{ scaleway_region }}'
register: backup_delete_confirmation_task
- debug: var=backup_delete_confirmation_task
- assert:
that:
- backup_delete_confirmation_task is success
- backup_delete_confirmation_task is not changed