diff --git a/plugins/module_utils/linode_common.py b/plugins/module_utils/linode_common.py index b05dfc95..bfa1d5b2 100644 --- a/plugins/module_utils/linode_common.py +++ b/plugins/module_utils/linode_common.py @@ -104,7 +104,7 @@ RETRY_STATUSES = {408, 429, 502} -class LinodeModuleBase: +class LinodeModuleBase: # pylint: disable=too-many-positional-arguments """A base for all Linode resource modules.""" def __init__( diff --git a/plugins/module_utils/linode_common_info.py b/plugins/module_utils/linode_common_info.py index ce5a2a0c..33dc0958 100644 --- a/plugins/module_utils/linode_common_info.py +++ b/plugins/module_utils/linode_common_info.py @@ -114,6 +114,7 @@ class InfoModule(LinodeModuleBase): """A common module for listing API resources given a set of filters.""" def __init__( + # pylint: disable=too-many-positional-arguments self, primary_result: InfoModuleResult, secondary_results: List[InfoModuleResult] = None, diff --git a/plugins/module_utils/linode_common_list.py b/plugins/module_utils/linode_common_list.py index 7db6a4fb..1c7d429c 100644 --- a/plugins/module_utils/linode_common_list.py +++ b/plugins/module_utils/linode_common_list.py @@ -42,7 +42,7 @@ class ListModuleParam: class ListModule( LinodeModuleBase -): # pylint: disable=too-many-instance-attributes +): # pylint: disable=too-many-instance-attributes,too-many-positional-arguments """A common module for listing API resources given a set of filters.""" def __init__( diff --git a/tests/integration/targets/image_basic/tasks/main.yaml b/tests/integration/targets/image_basic/tasks/main.yaml index f0b72f18..501eb21e 100644 --- a/tests/integration/targets/image_basic/tasks/main.yaml +++ b/tests/integration/targets/image_basic/tasks/main.yaml @@ -3,10 +3,17 @@ - set_fact: r: "{{ 1000000000 | random }}" + - name: List regions + linode.cloud.region_list: {} + register: all_regions + + - set_fact: + capable_regions: '{{ (all_regions.regions | selectattr("capabilities", "search", "Object Storage") | selectattr("site_type", "equalto", "core") | map(attribute="id") | list) }}' + - name: Create an instance to image linode.cloud.instance: label: 'ansible-test-{{ r }}' - region: us-east + region: '{{ capable_regions[1] }}' type: g6-standard-1 image: linode/alpine3.19 state: present @@ -83,8 +90,8 @@ tags: - 'test' replica_regions: - - 'us-east' - - 'eu-west' + - '{{ capable_regions[0] }}' + - '{{ capable_regions[1] }}' wait_for_replications: yes wait_timeout: 1200 state: present @@ -96,7 +103,8 @@ - image_replicate.changed - image_replicate.image.id == image_create.image.id - image_replicate.image.regions | length == 2 - - image_replicate.image.regions[0].region == 'us-east' + - image_replicate.image.regions[0].region == capable_regions[1] + - image_replicate.image.regions[1].region == capable_regions[0] - image_replicate.image.regions[0].status == 'available' - image_replicate.image.regions[1].status == 'available' @@ -108,7 +116,7 @@ tags: - 'test' replica_regions: - - 'eu-west' + - '{{ capable_regions[0] }}' wait_for_replications: yes wait_timeout: 1200 state: present @@ -119,7 +127,7 @@ that: - image_replicate.changed - image_replicate.image.regions | length == 1 - - image_replicate.image.regions[0].region == 'eu-west' + - image_replicate.image.regions[0].region == capable_regions[0] - image_replicate.image.regions[0].status == 'available' - name: Overwrite the image