From 6ab07d1a7423a510874f3b3564a4e62a726ddeeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20L=C3=A9one?= Date: Sun, 7 Oct 2018 12:08:25 +0200 Subject: [PATCH] Add region to snapshots facts (#46213) --- .../cloud/scaleway/scaleway_snapshot_facts.py | 27 +++++++++++++++++-- .../scaleway_snapshot_facts/tasks/main.yml | 17 ++++++++++++ 2 files changed, 42 insertions(+), 2 deletions(-) diff --git a/lib/ansible/modules/cloud/scaleway/scaleway_snapshot_facts.py b/lib/ansible/modules/cloud/scaleway/scaleway_snapshot_facts.py index 274539e4ab5..81449ad94cd 100644 --- a/lib/ansible/modules/cloud/scaleway/scaleway_snapshot_facts.py +++ b/lib/ansible/modules/cloud/scaleway/scaleway_snapshot_facts.py @@ -22,11 +22,23 @@ author: - "Yanis Guenane (@Spredzy)" - "Remy Leone (@sieben)" extends_documentation_fragment: scaleway +options: + region: + version_added: "2.8" + description: + - Scaleway region to use (for example par1). + required: true + choices: + - ams1 + - EMEA-NL-EVS + - par1 + - EMEA-FR-PAR1 ''' EXAMPLES = r''' - name: Gather Scaleway snapshots facts scaleway_snapshot_facts: + region: par1 ''' RETURN = r''' @@ -56,7 +68,10 @@ scaleway_snapshot_facts: from ansible.module_utils.basic import AnsibleModule from ansible.module_utils.scaleway import ( - Scaleway, ScalewayException, scaleway_argument_spec + Scaleway, + ScalewayException, + scaleway_argument_spec, + SCALEWAY_LOCATION ) @@ -66,10 +81,18 @@ class ScalewaySnapshotFacts(Scaleway): super(ScalewaySnapshotFacts, self).__init__(module) self.name = 'snapshots' + region = module.params["region"] + self.module.params['api_url'] = SCALEWAY_LOCATION[region]["api_endpoint"] + def main(): + argument_spec = scaleway_argument_spec() + argument_spec.update(dict( + region=dict(required=True, choices=SCALEWAY_LOCATION.keys()), + )) + module = AnsibleModule( - argument_spec=scaleway_argument_spec(), + argument_spec=argument_spec, supports_check_mode=True, ) diff --git a/test/legacy/roles/scaleway_snapshot_facts/tasks/main.yml b/test/legacy/roles/scaleway_snapshot_facts/tasks/main.yml index 17929cc56cf..bf7c2eb4dd5 100644 --- a/test/legacy/roles/scaleway_snapshot_facts/tasks/main.yml +++ b/test/legacy/roles/scaleway_snapshot_facts/tasks/main.yml @@ -1,5 +1,8 @@ +# SCW_API_KEY='XXX' ansible-playbook ./test/legacy/scaleway.yml --tags test_scaleway_snapshot_facts + - name: Get snapshot informations and register it in a variable scaleway_snapshot_facts: + region: par1 register: snapshots - name: Display snapshots variable @@ -10,3 +13,17 @@ assert: that: - snapshots is success + +- name: Get snapshot informations and register it in a variable (AMS1) + scaleway_snapshot_facts: + region: ams1 + register: ams1_snapshots + +- name: Display snapshots variable (AMS1) + debug: + var: ams1_snapshots + +- name: Ensure retrieval of snapshots facts is success (AMS1) + assert: + that: + - ams1_snapshots is success