Select image facts by region (#44965)

This commit is contained in:
Rémy Léone 2018-09-06 17:57:43 +02:00 committed by ansibot
parent 44510448b0
commit eb882e4b01
2 changed files with 41 additions and 3 deletions

View file

@ -22,11 +22,25 @@ author:
- "Yanis Guenane (@Spredzy)" - "Yanis Guenane (@Spredzy)"
- "Remy Leone (@sieben)" - "Remy Leone (@sieben)"
extends_documentation_fragment: scaleway extends_documentation_fragment: scaleway
options:
region:
version_added: "2.8"
description:
- Scaleway compute zone
required: true
choices:
- ams1
- EMEA-NL-EVS
- par1
- EMEA-FR-PAR1
''' '''
EXAMPLES = r''' EXAMPLES = r'''
- name: Gather Scaleway images facts - name: Gather Scaleway images facts
scaleway_image_facts: scaleway_image_facts:
region: par1
''' '''
RETURN = r''' RETURN = r'''
@ -72,8 +86,7 @@ scaleway_image_facts:
from ansible.module_utils.basic import AnsibleModule from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils.scaleway import ( from ansible.module_utils.scaleway import (
Scaleway, ScalewayException, scaleway_argument_spec Scaleway, ScalewayException, scaleway_argument_spec, SCALEWAY_LOCATION)
)
class ScalewayImageFacts(Scaleway): class ScalewayImageFacts(Scaleway):
@ -82,10 +95,17 @@ class ScalewayImageFacts(Scaleway):
super(ScalewayImageFacts, self).__init__(module) super(ScalewayImageFacts, self).__init__(module)
self.name = 'images' self.name = 'images'
region = module.params["region"]
self.module.params['api_url'] = SCALEWAY_LOCATION[region]["api_endpoint"]
def main(): def main():
argument_spec = scaleway_argument_spec()
argument_spec.update(dict(
region=dict(required=True, choices=SCALEWAY_LOCATION.keys()),
))
module = AnsibleModule( module = AnsibleModule(
argument_spec=scaleway_argument_spec(), argument_spec=argument_spec,
supports_check_mode=True, supports_check_mode=True,
) )

View file

@ -1,5 +1,9 @@
# SCW_API_KEY='XXX' ansible-playbook ./test/legacy/scaleway.yml --tags test_scaleway_image_facts
- name: Get image informations and register it in a variable - name: Get image informations and register it in a variable
scaleway_image_facts: scaleway_image_facts:
region: par1
register: images register: images
- name: Display images variable - name: Display images variable
@ -10,3 +14,17 @@
assert: assert:
that: that:
- images is success - images is success
- name: Get image informations from ams1 and register it in a variable
scaleway_image_facts:
region: ams1
register: images_ams1
- name: Display images variable from ams1
debug:
var: images_ams1
- name: Ensure retrieval of images facts is success
assert:
that:
- images_ams1 is success