diff --git a/.github/workflows/changelog_and_linters.yml b/.github/workflows/changelog_and_linters.yml
index ddd891ea294..4029505d03f 100644
--- a/.github/workflows/changelog_and_linters.yml
+++ b/.github/workflows/changelog_and_linters.yml
@@ -7,4 +7,7 @@ jobs:
changelog:
uses: ansible-network/github_actions/.github/workflows/changelog.yml@main
linters:
- uses: ansible-network/github_actions/.github/workflows/tox-linters.yml@main
+ uses: ansible-network/github_actions/.github/workflows/tox.yml@main
+ with:
+ envname: ""
+ labelname: "lint"
diff --git a/changelogs/fragments/1771-isort.yml b/changelogs/fragments/1771-isort.yml
new file mode 100644
index 00000000000..9ab02e02c86
--- /dev/null
+++ b/changelogs/fragments/1771-isort.yml
@@ -0,0 +1,2 @@
+minor_changes:
+- amazon.aws collection - apply isort code formatting to ensure consistent formatting of code (https://github.com/ansible-collections/amazon.aws/pull/1771).
diff --git a/plugins/action/s3_object.py b/plugins/action/s3_object.py
index bc1882680a9..f78a42fa39b 100644
--- a/plugins/action/s3_object.py
+++ b/plugins/action/s3_object.py
@@ -6,7 +6,10 @@
import os
-from ansible.errors import AnsibleError, AnsibleAction, AnsibleActionFail, AnsibleFileNotFound
+from ansible.errors import AnsibleAction
+from ansible.errors import AnsibleActionFail
+from ansible.errors import AnsibleError
+from ansible.errors import AnsibleFileNotFound
from ansible.module_utils._text import to_text
from ansible.plugins.action import ActionBase
from ansible.utils.vars import merge_hash
diff --git a/plugins/callback/aws_resource_actions.py b/plugins/callback/aws_resource_actions.py
index 7a36bcb3640..5ae1777c059 100644
--- a/plugins/callback/aws_resource_actions.py
+++ b/plugins/callback/aws_resource_actions.py
@@ -33,8 +33,8 @@
#
"""
-from ansible.plugins.callback import CallbackBase
from ansible.module_utils._text import to_native
+from ansible.plugins.callback import CallbackBase
class CallbackModule(CallbackBase):
diff --git a/plugins/inventory/aws_ec2.py b/plugins/inventory/aws_ec2.py
index d146aad987c..1fd47221d26 100644
--- a/plugins/inventory/aws_ec2.py
+++ b/plugins/inventory/aws_ec2.py
@@ -275,13 +275,11 @@
from ansible.module_utils._text import to_text
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.plugin_utils.inventory import AWSInventoryBase
-
# The mappings give an array of keys to get from the filter name to the value
# returned by boto3's EC2 describe_instances method.
diff --git a/plugins/inventory/aws_rds.py b/plugins/inventory/aws_rds.py
index de146628cf6..430329c7e79 100644
--- a/plugins/inventory/aws_rds.py
+++ b/plugins/inventory/aws_rds.py
@@ -87,9 +87,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.plugin_utils.inventory import AWSInventoryBase
diff --git a/plugins/lookup/aws_service_ip_ranges.py b/plugins/lookup/aws_service_ip_ranges.py
index 6c32207ea1e..fab016c7b20 100644
--- a/plugins/lookup/aws_service_ip_ranges.py
+++ b/plugins/lookup/aws_service_ip_ranges.py
@@ -46,12 +46,12 @@
import json
from ansible.errors import AnsibleLookupError
+from ansible.module_utils._text import to_native
from ansible.module_utils.six.moves.urllib.error import HTTPError
from ansible.module_utils.six.moves.urllib.error import URLError
-from ansible.module_utils._text import to_native
from ansible.module_utils.urls import ConnectionError
-from ansible.module_utils.urls import open_url
from ansible.module_utils.urls import SSLValidationError
+from ansible.module_utils.urls import open_url
from ansible.plugins.lookup import LookupBase
diff --git a/plugins/lookup/secretsmanager_secret.py b/plugins/lookup/secretsmanager_secret.py
index 5029eadf508..aec0ce1dc95 100644
--- a/plugins/lookup/secretsmanager_secret.py
+++ b/plugins/lookup/secretsmanager_secret.py
@@ -127,13 +127,12 @@
pass # Handled by AWSLookupBase
from ansible.errors import AnsibleLookupError
-from ansible.module_utils.six import string_types
from ansible.module_utils._text import to_native
+from ansible.module_utils.six import string_types
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_message
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-
from ansible_collections.amazon.aws.plugins.plugin_utils.lookup import AWSLookupBase
diff --git a/plugins/lookup/ssm_parameter.py b/plugins/lookup/ssm_parameter.py
index dad4357a0f8..69ef0fb244f 100644
--- a/plugins/lookup/ssm_parameter.py
+++ b/plugins/lookup/ssm_parameter.py
@@ -132,13 +132,12 @@
from ansible.errors import AnsibleLookupError
from ansible.module_utils._text import to_native
-from ansible.utils.display import Display
from ansible.module_utils.six import string_types
+from ansible.utils.display import Display
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.plugin_utils.lookup import AWSLookupBase
display = Display()
diff --git a/plugins/module_utils/acm.py b/plugins/module_utils/acm.py
index e7fee816f9f..ab3a9f0737d 100644
--- a/plugins/module_utils/acm.py
+++ b/plugins/module_utils/acm.py
@@ -16,7 +16,8 @@
"""
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass
diff --git a/plugins/module_utils/backup.py b/plugins/module_utils/backup.py
index a9e3e6ed01b..907879a8ab5 100644
--- a/plugins/module_utils/backup.py
+++ b/plugins/module_utils/backup.py
@@ -10,6 +10,7 @@
pass # Handled by HAS_BOTO3
from typing import Union
+
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
diff --git a/plugins/module_utils/botocore.py b/plugins/module_utils/botocore.py
index 1c3f2b5dd7e..858e4e5939a 100644
--- a/plugins/module_utils/botocore.py
+++ b/plugins/module_utils/botocore.py
@@ -60,9 +60,9 @@
from ansible.module_utils.six import binary_type
from ansible.module_utils.six import text_type
+from .common import get_collection_info
from .exceptions import AnsibleBotocoreError
from .retries import AWSRetry
-from .common import get_collection_info
MINIMUM_BOTOCORE_VERSION = "1.29.0"
MINIMUM_BOTO3_VERSION = "1.26.0"
@@ -412,6 +412,7 @@ def enable_placebo(session):
pill.record()
if "_ANSIBLE_PLACEBO_REPLAY" in os.environ:
import shutil
+
import placebo
existing_entries = sorted([int(i) for i in os.listdir(os.environ["_ANSIBLE_PLACEBO_REPLAY"])])
diff --git a/plugins/module_utils/cloud.py b/plugins/module_utils/cloud.py
index 86bff20d042..4b2775cb309 100644
--- a/plugins/module_utils/cloud.py
+++ b/plugins/module_utils/cloud.py
@@ -27,9 +27,9 @@
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-import time
import functools
import random
+import time
class BackoffIterator:
diff --git a/plugins/module_utils/cloudfront_facts.py b/plugins/module_utils/cloudfront_facts.py
index c749141b9c2..342adc82d24 100644
--- a/plugins/module_utils/cloudfront_facts.py
+++ b/plugins/module_utils/cloudfront_facts.py
@@ -22,9 +22,10 @@
except ImportError:
pass
+from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
+
from .retries import AWSRetry
from .tagging import boto3_tag_list_to_ansible_dict
-from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
class CloudFrontFactsServiceManagerFailure(Exception):
diff --git a/plugins/module_utils/core.py b/plugins/module_utils/core.py
index e25b1444b51..44fd1d80be8 100644
--- a/plugins/module_utils/core.py
+++ b/plugins/module_utils/core.py
@@ -42,9 +42,9 @@
# Used to live here, moved into ansible_collections.amazon.aws.plugins.module_utils.botocore
from .botocore import HAS_BOTO3 # pylint: disable=unused-import
+from .botocore import get_boto3_client_method_parameters # pylint: disable=unused-import
from .botocore import is_boto3_error_code # pylint: disable=unused-import
from .botocore import is_boto3_error_message # pylint: disable=unused-import
-from .botocore import get_boto3_client_method_parameters # pylint: disable=unused-import
from .botocore import normalize_boto3_result # pylint: disable=unused-import
# Used to live here, moved into ansible_collections.amazon.aws.plugins.module_utils.exceptions
diff --git a/plugins/module_utils/ec2.py b/plugins/module_utils/ec2.py
index de9d91b56a1..8724f474d8e 100644
--- a/plugins/module_utils/ec2.py
+++ b/plugins/module_utils/ec2.py
@@ -40,16 +40,16 @@
import re
from ansible.module_utils.ansible_release import __version__
-from ansible.module_utils.six import string_types
-from ansible.module_utils.six import integer_types
# Used to live here, moved into ansible.module_utils.common.dict_transformations
from ansible.module_utils.common.dict_transformations import _camel_to_snake # pylint: disable=unused-import
from ansible.module_utils.common.dict_transformations import _snake_to_camel # pylint: disable=unused-import
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict # pylint: disable=unused-import
from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict # pylint: disable=unused-import
+from ansible.module_utils.six import integer_types
+from ansible.module_utils.six import string_types
-# Used to live here, moved into # ansible_collections.amazon.aws.plugins.module_utils.arn
+# Used to live here, moved into ansible_collections.amazon.aws.plugins.module_utils.arn
from .arn import is_outpost_arn as is_outposts_arn # pylint: disable=unused-import
# Used to live here, moved into ansible_collections.amazon.aws.plugins.module_utils.botocore
@@ -57,9 +57,8 @@
from .botocore import boto3_conn # pylint: disable=unused-import
from .botocore import boto3_inventory_conn # pylint: disable=unused-import
from .botocore import boto_exception # pylint: disable=unused-import
-from .botocore import get_aws_region # pylint: disable=unused-import
from .botocore import get_aws_connection_info # pylint: disable=unused-import
-
+from .botocore import get_aws_region # pylint: disable=unused-import
from .botocore import paginated_query_with_retries
# Used to live here, moved into ansible_collections.amazon.aws.plugins.module_utils.exceptions
@@ -70,6 +69,14 @@
from .modules import _aws_common_argument_spec as aws_common_argument_spec # pylint: disable=unused-import
from .modules import aws_argument_spec as ec2_argument_spec # pylint: disable=unused-import
+# Used to live here, moved into ansible_collections.amazon.aws.plugins.module_utils.policy
+from .policy import _py3cmp as py3cmp # pylint: disable=unused-import
+from .policy import compare_policies # pylint: disable=unused-import
+from .policy import sort_json_policy_dict # pylint: disable=unused-import
+
+# Used to live here, moved into ansible_collections.amazon.aws.plugins.module_utils.retries
+from .retries import AWSRetry # pylint: disable=unused-import
+
# Used to live here, moved into ansible_collections.amazon.aws.plugins.module_utils.tagging
from .tagging import ansible_dict_to_boto3_tag_list # pylint: disable=unused-import
from .tagging import boto3_tag_list_to_ansible_dict # pylint: disable=unused-import
@@ -79,14 +86,6 @@
from .transformation import ansible_dict_to_boto3_filter_list # pylint: disable=unused-import
from .transformation import map_complex_type # pylint: disable=unused-import
-# Used to live here, moved into # ansible_collections.amazon.aws.plugins.module_utils.policy
-from .policy import _py3cmp as py3cmp # pylint: disable=unused-import
-from .policy import compare_policies # pylint: disable=unused-import
-from .policy import sort_json_policy_dict # pylint: disable=unused-import
-
-# Used to live here, moved into # ansible_collections.amazon.aws.plugins.module_utils.retries
-from .retries import AWSRetry # pylint: disable=unused-import
-
try:
import botocore
except ImportError:
diff --git a/plugins/module_utils/elb_utils.py b/plugins/module_utils/elb_utils.py
index b9035c4c28c..8dc5eabfe6e 100644
--- a/plugins/module_utils/elb_utils.py
+++ b/plugins/module_utils/elb_utils.py
@@ -4,7 +4,8 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass
diff --git a/plugins/module_utils/elbv2.py b/plugins/module_utils/elbv2.py
index 62fcd5dfd01..429d5f7ceb5 100644
--- a/plugins/module_utils/elbv2.py
+++ b/plugins/module_utils/elbv2.py
@@ -7,17 +7,18 @@
from copy import deepcopy
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass
-from .retries import AWSRetry
-from .tagging import ansible_dict_to_boto3_tag_list
-from .tagging import boto3_tag_list_to_ansible_dict
from .ec2 import get_ec2_security_group_ids_from_names
from .elb_utils import convert_tg_name_to_arn
from .elb_utils import get_elb
from .elb_utils import get_elb_listener
+from .retries import AWSRetry
+from .tagging import ansible_dict_to_boto3_tag_list
+from .tagging import boto3_tag_list_to_ansible_dict
from .waiters import get_waiter
diff --git a/plugins/module_utils/modules.py b/plugins/module_utils/modules.py
index 0ea953ba8f7..28b29c96ecf 100644
--- a/plugins/module_utils/modules.py
+++ b/plugins/module_utils/modules.py
@@ -48,19 +48,19 @@
# Python 3
from io import StringIO
+from ansible.module_utils._text import to_native
from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils.basic import env_fallback
from ansible.module_utils.basic import missing_required_lib
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible.module_utils._text import to_native
-from .botocore import boto3_conn
from .botocore import boto3_at_least
+from .botocore import boto3_conn
from .botocore import botocore_at_least
from .botocore import check_sdk_version_supported
+from .botocore import gather_sdk_versions
from .botocore import get_aws_connection_info
from .botocore import get_aws_region
-from .botocore import gather_sdk_versions
from .exceptions import AnsibleBotocoreError
from .retries import RetryingBotoClientWrapper
diff --git a/plugins/module_utils/policy.py b/plugins/module_utils/policy.py
index 470bd19bcc5..60b096f84f3 100644
--- a/plugins/module_utils/policy.py
+++ b/plugins/module_utils/policy.py
@@ -30,12 +30,11 @@
from functools import cmp_to_key
+import ansible.module_utils.common.warnings as ansible_warnings
from ansible.module_utils._text import to_text
from ansible.module_utils.six import binary_type
from ansible.module_utils.six import string_types
-import ansible.module_utils.common.warnings as ansible_warnings
-
def _canonify_root_arn(arn):
# There are multiple ways to specifiy delegation of access to an account
diff --git a/plugins/module_utils/rds.py b/plugins/module_utils/rds.py
index 5141b5ad62d..85cde2e4e10 100644
--- a/plugins/module_utils/rds.py
+++ b/plugins/module_utils/rds.py
@@ -7,7 +7,9 @@
from time import sleep
try:
- from botocore.exceptions import BotoCoreError, ClientError, WaiterError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
+ from botocore.exceptions import WaiterError
except ImportError:
pass
diff --git a/plugins/module_utils/transformation.py b/plugins/module_utils/transformation.py
index c31912ba127..708736fc0e3 100644
--- a/plugins/module_utils/transformation.py
+++ b/plugins/module_utils/transformation.py
@@ -28,8 +28,8 @@
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-from ansible.module_utils.six import string_types
from ansible.module_utils.six import integer_types
+from ansible.module_utils.six import string_types
def ansible_dict_to_boto3_filter_list(filters_dict):
diff --git a/plugins/module_utils/waf.py b/plugins/module_utils/waf.py
index 702822b8e60..5e1cf107174 100644
--- a/plugins/module_utils/waf.py
+++ b/plugins/module_utils/waf.py
@@ -41,7 +41,6 @@
from .retries import AWSRetry
from .waiters import get_waiter
-
MATCH_LOOKUP = {
"byte": {
"method": "byte_match_set",
diff --git a/plugins/module_utils/waiters.py b/plugins/module_utils/waiters.py
index 81c9789617e..51d6b456879 100644
--- a/plugins/module_utils/waiters.py
+++ b/plugins/module_utils/waiters.py
@@ -12,7 +12,6 @@
from ansible_collections.amazon.aws.plugins.module_utils.retries import RetryingBotoClientWrapper
-
ec2_data = {
"version": 2,
"waiters": {
diff --git a/plugins/modules/autoscaling_group.py b/plugins/modules/autoscaling_group.py
index 56389400b28..830470f253f 100644
--- a/plugins/modules/autoscaling_group.py
+++ b/plugins/modules/autoscaling_group.py
@@ -660,13 +660,13 @@
pass # Handled by AnsibleAWSModule
from ansible.module_utils._text import to_native
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
ASG_ATTRIBUTES = (
"AvailabilityZones",
diff --git a/plugins/modules/autoscaling_group_info.py b/plugins/modules/autoscaling_group_info.py
index 8ec36f1bc85..8a39e200b39 100644
--- a/plugins/modules/autoscaling_group_info.py
+++ b/plugins/modules/autoscaling_group_info.py
@@ -247,8 +247,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
def match_asg_tags(tags_to_match, asg):
diff --git a/plugins/modules/aws_az_info.py b/plugins/modules/aws_az_info.py
index 631f39717fa..9bbbb9ffd26 100644
--- a/plugins/modules/aws_az_info.py
+++ b/plugins/modules/aws_az_info.py
@@ -142,7 +142,8 @@
"""
try:
- from botocore.exceptions import ClientError, BotoCoreError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
diff --git a/plugins/modules/aws_caller_info.py b/plugins/modules/aws_caller_info.py
index a6ee1f123a0..0ed62fa0c15 100644
--- a/plugins/modules/aws_caller_info.py
+++ b/plugins/modules/aws_caller_info.py
@@ -57,7 +57,8 @@
"""
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
diff --git a/plugins/modules/backup_plan.py b/plugins/modules/backup_plan.py
index 93bb132f2d1..c8e7db92f7a 100644
--- a/plugins/modules/backup_plan.py
+++ b/plugins/modules/backup_plan.py
@@ -257,13 +257,15 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.backup import get_plan_details
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
try:
- from botocore.exceptions import ClientError, BotoCoreError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
diff --git a/plugins/modules/backup_plan_info.py b/plugins/modules/backup_plan_info.py
index 8f0f0f1d72c..096857d5b1f 100644
--- a/plugins/modules/backup_plan_info.py
+++ b/plugins/modules/backup_plan_info.py
@@ -105,9 +105,9 @@
pass # Handled by AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.backup import get_plan_details
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.backup import get_plan_details
def get_backup_plan_detail(client, module):
diff --git a/plugins/modules/backup_selection.py b/plugins/modules/backup_selection.py
index 01a2d1c4284..c734e2b976a 100644
--- a/plugins/modules/backup_selection.py
+++ b/plugins/modules/backup_selection.py
@@ -223,12 +223,13 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.core import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.backup import get_selection_details
-from ansible_collections.amazon.aws.plugins.module_utils.backup import get_plan_details
-from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
+
+from ansible_collections.amazon.aws.plugins.module_utils.backup import get_plan_details
+from ansible_collections.amazon.aws.plugins.module_utils.backup import get_selection_details
+from ansible_collections.amazon.aws.plugins.module_utils.core import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import AWSRetry
def check_for_update(current_selection, backup_selection_data, iam_role_arn):
diff --git a/plugins/modules/backup_selection_info.py b/plugins/modules/backup_selection_info.py
index e984a8a3991..e9362e2ac08 100644
--- a/plugins/modules/backup_selection_info.py
+++ b/plugins/modules/backup_selection_info.py
@@ -111,10 +111,11 @@
except ImportError:
pass # Handled by AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
+from ansible_collections.amazon.aws.plugins.module_utils.backup import get_selection_details
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.backup import get_selection_details
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
def main():
diff --git a/plugins/modules/backup_tag.py b/plugins/modules/backup_tag.py
index 2781909738a..1a7f0833eb7 100644
--- a/plugins/modules/backup_tag.py
+++ b/plugins/modules/backup_tag.py
@@ -107,13 +107,14 @@
"""
try:
- from botocore.exceptions import ClientError, BotoCoreError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # caught by AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.backup import get_backup_resource_tags
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible_collections.amazon.aws.plugins.module_utils.backup import get_backup_resource_tags
def manage_tags(module, backup_client):
diff --git a/plugins/modules/backup_tag_info.py b/plugins/modules/backup_tag_info.py
index fc581d7e1ea..91bd375edb4 100644
--- a/plugins/modules/backup_tag_info.py
+++ b/plugins/modules/backup_tag_info.py
@@ -42,8 +42,8 @@
type: dict
"""
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.backup import get_backup_resource_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
def main():
diff --git a/plugins/modules/backup_vault.py b/plugins/modules/backup_vault.py
index 5ae309d1059..86d3a213b87 100644
--- a/plugins/modules/backup_vault.py
+++ b/plugins/modules/backup_vault.py
@@ -92,14 +92,16 @@
"""
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.backup import get_backup_resource_tags
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
try:
- from botocore.exceptions import ClientError, BotoCoreError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
diff --git a/plugins/modules/backup_vault_info.py b/plugins/modules/backup_vault_info.py
index 2428b56ca9c..3f186a8830e 100644
--- a/plugins/modules/backup_vault_info.py
+++ b/plugins/modules/backup_vault_info.py
@@ -103,10 +103,10 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible_collections.amazon.aws.plugins.module_utils.backup import get_backup_resource_tags
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.backup import get_backup_resource_tags
def get_backup_vaults(connection, module):
diff --git a/plugins/modules/cloudformation.py b/plugins/modules/cloudformation.py
index f242a6cc5c4..24f4f01f7ab 100644
--- a/plugins/modules/cloudformation.py
+++ b/plugins/modules/cloudformation.py
@@ -333,11 +333,11 @@
from ansible.module_utils._text import to_bytes
from ansible.module_utils._text import to_native
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import boto_exception
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_message
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import boto_exception
# Set a default, mostly for our integration tests. This will be overridden in
# the main() loop to match the parameters we're passed
diff --git a/plugins/modules/cloudformation_info.py b/plugins/modules/cloudformation_info.py
index d525a4dd403..697b39f0071 100644
--- a/plugins/modules/cloudformation_info.py
+++ b/plugins/modules/cloudformation_info.py
@@ -296,8 +296,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_message
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
diff --git a/plugins/modules/cloudtrail.py b/plugins/modules/cloudtrail.py
index 1e49e348c95..597d43f1b00 100644
--- a/plugins/modules/cloudtrail.py
+++ b/plugins/modules/cloudtrail.py
@@ -244,7 +244,8 @@
"""
try:
- from botocore.exceptions import ClientError, BotoCoreError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
diff --git a/plugins/modules/cloudwatch_metric_alarm.py b/plugins/modules/cloudwatch_metric_alarm.py
index f248904d647..a1769e8eaeb 100644
--- a/plugins/modules/cloudwatch_metric_alarm.py
+++ b/plugins/modules/cloudwatch_metric_alarm.py
@@ -303,10 +303,11 @@
from botocore.exceptions import ClientError
except ImportError:
pass # protected by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+
def create_metric_alarm(connection, module, params):
alarms = connection.describe_alarms(AlarmNames=[params["AlarmName"]])
diff --git a/plugins/modules/cloudwatch_metric_alarm_info.py b/plugins/modules/cloudwatch_metric_alarm_info.py
index 454f517926d..4f4d14a328a 100644
--- a/plugins/modules/cloudwatch_metric_alarm_info.py
+++ b/plugins/modules/cloudwatch_metric_alarm_info.py
@@ -227,9 +227,10 @@
except ImportError:
pass # Handled by AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
@AWSRetry.jittered_backoff(retries=10)
diff --git a/plugins/modules/cloudwatchevent_rule.py b/plugins/modules/cloudwatchevent_rule.py
index 8f6f1fe5734..d39f6264e5e 100644
--- a/plugins/modules/cloudwatchevent_rule.py
+++ b/plugins/modules/cloudwatchevent_rule.py
@@ -190,8 +190,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
diff --git a/plugins/modules/cloudwatchlogs_log_group.py b/plugins/modules/cloudwatchlogs_log_group.py
index c0a1c6dc1ed..e24acfd2965 100644
--- a/plugins/modules/cloudwatchlogs_log_group.py
+++ b/plugins/modules/cloudwatchlogs_log_group.py
@@ -134,8 +134,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
diff --git a/plugins/modules/cloudwatchlogs_log_group_info.py b/plugins/modules/cloudwatchlogs_log_group_info.py
index 8f313d0e41f..0cfe22e22e0 100644
--- a/plugins/modules/cloudwatchlogs_log_group_info.py
+++ b/plugins/modules/cloudwatchlogs_log_group_info.py
@@ -80,8 +80,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
def describe_log_group(client, log_group_name, module):
diff --git a/plugins/modules/ec2_ami.py b/plugins/modules/ec2_ami.py
index 000469ee6a3..81bcae91439 100644
--- a/plugins/modules/ec2_ami.py
+++ b/plugins/modules/ec2_ami.py
@@ -427,11 +427,11 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import add_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
diff --git a/plugins/modules/ec2_ami_info.py b/plugins/modules/ec2_ami_info.py
index 29610233bcb..2c60f590996 100644
--- a/plugins/modules/ec2_ami_info.py
+++ b/plugins/modules/ec2_ami_info.py
@@ -200,17 +200,18 @@
"""
try:
- from botocore.exceptions import ClientError, BotoCoreError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
class AmiInfoFailure(Exception):
diff --git a/plugins/modules/ec2_eip.py b/plugins/modules/ec2_eip.py
index 33ec3ebaea1..87f67bdd546 100644
--- a/plugins/modules/ec2_eip.py
+++ b/plugins/modules/ec2_eip.py
@@ -221,11 +221,11 @@
except ImportError:
pass # caught by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
class EipError(Exception):
diff --git a/plugins/modules/ec2_eip_info.py b/plugins/modules/ec2_eip_info.py
index 846ab106696..f9c7858f509 100644
--- a/plugins/modules/ec2_eip_info.py
+++ b/plugins/modules/ec2_eip_info.py
@@ -95,7 +95,8 @@
"""
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # caught by imported AnsibleAWSModule
@@ -103,8 +104,8 @@
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
def get_eips_details(module):
diff --git a/plugins/modules/ec2_eni.py b/plugins/modules/ec2_eni.py
index 1d7e774fa46..bf8e76a2bcb 100644
--- a/plugins/modules/ec2_eni.py
+++ b/plugins/modules/ec2_eni.py
@@ -282,13 +282,13 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import get_ec2_security_group_ids_from_names
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
diff --git a/plugins/modules/ec2_eni_info.py b/plugins/modules/ec2_eni_info.py
index 33799c589fd..5ef36b2581d 100644
--- a/plugins/modules/ec2_eni_info.py
+++ b/plugins/modules/ec2_eni_info.py
@@ -196,11 +196,11 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
def build_request_args(eni_id, filters):
diff --git a/plugins/modules/ec2_instance.py b/plugins/modules/ec2_instance.py
index eb3dbad6465..a857ee58c4f 100644
--- a/plugins/modules/ec2_instance.py
+++ b/plugins/modules/ec2_instance.py
@@ -960,9 +960,9 @@
sample: vpc-0011223344
"""
-from collections import namedtuple
import time
import uuid
+from collections import namedtuple
try:
import botocore
diff --git a/plugins/modules/ec2_instance_info.py b/plugins/modules/ec2_instance_info.py
index 6977edb9700..8a9a0b48ec3 100644
--- a/plugins/modules/ec2_instance_info.py
+++ b/plugins/modules/ec2_instance_info.py
@@ -558,8 +558,8 @@
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
@AWSRetry.jittered_backoff()
diff --git a/plugins/modules/ec2_key.py b/plugins/modules/ec2_key.py
index 9084e3b6f5f..ea4d7f7e4f2 100644
--- a/plugins/modules/ec2_key.py
+++ b/plugins/modules/ec2_key.py
@@ -161,8 +161,8 @@
version_added: 3.1.0
"""
-import uuid
import os
+import uuid
try:
import botocore
@@ -171,13 +171,13 @@
from ansible.module_utils._text import to_bytes
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
class Ec2KeyFailure(Exception):
diff --git a/plugins/modules/ec2_key_info.py b/plugins/modules/ec2_key_info.py
index 104ae321b87..f9ca60d6cb6 100644
--- a/plugins/modules/ec2_key_info.py
+++ b/plugins/modules/ec2_key_info.py
@@ -115,11 +115,11 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
def list_ec2_key_pairs(connection, module):
diff --git a/plugins/modules/ec2_metadata_facts.py b/plugins/modules/ec2_metadata_facts.py
index 9d043bf218d..26ecaad0adb 100644
--- a/plugins/modules/ec2_metadata_facts.py
+++ b/plugins/modules/ec2_metadata_facts.py
@@ -440,10 +440,10 @@
import time
import zlib
-from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils._text import to_text
-from ansible.module_utils.urls import fetch_url
+from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils.six.moves.urllib.parse import quote
+from ansible.module_utils.urls import fetch_url
socket.setdefaulttimeout(5)
diff --git a/plugins/modules/ec2_security_group.py b/plugins/modules/ec2_security_group.py
index a5dc7f66ed1..07dbfa3052a 100644
--- a/plugins/modules/ec2_security_group.py
+++ b/plugins/modules/ec2_security_group.py
@@ -481,7 +481,8 @@
try:
import botocore
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
@@ -491,18 +492,17 @@
from ansible.module_utils.common.network import to_subnet
from ansible.module_utils.six import string_types
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.iam import get_aws_account_id
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
-from ansible_collections.amazon.aws.plugins.module_utils.iam import get_aws_account_id
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
-
Rule = namedtuple("Rule", ["port_range", "protocol", "target", "target_type", "description"])
TARGET_TYPES_ALL = {"ipv4", "ipv6", "group", "ip_prefix"}
SOURCE_TYPES_ALL = {"cidr_ip", "cidr_ipv6", "group_id", "group_name", "ip_prefix"}
diff --git a/plugins/modules/ec2_security_group_info.py b/plugins/modules/ec2_security_group_info.py
index c56f7734401..8b7a04ba14c 100644
--- a/plugins/modules/ec2_security_group_info.py
+++ b/plugins/modules/ec2_security_group_info.py
@@ -248,7 +248,8 @@
"""
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # caught by AnsibleAWSModule
@@ -256,8 +257,8 @@
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
def main():
diff --git a/plugins/modules/ec2_snapshot.py b/plugins/modules/ec2_snapshot.py
index cae97201d4c..520fd80ac36 100644
--- a/plugins/modules/ec2_snapshot.py
+++ b/plugins/modules/ec2_snapshot.py
@@ -211,12 +211,12 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
diff --git a/plugins/modules/ec2_snapshot_info.py b/plugins/modules/ec2_snapshot_info.py
index bfa126e0a3f..f2db12cbbc7 100644
--- a/plugins/modules/ec2_snapshot_info.py
+++ b/plugins/modules/ec2_snapshot_info.py
@@ -210,17 +210,18 @@
"""
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
def build_request_args(snapshot_ids, owner_ids, restorable_by_user_ids, filters, max_results, next_token_id):
diff --git a/plugins/modules/ec2_spot_instance.py b/plugins/modules/ec2_spot_instance.py
index b046f6687cd..4f678c626a3 100644
--- a/plugins/modules/ec2_spot_instance.py
+++ b/plugins/modules/ec2_spot_instance.py
@@ -413,13 +413,14 @@
import botocore
except ImportError:
pass # Handled by AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
+
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
def build_launch_specification(launch_spec):
diff --git a/plugins/modules/ec2_spot_instance_info.py b/plugins/modules/ec2_spot_instance_info.py
index d530c48fd28..76369b1bf4c 100644
--- a/plugins/modules/ec2_spot_instance_info.py
+++ b/plugins/modules/ec2_spot_instance_info.py
@@ -240,9 +240,10 @@
import botocore
except ImportError:
pass # Handled by AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
diff --git a/plugins/modules/ec2_tag.py b/plugins/modules/ec2_tag.py
index 43197cc2bdd..bdfcbccd601 100644
--- a/plugins/modules/ec2_tag.py
+++ b/plugins/modules/ec2_tag.py
@@ -112,11 +112,11 @@
type: dict
"""
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import describe_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import remove_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
def main():
diff --git a/plugins/modules/ec2_tag_info.py b/plugins/modules/ec2_tag_info.py
index 8bd826d196f..1efcd55822d 100644
--- a/plugins/modules/ec2_tag_info.py
+++ b/plugins/modules/ec2_tag_info.py
@@ -49,8 +49,8 @@
type: dict
"""
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import describe_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
def main():
diff --git a/plugins/modules/ec2_vol.py b/plugins/modules/ec2_vol.py
index 981510c8470..6fa2ca47b14 100644
--- a/plugins/modules/ec2_vol.py
+++ b/plugins/modules/ec2_vol.py
@@ -248,17 +248,17 @@
import time
-from ansible_collections.amazon.aws.plugins.module_utils.arn import is_outpost_arn
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
+
+from ansible_collections.amazon.aws.plugins.module_utils.arn import is_outpost_arn
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import describe_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
-
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
try:
import botocore
diff --git a/plugins/modules/ec2_vol_info.py b/plugins/modules/ec2_vol_info.py
index 32ff91968ad..c72fb5da25a 100644
--- a/plugins/modules/ec2_vol_info.py
+++ b/plugins/modules/ec2_vol_info.py
@@ -133,8 +133,8 @@
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
def get_volume_info(volume, region):
diff --git a/plugins/modules/ec2_vpc_dhcp_option.py b/plugins/modules/ec2_vpc_dhcp_option.py
index 23ac67744bd..fc343d57412 100644
--- a/plugins/modules/ec2_vpc_dhcp_option.py
+++ b/plugins/modules/ec2_vpc_dhcp_option.py
@@ -235,15 +235,16 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import normalize_ec2_vpc_dhcp_config
+
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import normalize_ec2_vpc_dhcp_config
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
def fetch_dhcp_options_for_vpc(client, module, vpc_id):
diff --git a/plugins/modules/ec2_vpc_dhcp_option_info.py b/plugins/modules/ec2_vpc_dhcp_option_info.py
index a8c7b1b50db..c97d6a57d17 100644
--- a/plugins/modules/ec2_vpc_dhcp_option_info.py
+++ b/plugins/modules/ec2_vpc_dhcp_option_info.py
@@ -156,11 +156,11 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import normalize_ec2_vpc_dhcp_config
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import normalize_ec2_vpc_dhcp_config
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
def get_dhcp_options_info(dhcp_option):
diff --git a/plugins/modules/ec2_vpc_endpoint.py b/plugins/modules/ec2_vpc_endpoint.py
index 02ae8bec9a3..c894412eb32 100644
--- a/plugins/modules/ec2_vpc_endpoint.py
+++ b/plugins/modules/ec2_vpc_endpoint.py
@@ -191,16 +191,16 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible.module_utils.six import string_types
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible.module_utils.six import string_types
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import normalize_boto3_result
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import normalize_boto3_result
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
+from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
def get_endpoints(client, module, endpoint_id=None):
diff --git a/plugins/modules/ec2_vpc_endpoint_info.py b/plugins/modules/ec2_vpc_endpoint_info.py
index e51e44318e2..e94cf1a94a6 100644
--- a/plugins/modules/ec2_vpc_endpoint_info.py
+++ b/plugins/modules/ec2_vpc_endpoint_info.py
@@ -179,9 +179,9 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.botocore import normalize_boto3_result
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
diff --git a/plugins/modules/ec2_vpc_endpoint_service_info.py b/plugins/modules/ec2_vpc_endpoint_service_info.py
index 050e964a00d..e462cfefdb2 100644
--- a/plugins/modules/ec2_vpc_endpoint_service_info.py
+++ b/plugins/modules/ec2_vpc_endpoint_service_info.py
@@ -119,9 +119,9 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
# We're using a paginator so we can't use the client decorators
diff --git a/plugins/modules/ec2_vpc_igw.py b/plugins/modules/ec2_vpc_igw.py
index fe5ab51b0b8..48db6917580 100644
--- a/plugins/modules/ec2_vpc_igw.py
+++ b/plugins/modules/ec2_vpc_igw.py
@@ -93,13 +93,14 @@
except ImportError:
pass # caught by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
+from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
@AWSRetry.jittered_backoff(retries=10, delay=10)
diff --git a/plugins/modules/ec2_vpc_igw_info.py b/plugins/modules/ec2_vpc_igw_info.py
index 8187a01cc98..66fe76328a8 100644
--- a/plugins/modules/ec2_vpc_igw_info.py
+++ b/plugins/modules/ec2_vpc_igw_info.py
@@ -107,12 +107,13 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
def get_internet_gateway_info(internet_gateway, convert_tags):
diff --git a/plugins/modules/ec2_vpc_nat_gateway.py b/plugins/modules/ec2_vpc_nat_gateway.py
index 3586a98806e..76f437b9bf6 100644
--- a/plugins/modules/ec2_vpc_nat_gateway.py
+++ b/plugins/modules/ec2_vpc_nat_gateway.py
@@ -250,14 +250,15 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import describe_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
+from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
@AWSRetry.jittered_backoff(retries=10)
diff --git a/plugins/modules/ec2_vpc_nat_gateway_info.py b/plugins/modules/ec2_vpc_nat_gateway_info.py
index 96c32c276b6..a8c76142a93 100644
--- a/plugins/modules/ec2_vpc_nat_gateway_info.py
+++ b/plugins/modules/ec2_vpc_nat_gateway_info.py
@@ -149,13 +149,14 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.botocore import normalize_boto3_result
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
@AWSRetry.jittered_backoff(retries=10)
diff --git a/plugins/modules/ec2_vpc_net.py b/plugins/modules/ec2_vpc_net.py
index afda314ef7c..794a49fe91c 100644
--- a/plugins/modules/ec2_vpc_net.py
+++ b/plugins/modules/ec2_vpc_net.py
@@ -207,16 +207,16 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible.module_utils.common.network import to_subnet
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible.module_utils.common.network import to_subnet
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_specifications
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
diff --git a/plugins/modules/ec2_vpc_net_info.py b/plugins/modules/ec2_vpc_net_info.py
index 1c8a30f84e1..93b44fa7920 100644
--- a/plugins/modules/ec2_vpc_net_info.py
+++ b/plugins/modules/ec2_vpc_net_info.py
@@ -152,11 +152,11 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
def describe_vpcs(connection, module):
diff --git a/plugins/modules/ec2_vpc_route_table.py b/plugins/modules/ec2_vpc_route_table.py
index 45880e6a69b..c380c01bf14 100644
--- a/plugins/modules/ec2_vpc_route_table.py
+++ b/plugins/modules/ec2_vpc_route_table.py
@@ -287,8 +287,8 @@
"""
import re
-from time import sleep
from ipaddress import ip_network
+from time import sleep
try:
import botocore
@@ -298,12 +298,12 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import describe_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
diff --git a/plugins/modules/ec2_vpc_route_table_info.py b/plugins/modules/ec2_vpc_route_table_info.py
index 21c9fc6674a..d330299af37 100644
--- a/plugins/modules/ec2_vpc_route_table_info.py
+++ b/plugins/modules/ec2_vpc_route_table_info.py
@@ -194,11 +194,11 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
@AWSRetry.jittered_backoff()
diff --git a/plugins/modules/ec2_vpc_subnet.py b/plugins/modules/ec2_vpc_subnet.py
index c61d9df2bd0..e4c420ef4d6 100644
--- a/plugins/modules/ec2_vpc_subnet.py
+++ b/plugins/modules/ec2_vpc_subnet.py
@@ -215,12 +215,12 @@
from ansible.module_utils._text import to_text
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible_collections.amazon.aws.plugins.module_utils.arn import is_outpost_arn
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import ensure_ec2_tags
-from ansible_collections.amazon.aws.plugins.module_utils.arn import is_outpost_arn
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
diff --git a/plugins/modules/ec2_vpc_subnet_info.py b/plugins/modules/ec2_vpc_subnet_info.py
index cd83994440e..654f5609a3b 100644
--- a/plugins/modules/ec2_vpc_subnet_info.py
+++ b/plugins/modules/ec2_vpc_subnet_info.py
@@ -153,8 +153,8 @@
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
@AWSRetry.exponential_backoff()
diff --git a/plugins/modules/elb_application_lb.py b/plugins/modules/elb_application_lb.py
index ec0fec87382..e04ca875d69 100644
--- a/plugins/modules/elb_application_lb.py
+++ b/plugins/modules/elb_application_lb.py
@@ -526,20 +526,19 @@
except ImportError:
pass # caught by AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
+from ansible_collections.amazon.aws.plugins.module_utils.elb_utils import get_elb_listener_rules
+from ansible_collections.amazon.aws.plugins.module_utils.elbv2 import ApplicationLoadBalancer
+from ansible_collections.amazon.aws.plugins.module_utils.elbv2 import ELBListener
+from ansible_collections.amazon.aws.plugins.module_utils.elbv2 import ELBListenerRule
+from ansible_collections.amazon.aws.plugins.module_utils.elbv2 import ELBListenerRules
+from ansible_collections.amazon.aws.plugins.module_utils.elbv2 import ELBListeners
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible_collections.amazon.aws.plugins.module_utils.elbv2 import (
- ApplicationLoadBalancer,
- ELBListener,
- ELBListenerRule,
- ELBListenerRules,
- ELBListeners,
-)
-from ansible_collections.amazon.aws.plugins.module_utils.elb_utils import get_elb_listener_rules
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
@AWSRetry.jittered_backoff()
diff --git a/plugins/modules/elb_application_lb_info.py b/plugins/modules/elb_application_lb_info.py
index 7964495d665..343f82bc1e7 100644
--- a/plugins/modules/elb_application_lb_info.py
+++ b/plugins/modules/elb_application_lb_info.py
@@ -218,8 +218,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
diff --git a/plugins/modules/elb_classic_lb.py b/plugins/modules/elb_classic_lb.py
index 5debaf35bb4..cbf0b7710b3 100644
--- a/plugins/modules/elb_classic_lb.py
+++ b/plugins/modules/elb_classic_lb.py
@@ -675,18 +675,18 @@
except ImportError:
pass # Taken care of by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
+from ansible_collections.amazon.aws.plugins.module_utils.ec2 import get_ec2_security_group_ids_from_names
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
-
-from ansible_collections.amazon.aws.plugins.module_utils.ec2 import get_ec2_security_group_ids_from_names
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
diff --git a/plugins/modules/iam_group.py b/plugins/modules/iam_group.py
index d9262b424db..d8411191d88 100644
--- a/plugins/modules/iam_group.py
+++ b/plugins/modules/iam_group.py
@@ -174,9 +174,8 @@
from ansible_collections.amazon.aws.plugins.module_utils.arn import validate_aws_arn
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
def compare_attached_group_policies(current_attached_policies, new_attached_policies):
diff --git a/plugins/modules/iam_instance_profile.py b/plugins/modules/iam_instance_profile.py
index b34b6b1305b..790fa412d60 100644
--- a/plugins/modules/iam_instance_profile.py
+++ b/plugins/modules/iam_instance_profile.py
@@ -107,8 +107,8 @@
from copy import deepcopy
-from ansible_collections.amazon.aws.plugins.module_utils.iam import add_role_to_iam_instance_profile
from ansible_collections.amazon.aws.plugins.module_utils.iam import AnsibleIAMError
+from ansible_collections.amazon.aws.plugins.module_utils.iam import add_role_to_iam_instance_profile
from ansible_collections.amazon.aws.plugins.module_utils.iam import create_iam_instance_profile
from ansible_collections.amazon.aws.plugins.module_utils.iam import delete_iam_instance_profile
from ansible_collections.amazon.aws.plugins.module_utils.iam import list_iam_instance_profiles
diff --git a/plugins/modules/iam_managed_policy.py b/plugins/modules/iam_managed_policy.py
index f1d8e55f9ce..2cc7d8da95f 100644
--- a/plugins/modules/iam_managed_policy.py
+++ b/plugins/modules/iam_managed_policy.py
@@ -134,11 +134,10 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.policy import compare_policies
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-
@AWSRetry.jittered_backoff(retries=5, delay=5, backoff=2.0)
def list_policies_with_backoff():
diff --git a/plugins/modules/iam_policy.py b/plugins/modules/iam_policy.py
index c2012018c15..1cc9c8cd110 100644
--- a/plugins/modules/iam_policy.py
+++ b/plugins/modules/iam_policy.py
@@ -102,15 +102,17 @@
import json
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass
from ansible.module_utils.six import string_types
+
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.policy import compare_policies
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
class PolicyError(Exception):
diff --git a/plugins/modules/iam_policy_info.py b/plugins/modules/iam_policy_info.py
index 0793b2f8950..3e0e4eaaa1b 100644
--- a/plugins/modules/iam_policy_info.py
+++ b/plugins/modules/iam_policy_info.py
@@ -79,8 +79,8 @@
except ImportError:
pass
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
diff --git a/plugins/modules/iam_role.py b/plugins/modules/iam_role.py
index 404e4aa4e5f..f373b2ef630 100644
--- a/plugins/modules/iam_role.py
+++ b/plugins/modules/iam_role.py
@@ -227,14 +227,13 @@
from ansible_collections.amazon.aws.plugins.module_utils.arn import validate_aws_arn
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.policy import compare_policies
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-
@AWSRetry.jittered_backoff()
def _list_policies(client):
diff --git a/plugins/modules/iam_role_info.py b/plugins/modules/iam_role_info.py
index b87a281287f..b56a35a3e9c 100644
--- a/plugins/modules/iam_role_info.py
+++ b/plugins/modules/iam_role_info.py
@@ -161,11 +161,10 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-
@AWSRetry.jittered_backoff()
def list_iam_roles_with_backoff(client, **kwargs):
diff --git a/plugins/modules/iam_user_info.py b/plugins/modules/iam_user_info.py
index a10c571682a..304b449862e 100644
--- a/plugins/modules/iam_user_info.py
+++ b/plugins/modules/iam_user_info.py
@@ -101,14 +101,15 @@
"""
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # caught by AnsibleAWSModule
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
diff --git a/plugins/modules/kms_key.py b/plugins/modules/kms_key.py
index 9e6bdabfefa..82f73b370fe 100644
--- a/plugins/modules/kms_key.py
+++ b/plugins/modules/kms_key.py
@@ -450,14 +450,15 @@
except ImportError:
pass # caught by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.policy import compare_policies
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible_collections.amazon.aws.plugins.module_utils.policy import compare_policies
@AWSRetry.jittered_backoff(retries=5, delay=5, backoff=2.0)
diff --git a/plugins/modules/kms_key_info.py b/plugins/modules/kms_key_info.py
index 9733b0d5e19..4ba24994038 100644
--- a/plugins/modules/kms_key_info.py
+++ b/plugins/modules/kms_key_info.py
@@ -293,8 +293,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
diff --git a/plugins/modules/lambda.py b/plugins/modules/lambda.py
index 2ef61d6fe89..8b4932a4fb9 100644
--- a/plugins/modules/lambda.py
+++ b/plugins/modules/lambda.py
@@ -389,22 +389,24 @@
import base64
import hashlib
-import traceback
import re
+import traceback
from collections import Counter
try:
- from botocore.exceptions import ClientError, BotoCoreError, WaiterError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
+ from botocore.exceptions import WaiterError
except ImportError:
pass # protected by AnsibleAWSModule
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.iam import get_aws_account_info
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible_collections.amazon.aws.plugins.module_utils.iam import get_aws_account_info
def get_current_function(connection, function_name, qualifier=None):
diff --git a/plugins/modules/lambda_event.py b/plugins/modules/lambda_event.py
index 83b0a0737cd..0858a54f273 100644
--- a/plugins/modules/lambda_event.py
+++ b/plugins/modules/lambda_event.py
@@ -138,16 +138,17 @@
import re
try:
- from botocore.exceptions import ClientError, ParamValidationError, MissingParametersError
+ from botocore.exceptions import ClientError
+ from botocore.exceptions import MissingParametersError
+ from botocore.exceptions import ParamValidationError
except ImportError:
pass # Handled by AnsibleAWSModule
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import boto3_conn
from ansible_collections.amazon.aws.plugins.module_utils.botocore import get_aws_connection_info
-
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
# ---------------------------------------------------------------------------------------------------
#
diff --git a/plugins/modules/lambda_execute.py b/plugins/modules/lambda_execute.py
index 10d38d1f59d..6b6ff11c538 100644
--- a/plugins/modules/lambda_execute.py
+++ b/plugins/modules/lambda_execute.py
@@ -139,8 +139,8 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
diff --git a/plugins/modules/lambda_policy.py b/plugins/modules/lambda_policy.py
index b724afa1de2..3413d6e79da 100644
--- a/plugins/modules/lambda_policy.py
+++ b/plugins/modules/lambda_policy.py
@@ -136,8 +136,9 @@
pass # caught by AnsibleAWSModule
from ansible.module_utils._text import to_native
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
def pc(key):
diff --git a/plugins/modules/rds_cluster.py b/plugins/modules/rds_cluster.py
index b737d98ffe8..ca042c67f16 100644
--- a/plugins/modules/rds_cluster.py
+++ b/plugins/modules/rds_cluster.py
@@ -742,15 +742,15 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
-from ansible_collections.amazon.aws.plugins.module_utils.rds import wait_for_cluster_status
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.rds import arg_spec_to_rds_params
-from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
-from ansible_collections.amazon.aws.plugins.module_utils.rds import ensure_tags
from ansible_collections.amazon.aws.plugins.module_utils.rds import call_method
+from ansible_collections.amazon.aws.plugins.module_utils.rds import ensure_tags
+from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.rds import wait_for_cluster_status
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
@AWSRetry.jittered_backoff(retries=10)
diff --git a/plugins/modules/rds_cluster_info.py b/plugins/modules/rds_cluster_info.py
index 618df5de872..08789af4c6f 100644
--- a/plugins/modules/rds_cluster_info.py
+++ b/plugins/modules/rds_cluster_info.py
@@ -245,12 +245,13 @@
except ImportError:
pass # handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
@AWSRetry.jittered_backoff(retries=10)
diff --git a/plugins/modules/rds_cluster_snapshot.py b/plugins/modules/rds_cluster_snapshot.py
index 134c74af9e1..2f0ce49ec6d 100644
--- a/plugins/modules/rds_cluster_snapshot.py
+++ b/plugins/modules/rds_cluster_snapshot.py
@@ -219,17 +219,18 @@
except ImportError:
pass # caught by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
-from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
-from ansible_collections.amazon.aws.plugins.module_utils.rds import ensure_tags
-from ansible_collections.amazon.aws.plugins.module_utils.rds import call_method
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import get_boto3_client_method_parameters
-from ansible_collections.amazon.aws.plugins.module_utils.rds import get_rds_method_attribute
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.rds import arg_spec_to_rds_params
+from ansible_collections.amazon.aws.plugins.module_utils.rds import call_method
+from ansible_collections.amazon.aws.plugins.module_utils.rds import ensure_tags
+from ansible_collections.amazon.aws.plugins.module_utils.rds import get_rds_method_attribute
+from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
def get_snapshot(snapshot_id):
diff --git a/plugins/modules/rds_instance.py b/plugins/modules/rds_instance.py
index 14366678807..613f5f2d51d 100644
--- a/plugins/modules/rds_instance.py
+++ b/plugins/modules/rds_instance.py
@@ -871,13 +871,10 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible.module_utils.six import string_types
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import get_boto3_client_method_parameters
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_message
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import get_boto3_client_method_parameters
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.rds import arg_spec_to_rds_params
from ansible_collections.amazon.aws.plugins.module_utils.rds import call_method
from ansible_collections.amazon.aws.plugins.module_utils.rds import compare_iam_roles
@@ -886,7 +883,9 @@
from ansible_collections.amazon.aws.plugins.module_utils.rds import get_rds_method_attribute
from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
from ansible_collections.amazon.aws.plugins.module_utils.rds import update_iam_roles
-
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
valid_engines = [
"aurora",
diff --git a/plugins/modules/rds_instance_info.py b/plugins/modules/rds_instance_info.py
index afb9ae337d0..36c6d1b9c34 100644
--- a/plugins/modules/rds_instance_info.py
+++ b/plugins/modules/rds_instance_info.py
@@ -351,13 +351,13 @@
sample: sg-abcd1234
"""
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import ansible_dict_to_boto3_filter_list
try:
import botocore
diff --git a/plugins/modules/rds_instance_snapshot.py b/plugins/modules/rds_instance_snapshot.py
index 8aa5c34fa92..0c67d158366 100644
--- a/plugins/modules/rds_instance_snapshot.py
+++ b/plugins/modules/rds_instance_snapshot.py
@@ -233,18 +233,20 @@
except ImportError:
pass # protected by AnsibleAWSModule
-# import module snippets
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import get_boto3_client_method_parameters
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
+# import module snippets
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.rds import arg_spec_to_rds_params
from ansible_collections.amazon.aws.plugins.module_utils.rds import call_method
from ansible_collections.amazon.aws.plugins.module_utils.rds import ensure_tags
from ansible_collections.amazon.aws.plugins.module_utils.rds import get_rds_method_attribute
from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
def get_snapshot(snapshot_id):
diff --git a/plugins/modules/rds_option_group.py b/plugins/modules/rds_option_group.py
index f5377bc0ae5..c7a9eb64b95 100644
--- a/plugins/modules/rds_option_group.py
+++ b/plugins/modules/rds_option_group.py
@@ -346,17 +346,16 @@
"""
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible.module_utils.common.dict_transformations import snake_dict_to_camel_dict
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import compare_aws_tags
try:
import botocore
diff --git a/plugins/modules/rds_option_group_info.py b/plugins/modules/rds_option_group_info.py
index 290bfad4ef4..ef836ce5666 100644
--- a/plugins/modules/rds_option_group_info.py
+++ b/plugins/modules/rds_option_group_info.py
@@ -240,12 +240,12 @@
except ImportError:
pass # Handled by AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
@AWSRetry.jittered_backoff(retries=10)
diff --git a/plugins/modules/rds_param_group.py b/plugins/modules/rds_param_group.py
index 8211c88c59b..abdb57c9b12 100644
--- a/plugins/modules/rds_param_group.py
+++ b/plugins/modules/rds_param_group.py
@@ -112,12 +112,12 @@
except ImportError:
pass # Handled by AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
from ansible.module_utils.parsing.convert_bool import BOOLEANS_TRUE
from ansible.module_utils.six import string_types
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
diff --git a/plugins/modules/rds_snapshot_info.py b/plugins/modules/rds_snapshot_info.py
index 7fe17e4ee93..9617c5ad8fc 100644
--- a/plugins/modules/rds_snapshot_info.py
+++ b/plugins/modules/rds_snapshot_info.py
@@ -288,11 +288,12 @@
sample: vpc-abcd1234
"""
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.tagging import boto3_tag_list_to_ansible_dict
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
try:
import botocore
diff --git a/plugins/modules/rds_subnet_group.py b/plugins/modules/rds_subnet_group.py
index b43df2c8f05..17fbdb00173 100644
--- a/plugins/modules/rds_subnet_group.py
+++ b/plugins/modules/rds_subnet_group.py
@@ -178,13 +178,13 @@
"""
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
+
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.rds import ensure_tags
-
+from ansible_collections.amazon.aws.plugins.module_utils.rds import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.tagging import ansible_dict_to_boto3_tag_list
try:
import botocore
diff --git a/plugins/modules/route53.py b/plugins/modules/route53.py
index 4abb7b84126..2fb1bce8a29 100644
--- a/plugins/modules/route53.py
+++ b/plugins/modules/route53.py
@@ -420,10 +420,10 @@
from ansible.module_utils._text import to_native
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_message
-from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.transformation import scrub_none_parameters
from ansible_collections.amazon.aws.plugins.module_utils.waiters import get_waiter
MAX_AWS_RETRIES = 10 # How many retries to perform when an API call is failing
diff --git a/plugins/modules/route53_health_check.py b/plugins/modules/route53_health_check.py
index b9325cae418..369c7c7740b 100644
--- a/plugins/modules/route53_health_check.py
+++ b/plugins/modules/route53_health_check.py
@@ -300,8 +300,8 @@
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
+from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.route53 import get_tags
from ansible_collections.amazon.aws.plugins.module_utils.route53 import manage_tags
diff --git a/plugins/modules/route53_info.py b/plugins/modules/route53_info.py
index 769485dda03..909ee0ae370 100644
--- a/plugins/modules/route53_info.py
+++ b/plugins/modules/route53_info.py
@@ -523,9 +523,10 @@
except ImportError:
pass # Handled by AnsibleAWSModule
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
# Split out paginator to allow for the backoff decorator to function
diff --git a/plugins/modules/route53_zone.py b/plugins/modules/route53_zone.py
index 31c627945f7..335c05f1672 100644
--- a/plugins/modules/route53_zone.py
+++ b/plugins/modules/route53_zone.py
@@ -185,13 +185,15 @@
"""
import time
+
from ansible_collections.amazon.aws.plugins.module_utils.modules import AnsibleAWSModule
from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-from ansible_collections.amazon.aws.plugins.module_utils.route53 import manage_tags
from ansible_collections.amazon.aws.plugins.module_utils.route53 import get_tags
+from ansible_collections.amazon.aws.plugins.module_utils.route53 import manage_tags
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # caught by AnsibleAWSModule
diff --git a/plugins/plugin_utils/base.py b/plugins/plugin_utils/base.py
index 579f0be5dfd..3c906620982 100644
--- a/plugins/plugin_utils/base.py
+++ b/plugins/plugin_utils/base.py
@@ -8,12 +8,11 @@
from ansible.utils.display import Display
from ansible_collections.amazon.aws.plugins.module_utils.botocore import check_sdk_version_supported
+from ansible_collections.amazon.aws.plugins.module_utils.retries import RetryingBotoClientWrapper
from ansible_collections.amazon.aws.plugins.plugin_utils.botocore import boto3_conn
from ansible_collections.amazon.aws.plugins.plugin_utils.botocore import get_aws_connection_info
from ansible_collections.amazon.aws.plugins.plugin_utils.botocore import get_aws_region
-from ansible_collections.amazon.aws.plugins.module_utils.retries import RetryingBotoClientWrapper
-
display = Display()
diff --git a/plugins/plugin_utils/inventory.py b/plugins/plugin_utils/inventory.py
index 47eb1887e34..144f77a7a50 100644
--- a/plugins/plugin_utils/inventory.py
+++ b/plugins/plugin_utils/inventory.py
@@ -14,8 +14,8 @@
from ansible.plugins.inventory import Constructable
from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
-from ansible_collections.amazon.aws.plugins.plugin_utils.botocore import AnsibleBotocoreError
from ansible_collections.amazon.aws.plugins.plugin_utils.base import AWSPluginBase
+from ansible_collections.amazon.aws.plugins.plugin_utils.botocore import AnsibleBotocoreError
def _boto3_session(profile_name=None):
diff --git a/tests/integration/targets/module_utils_core/roles/ansibleawsmodule.client/library/example_module.py b/tests/integration/targets/module_utils_core/roles/ansibleawsmodule.client/library/example_module.py
index d772a82d6c5..e580938e55a 100644
--- a/tests/integration/targets/module_utils_core/roles/ansibleawsmodule.client/library/example_module.py
+++ b/tests/integration/targets/module_utils_core/roles/ansibleawsmodule.client/library/example_module.py
@@ -8,7 +8,8 @@
# of the core behaviour around AWS/Boto3 connection details
try:
- from botocore.exceptions import BotoCoreError, ClientError
+ from botocore.exceptions import BotoCoreError
+ from botocore.exceptions import ClientError
except ImportError:
pass # Handled by AnsibleAWSModule
diff --git a/tests/integration/targets/setup_sshkey/files/ec2-fingerprint.py b/tests/integration/targets/setup_sshkey/files/ec2-fingerprint.py
index 827856386d6..04d2eb1ea54 100644
--- a/tests/integration/targets/setup_sshkey/files/ec2-fingerprint.py
+++ b/tests/integration/targets/setup_sshkey/files/ec2-fingerprint.py
@@ -11,6 +11,7 @@
import hashlib
import sys
+
from cryptography.hazmat.primitives import serialization
if len(sys.argv) == 0:
diff --git a/tests/unit/module_utils/botocore/test_aws_region.py b/tests/unit/module_utils/botocore/test_aws_region.py
index a4cab3ccd37..f36967b442c 100644
--- a/tests/unit/module_utils/botocore/test_aws_region.py
+++ b/tests/unit/module_utils/botocore/test_aws_region.py
@@ -3,10 +3,11 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import MagicMock
-from unittest.mock import sentinel
from unittest.mock import call
+from unittest.mock import sentinel
+
+import pytest
try:
import botocore
diff --git a/tests/unit/module_utils/botocore/test_boto3_conn.py b/tests/unit/module_utils/botocore/test_boto3_conn.py
index d50cdab83dd..d9b19b725fe 100644
--- a/tests/unit/module_utils/botocore/test_boto3_conn.py
+++ b/tests/unit/module_utils/botocore/test_boto3_conn.py
@@ -8,10 +8,11 @@
except ImportError:
pass
-import pytest
from unittest.mock import MagicMock
-from unittest.mock import sentinel
from unittest.mock import call
+from unittest.mock import sentinel
+
+import pytest
import ansible_collections.amazon.aws.plugins.module_utils.botocore as utils_botocore
diff --git a/tests/unit/module_utils/botocore/test_connection_info.py b/tests/unit/module_utils/botocore/test_connection_info.py
index 7ec4ed2cc39..5cdf45f9015 100644
--- a/tests/unit/module_utils/botocore/test_connection_info.py
+++ b/tests/unit/module_utils/botocore/test_connection_info.py
@@ -4,10 +4,11 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from copy import deepcopy
-import pytest
from unittest.mock import MagicMock
-from unittest.mock import sentinel
from unittest.mock import call
+from unittest.mock import sentinel
+
+import pytest
try:
import botocore
diff --git a/tests/unit/module_utils/botocore/test_is_boto3_error_code.py b/tests/unit/module_utils/botocore/test_is_boto3_error_code.py
index ad2b111ca97..9f3e4194b77 100644
--- a/tests/unit/module_utils/botocore/test_is_boto3_error_code.py
+++ b/tests/unit/module_utils/botocore/test_is_boto3_error_code.py
@@ -12,8 +12,8 @@
# Handled by HAS_BOTO3
pass
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
from ansible_collections.amazon.aws.plugins.module_utils.botocore import HAS_BOTO3
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_code
if not HAS_BOTO3:
pytestmark = pytest.mark.skip("test_is_boto3_error_code.py requires the python modules 'boto3' and 'botocore'")
diff --git a/tests/unit/module_utils/botocore/test_is_boto3_error_message.py b/tests/unit/module_utils/botocore/test_is_boto3_error_message.py
index 6085c4b71b5..9cfc62d1723 100644
--- a/tests/unit/module_utils/botocore/test_is_boto3_error_message.py
+++ b/tests/unit/module_utils/botocore/test_is_boto3_error_message.py
@@ -12,8 +12,8 @@
# Handled by HAS_BOTO3
pass
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_message
from ansible_collections.amazon.aws.plugins.module_utils.botocore import HAS_BOTO3
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import is_boto3_error_message
if not HAS_BOTO3:
pytestmark = pytest.mark.skip("test_is_boto3_error_message.py requires the python modules 'boto3' and 'botocore'")
diff --git a/tests/unit/module_utils/botocore/test_merge_botocore_config.py b/tests/unit/module_utils/botocore/test_merge_botocore_config.py
index 2776e971c47..f5a8710cd37 100644
--- a/tests/unit/module_utils/botocore/test_merge_botocore_config.py
+++ b/tests/unit/module_utils/botocore/test_merge_botocore_config.py
@@ -3,9 +3,10 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import MagicMock
+import pytest
+
try:
import botocore
except ImportError:
diff --git a/tests/unit/module_utils/botocore/test_sdk_versions.py b/tests/unit/module_utils/botocore/test_sdk_versions.py
index 416fa85627e..7e2877b6b51 100644
--- a/tests/unit/module_utils/botocore/test_sdk_versions.py
+++ b/tests/unit/module_utils/botocore/test_sdk_versions.py
@@ -3,25 +3,24 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
import warnings
from unittest.mock import sentinel
+import pytest
+
try:
- import botocore
import boto3
+ import botocore
except ImportError:
# Handled by HAS_BOTO3
pass
+from ansible_collections.amazon.aws.plugins.module_utils import botocore as botocore_utils
from ansible_collections.amazon.aws.plugins.module_utils.botocore import HAS_BOTO3
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import botocore_at_least
from ansible_collections.amazon.aws.plugins.module_utils.botocore import boto3_at_least
-
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import botocore_at_least
from ansible_collections.amazon.aws.plugins.module_utils.exceptions import AnsibleBotocoreError
-from ansible_collections.amazon.aws.plugins.module_utils import botocore as botocore_utils
-
DUMMY_VERSION = "5.5.5.5"
TEST_VERSIONS = [
diff --git a/tests/unit/module_utils/cloud/test_cloud_retry.py b/tests/unit/module_utils/cloud/test_cloud_retry.py
index 9feba78c585..06119d7f66c 100644
--- a/tests/unit/module_utils/cloud/test_cloud_retry.py
+++ b/tests/unit/module_utils/cloud/test_cloud_retry.py
@@ -5,6 +5,7 @@
import random
from datetime import datetime
+
import pytest
from ansible_collections.amazon.aws.plugins.module_utils.cloud import CloudRetry
diff --git a/tests/unit/module_utils/cloud/test_decorator_generation.py b/tests/unit/module_utils/cloud/test_decorator_generation.py
index 4c860dea9e7..ad389050376 100644
--- a/tests/unit/module_utils/cloud/test_decorator_generation.py
+++ b/tests/unit/module_utils/cloud/test_decorator_generation.py
@@ -3,13 +3,14 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
import sys
from unittest.mock import MagicMock
from unittest.mock import sentinel
-from ansible_collections.amazon.aws.plugins.module_utils.cloud import CloudRetry
+import pytest
+
from ansible_collections.amazon.aws.plugins.module_utils.cloud import BackoffIterator
+from ansible_collections.amazon.aws.plugins.module_utils.cloud import CloudRetry
if sys.version_info < (3, 8):
pytest.skip(
diff --git a/tests/unit/module_utils/cloud/test_retry_func.py b/tests/unit/module_utils/cloud/test_retry_func.py
index 11ccf02fede..c318f618602 100644
--- a/tests/unit/module_utils/cloud/test_retry_func.py
+++ b/tests/unit/module_utils/cloud/test_retry_func.py
@@ -3,11 +3,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
import sys
from unittest.mock import Mock
from unittest.mock import sentinel
+import pytest
+
import ansible_collections.amazon.aws.plugins.module_utils.cloud as cloud_utils
if sys.version_info < (3, 8):
diff --git a/tests/unit/module_utils/conftest.py b/tests/unit/module_utils/conftest.py
index dd349dc288f..397dfac8440 100644
--- a/tests/unit/module_utils/conftest.py
+++ b/tests/unit/module_utils/conftest.py
@@ -3,16 +3,17 @@
import json
import sys
-from io import BytesIO
import warnings
+from io import BytesIO
import pytest
import ansible.module_utils.basic
import ansible.module_utils.common
-from ansible.module_utils.six import PY3, string_types
from ansible.module_utils._text import to_bytes
from ansible.module_utils.common._collections_compat import MutableMapping
+from ansible.module_utils.six import PY3
+from ansible.module_utils.six import string_types
@pytest.fixture
diff --git a/tests/unit/module_utils/exceptions/test_exceptions.py b/tests/unit/module_utils/exceptions/test_exceptions.py
index c7de2fce806..a2979f8485d 100644
--- a/tests/unit/module_utils/exceptions/test_exceptions.py
+++ b/tests/unit/module_utils/exceptions/test_exceptions.py
@@ -3,9 +3,10 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import sentinel
+import pytest
+
import ansible_collections.amazon.aws.plugins.module_utils.exceptions as aws_exceptions
diff --git a/tests/unit/module_utils/modules/ansible_aws_module/test_fail_json_aws.py b/tests/unit/module_utils/modules/ansible_aws_module/test_fail_json_aws.py
index c044068540c..8a6fc96ecae 100644
--- a/tests/unit/module_utils/modules/ansible_aws_module/test_fail_json_aws.py
+++ b/tests/unit/module_utils/modules/ansible_aws_module/test_fail_json_aws.py
@@ -4,11 +4,12 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
import json
+
import pytest
try:
- import botocore
import boto3
+ import botocore
except ImportError:
pass
diff --git a/tests/unit/module_utils/modules/ansible_aws_module/test_minimal_versions.py b/tests/unit/module_utils/modules/ansible_aws_module/test_minimal_versions.py
index 15aa71eae9e..32210054b95 100644
--- a/tests/unit/module_utils/modules/ansible_aws_module/test_minimal_versions.py
+++ b/tests/unit/module_utils/modules/ansible_aws_module/test_minimal_versions.py
@@ -3,13 +3,14 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
+import json
from pprint import pprint
+
import pytest
-import json
try:
- import botocore
import boto3
+ import botocore
except ImportError:
pass
diff --git a/tests/unit/module_utils/modules/ansible_aws_module/test_passthrough.py b/tests/unit/module_utils/modules/ansible_aws_module/test_passthrough.py
index 9d242dc70ce..c61de13915e 100644
--- a/tests/unit/module_utils/modules/ansible_aws_module/test_passthrough.py
+++ b/tests/unit/module_utils/modules/ansible_aws_module/test_passthrough.py
@@ -3,11 +3,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
-from unittest.mock import call
+import warnings
from unittest.mock import MagicMock
+from unittest.mock import call
from unittest.mock import sentinel
-import warnings
+
+import pytest
import ansible_collections.amazon.aws.plugins.module_utils.modules as utils_module
diff --git a/tests/unit/module_utils/modules/ansible_aws_module/test_require_at_least.py b/tests/unit/module_utils/modules/ansible_aws_module/test_require_at_least.py
index 741f3406576..c383a426749 100644
--- a/tests/unit/module_utils/modules/ansible_aws_module/test_require_at_least.py
+++ b/tests/unit/module_utils/modules/ansible_aws_module/test_require_at_least.py
@@ -4,11 +4,12 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
import json
+
import pytest
try:
- import botocore
import boto3
+ import botocore
except ImportError:
# Handled by HAS_BOTO3
pass
diff --git a/tests/unit/module_utils/policy/test_canonicalize.py b/tests/unit/module_utils/policy/test_canonicalize.py
index 39c06aeea7c..12064982860 100644
--- a/tests/unit/module_utils/policy/test_canonicalize.py
+++ b/tests/unit/module_utils/policy/test_canonicalize.py
@@ -5,8 +5,8 @@
from unittest.mock import sentinel
-from ansible_collections.amazon.aws.plugins.module_utils.policy import _canonify_root_arn
from ansible_collections.amazon.aws.plugins.module_utils.policy import _canonify_policy_dict_item
+from ansible_collections.amazon.aws.plugins.module_utils.policy import _canonify_root_arn
from ansible_collections.amazon.aws.plugins.module_utils.policy import _tuplify_list
diff --git a/tests/unit/module_utils/retries/test_awsretry.py b/tests/unit/module_utils/retries/test_awsretry.py
index b08ae23f1d2..6141149ea18 100644
--- a/tests/unit/module_utils/retries/test_awsretry.py
+++ b/tests/unit/module_utils/retries/test_awsretry.py
@@ -11,8 +11,8 @@
import pytest
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
from ansible_collections.amazon.aws.plugins.module_utils.botocore import HAS_BOTO3
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
if not HAS_BOTO3:
pytestmark = pytest.mark.skip("test_awsretry.py requires the python modules 'boto3' and 'botocore'")
diff --git a/tests/unit/module_utils/retries/test_retry_wrapper.py b/tests/unit/module_utils/retries/test_retry_wrapper.py
index 2fccff575bc..406e3182602 100644
--- a/tests/unit/module_utils/retries/test_retry_wrapper.py
+++ b/tests/unit/module_utils/retries/test_retry_wrapper.py
@@ -3,18 +3,19 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
+from unittest.mock import MagicMock
from unittest.mock import call
from unittest.mock import sentinel
-from unittest.mock import MagicMock
+
+import pytest
try:
import botocore
except ImportError:
pass
-import ansible_collections.amazon.aws.plugins.module_utils.retries as util_retries
import ansible_collections.amazon.aws.plugins.module_utils.botocore as util_botocore
+import ansible_collections.amazon.aws.plugins.module_utils.retries as util_retries
@pytest.fixture
diff --git a/tests/unit/module_utils/test_acm.py b/tests/unit/module_utils/test_acm.py
index 2669b594c34..c7971831f1c 100644
--- a/tests/unit/module_utils/test_acm.py
+++ b/tests/unit/module_utils/test_acm.py
@@ -5,10 +5,11 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
import random
-from unittest.mock import MagicMock
from unittest.mock import ANY
+from unittest.mock import MagicMock
+
+import pytest
try:
import botocore
@@ -16,8 +17,8 @@
# Handled by HAS_BOTO3
pass
-from ansible_collections.amazon.aws.plugins.module_utils.acm import ACMServiceManager, acm_catch_boto_exception
-
+from ansible_collections.amazon.aws.plugins.module_utils.acm import ACMServiceManager
+from ansible_collections.amazon.aws.plugins.module_utils.acm import acm_catch_boto_exception
MODULE_NAME = "ansible_collections.amazon.aws.plugins.module_utils.acm"
diff --git a/tests/unit/module_utils/test_cloudfront_facts.py b/tests/unit/module_utils/test_cloudfront_facts.py
index 8166e94573a..774d6bb10b5 100644
--- a/tests/unit/module_utils/test_cloudfront_facts.py
+++ b/tests/unit/module_utils/test_cloudfront_facts.py
@@ -13,13 +13,13 @@
# Handled by HAS_BOTO3
pass
-from ansible_collections.amazon.aws.plugins.module_utils.cloudfront_facts import (
- CloudFrontFactsServiceManager,
- CloudFrontFactsServiceManagerFailure,
- cloudfront_facts_keyed_list_helper,
-)
-from unittest.mock import MagicMock, patch, call
+from unittest.mock import MagicMock
+from unittest.mock import call
+from unittest.mock import patch
+from ansible_collections.amazon.aws.plugins.module_utils.cloudfront_facts import CloudFrontFactsServiceManager
+from ansible_collections.amazon.aws.plugins.module_utils.cloudfront_facts import CloudFrontFactsServiceManagerFailure
+from ansible_collections.amazon.aws.plugins.module_utils.cloudfront_facts import cloudfront_facts_keyed_list_helper
MODULE_NAME = "ansible_collections.amazon.aws.plugins.module_utils.cloudfront_facts"
MOCK_CLOUDFRONT_FACTS_KEYED_LIST_HELPER = MODULE_NAME + ".cloudfront_facts_keyed_list_helper"
diff --git a/tests/unit/module_utils/test_iam.py b/tests/unit/module_utils/test_iam.py
index 44f80064754..c910732886b 100644
--- a/tests/unit/module_utils/test_iam.py
+++ b/tests/unit/module_utils/test_iam.py
@@ -4,9 +4,10 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import MagicMock
+import pytest
+
try:
import botocore
except ImportError:
diff --git a/tests/unit/module_utils/test_rds.py b/tests/unit/module_utils/test_rds.py
index eb90acca77b..51a715151bf 100644
--- a/tests/unit/module_utils/test_rds.py
+++ b/tests/unit/module_utils/test_rds.py
@@ -4,9 +4,10 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
import sys
-import pytest
from unittest.mock import MagicMock
+import pytest
+
if sys.version_info < (3, 7):
pytest.skip("contextlib.nullcontext was introduced in Python 3.7", allow_module_level=True)
diff --git a/tests/unit/module_utils/test_s3.py b/tests/unit/module_utils/test_s3.py
index d70c9bd1b75..3770064c5b8 100644
--- a/tests/unit/module_utils/test_s3.py
+++ b/tests/unit/module_utils/test_s3.py
@@ -4,12 +4,15 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
import random
import string
+from unittest.mock import MagicMock
+from unittest.mock import call
+from unittest.mock import patch
+
+import pytest
from ansible_collections.amazon.aws.plugins.module_utils import s3
-from unittest.mock import MagicMock, patch, call
try:
import botocore
diff --git a/tests/unit/plugin_utils/base/test_plugin.py b/tests/unit/plugin_utils/base/test_plugin.py
index 93007beb202..f374934fd2f 100644
--- a/tests/unit/plugin_utils/base/test_plugin.py
+++ b/tests/unit/plugin_utils/base/test_plugin.py
@@ -3,11 +3,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
-from unittest.mock import call
+import warnings
from unittest.mock import MagicMock
+from unittest.mock import call
from unittest.mock import sentinel
-import warnings
+
+import pytest
from ansible.errors import AnsibleError
diff --git a/tests/unit/plugin_utils/botocore/test_boto3_conn_plugin.py b/tests/unit/plugin_utils/botocore/test_boto3_conn_plugin.py
index 19062b81aad..766257d3b0d 100644
--- a/tests/unit/plugin_utils/botocore/test_boto3_conn_plugin.py
+++ b/tests/unit/plugin_utils/botocore/test_boto3_conn_plugin.py
@@ -8,10 +8,11 @@
except ImportError:
pass
-import pytest
from unittest.mock import MagicMock
-from unittest.mock import sentinel
from unittest.mock import call
+from unittest.mock import sentinel
+
+import pytest
import ansible_collections.amazon.aws.plugins.plugin_utils.botocore as utils_botocore
diff --git a/tests/unit/plugin_utils/botocore/test_get_aws_region.py b/tests/unit/plugin_utils/botocore/test_get_aws_region.py
index 6a0d18222bc..e3f18282e27 100644
--- a/tests/unit/plugin_utils/botocore/test_get_aws_region.py
+++ b/tests/unit/plugin_utils/botocore/test_get_aws_region.py
@@ -3,10 +3,11 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import MagicMock
-from unittest.mock import sentinel
from unittest.mock import call
+from unittest.mock import sentinel
+
+import pytest
import ansible_collections.amazon.aws.plugins.plugin_utils.botocore as utils_botocore
from ansible_collections.amazon.aws.plugins.module_utils.exceptions import AnsibleBotocoreError
diff --git a/tests/unit/plugin_utils/botocore/test_get_connection_info.py b/tests/unit/plugin_utils/botocore/test_get_connection_info.py
index a0b1c3d9fd6..95c3ae54f88 100644
--- a/tests/unit/plugin_utils/botocore/test_get_connection_info.py
+++ b/tests/unit/plugin_utils/botocore/test_get_connection_info.py
@@ -3,10 +3,11 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import MagicMock
-from unittest.mock import sentinel
from unittest.mock import call
+from unittest.mock import sentinel
+
+import pytest
import ansible_collections.amazon.aws.plugins.plugin_utils.botocore as utils_botocore
from ansible_collections.amazon.aws.plugins.module_utils.exceptions import AnsibleBotocoreError
diff --git a/tests/unit/plugin_utils/connection/test_connection_base.py b/tests/unit/plugin_utils/connection/test_connection_base.py
index f03b7cc8b76..8708cf045ff 100644
--- a/tests/unit/plugin_utils/connection/test_connection_base.py
+++ b/tests/unit/plugin_utils/connection/test_connection_base.py
@@ -3,11 +3,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
-from unittest.mock import call
from unittest.mock import MagicMock
+from unittest.mock import call
from unittest.mock import sentinel
+import pytest
+
from ansible.errors import AnsibleConnectionFailure
import ansible_collections.amazon.aws.plugins.plugin_utils.connection as utils_connection
diff --git a/tests/unit/plugin_utils/inventory/test_inventory_base.py b/tests/unit/plugin_utils/inventory/test_inventory_base.py
index 7d180e6e40c..32eb3f7abf4 100644
--- a/tests/unit/plugin_utils/inventory/test_inventory_base.py
+++ b/tests/unit/plugin_utils/inventory/test_inventory_base.py
@@ -3,13 +3,15 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
-from unittest.mock import call
from unittest.mock import MagicMock
+from unittest.mock import call
from unittest.mock import patch
from unittest.mock import sentinel
+import pytest
+
import ansible.plugins.inventory as base_inventory
+
import ansible_collections.amazon.aws.plugins.plugin_utils.inventory as utils_inventory
diff --git a/tests/unit/plugin_utils/inventory/test_inventory_clients.py b/tests/unit/plugin_utils/inventory/test_inventory_clients.py
index 22a9f4014a8..82831ac565e 100644
--- a/tests/unit/plugin_utils/inventory/test_inventory_clients.py
+++ b/tests/unit/plugin_utils/inventory/test_inventory_clients.py
@@ -3,12 +3,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-from unittest.mock import call
from unittest.mock import MagicMock
+from unittest.mock import call
from unittest.mock import sentinel
-import ansible_collections.amazon.aws.plugins.plugin_utils.inventory as utils_inventory
import ansible_collections.amazon.aws.plugins.plugin_utils.base as utils_base
+import ansible_collections.amazon.aws.plugins.plugin_utils.inventory as utils_inventory
# import ansible_collections.amazon.aws.plugins.module_utils.
diff --git a/tests/unit/plugin_utils/lookup/test_lookup_base.py b/tests/unit/plugin_utils/lookup/test_lookup_base.py
index 2ba27911d18..7e90ecdeb10 100644
--- a/tests/unit/plugin_utils/lookup/test_lookup_base.py
+++ b/tests/unit/plugin_utils/lookup/test_lookup_base.py
@@ -3,11 +3,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
-from unittest.mock import call
from unittest.mock import MagicMock
+from unittest.mock import call
from unittest.mock import sentinel
+import pytest
+
from ansible.errors import AnsibleLookupError
import ansible_collections.amazon.aws.plugins.plugin_utils.lookup as utils_lookup
diff --git a/tests/unit/plugins/inventory/test_aws_ec2.py b/tests/unit/plugins/inventory/test_aws_ec2.py
index 72da05a1fcc..d136880c3b8 100644
--- a/tests/unit/plugins/inventory/test_aws_ec2.py
+++ b/tests/unit/plugins/inventory/test_aws_ec2.py
@@ -17,8 +17,11 @@
# You should have received a copy of the GNU General Public License
# along with Ansible. If not, see .
+from unittest.mock import MagicMock
+from unittest.mock import call
+from unittest.mock import patch
+
import pytest
-from unittest.mock import MagicMock, patch, call
try:
import botocore
@@ -27,13 +30,12 @@
pass
from ansible.errors import AnsibleError
-from ansible_collections.amazon.aws.plugins.inventory.aws_ec2 import (
- InventoryModule,
- _get_tag_hostname,
- _prepare_host_vars,
- _compile_values,
- _get_boto_attr_chain,
-)
+
+from ansible_collections.amazon.aws.plugins.inventory.aws_ec2 import InventoryModule
+from ansible_collections.amazon.aws.plugins.inventory.aws_ec2 import _compile_values
+from ansible_collections.amazon.aws.plugins.inventory.aws_ec2 import _get_boto_attr_chain
+from ansible_collections.amazon.aws.plugins.inventory.aws_ec2 import _get_tag_hostname
+from ansible_collections.amazon.aws.plugins.inventory.aws_ec2 import _prepare_host_vars
@pytest.fixture()
diff --git a/tests/unit/plugins/inventory/test_aws_rds.py b/tests/unit/plugins/inventory/test_aws_rds.py
index 96ca05bb8cb..53be24a4847 100644
--- a/tests/unit/plugins/inventory/test_aws_rds.py
+++ b/tests/unit/plugins/inventory/test_aws_rds.py
@@ -18,13 +18,14 @@
# along with Ansible. If not, see .
import copy
-import pytest
import random
import string
from unittest.mock import MagicMock
from unittest.mock import call
from unittest.mock import patch
+import pytest
+
try:
import botocore
except ImportError:
@@ -32,17 +33,15 @@
pass
from ansible.errors import AnsibleError
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import HAS_BOTO3
-from ansible_collections.amazon.aws.plugins.inventory.aws_rds import (
- InventoryModule,
- _find_hosts_with_valid_statuses,
- _get_rds_hostname,
- _add_tags_for_rds_hosts,
- _describe_db_clusters,
- _describe_db_instances,
- ansible_dict_to_boto3_filter_list,
-)
+from ansible_collections.amazon.aws.plugins.inventory.aws_rds import InventoryModule
+from ansible_collections.amazon.aws.plugins.inventory.aws_rds import _add_tags_for_rds_hosts
+from ansible_collections.amazon.aws.plugins.inventory.aws_rds import _describe_db_clusters
+from ansible_collections.amazon.aws.plugins.inventory.aws_rds import _describe_db_instances
+from ansible_collections.amazon.aws.plugins.inventory.aws_rds import _find_hosts_with_valid_statuses
+from ansible_collections.amazon.aws.plugins.inventory.aws_rds import _get_rds_hostname
+from ansible_collections.amazon.aws.plugins.inventory.aws_rds import ansible_dict_to_boto3_filter_list
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import HAS_BOTO3
if not HAS_BOTO3:
pytestmark = pytest.mark.skip("test_aws_rds.py requires the python modules 'boto3' and 'botocore'")
diff --git a/tests/unit/plugins/modules/conftest.py b/tests/unit/plugins/modules/conftest.py
index 166eaf7d3d9..7a870163c11 100644
--- a/tests/unit/plugins/modules/conftest.py
+++ b/tests/unit/plugins/modules/conftest.py
@@ -5,9 +5,9 @@
import pytest
-from ansible.module_utils.six import string_types
from ansible.module_utils._text import to_bytes
from ansible.module_utils.common._collections_compat import MutableMapping
+from ansible.module_utils.six import string_types
@pytest.fixture
diff --git a/tests/unit/plugins/modules/ec2_instance/test_build_run_instance_spec.py b/tests/unit/plugins/modules/ec2_instance/test_build_run_instance_spec.py
index fdfbf13e758..a64c1696166 100644
--- a/tests/unit/plugins/modules/ec2_instance/test_build_run_instance_spec.py
+++ b/tests/unit/plugins/modules/ec2_instance/test_build_run_instance_spec.py
@@ -3,9 +3,10 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import sentinel
+import pytest
+
import ansible_collections.amazon.aws.plugins.modules.ec2_instance as ec2_instance_module
diff --git a/tests/unit/plugins/modules/ec2_instance/test_determine_iam_role.py b/tests/unit/plugins/modules/ec2_instance/test_determine_iam_role.py
index 0bd9a284e81..7645d555950 100644
--- a/tests/unit/plugins/modules/ec2_instance/test_determine_iam_role.py
+++ b/tests/unit/plugins/modules/ec2_instance/test_determine_iam_role.py
@@ -3,13 +3,14 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
import sys
from unittest.mock import MagicMock
from unittest.mock import sentinel
-import ansible_collections.amazon.aws.plugins.modules.ec2_instance as ec2_instance_module
+import pytest
+
import ansible_collections.amazon.aws.plugins.module_utils.arn as utils_arn
+import ansible_collections.amazon.aws.plugins.modules.ec2_instance as ec2_instance_module
from ansible_collections.amazon.aws.plugins.module_utils.botocore import HAS_BOTO3
try:
diff --git a/tests/unit/plugins/modules/ec2_security_group/test_expand_rules.py b/tests/unit/plugins/modules/ec2_security_group/test_expand_rules.py
index 9c89f847ce7..1abfd526cdf 100644
--- a/tests/unit/plugins/modules/ec2_security_group/test_expand_rules.py
+++ b/tests/unit/plugins/modules/ec2_security_group/test_expand_rules.py
@@ -3,10 +3,11 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
import sys
from unittest.mock import sentinel
+import pytest
+
import ansible_collections.amazon.aws.plugins.modules.ec2_security_group as ec2_security_group_module
PORT_EXPANSION = [
diff --git a/tests/unit/plugins/modules/ec2_security_group/test_formatting.py b/tests/unit/plugins/modules/ec2_security_group/test_formatting.py
index 4521a6508ce..358512a008a 100644
--- a/tests/unit/plugins/modules/ec2_security_group/test_formatting.py
+++ b/tests/unit/plugins/modules/ec2_security_group/test_formatting.py
@@ -3,9 +3,10 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import sentinel
+import pytest
+
import ansible_collections.amazon.aws.plugins.modules.ec2_security_group as ec2_security_group_module
SORT_ORDER = [
diff --git a/tests/unit/plugins/modules/ec2_security_group/test_get_target_from_rule.py b/tests/unit/plugins/modules/ec2_security_group/test_get_target_from_rule.py
index 98e5f8b5c7a..34fa8de1a46 100644
--- a/tests/unit/plugins/modules/ec2_security_group/test_get_target_from_rule.py
+++ b/tests/unit/plugins/modules/ec2_security_group/test_get_target_from_rule.py
@@ -4,9 +4,10 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from copy import deepcopy
-import pytest
from unittest.mock import sentinel
+import pytest
+
import ansible_collections.amazon.aws.plugins.modules.ec2_security_group as ec2_security_group_module
diff --git a/tests/unit/plugins/modules/ec2_security_group/test_validate_ip.py b/tests/unit/plugins/modules/ec2_security_group/test_validate_ip.py
index c3473aa53ae..eb2de759619 100644
--- a/tests/unit/plugins/modules/ec2_security_group/test_validate_ip.py
+++ b/tests/unit/plugins/modules/ec2_security_group/test_validate_ip.py
@@ -3,10 +3,11 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
+import warnings
from unittest.mock import MagicMock
from unittest.mock import sentinel
-import warnings
+
+import pytest
import ansible_collections.amazon.aws.plugins.modules.ec2_security_group as ec2_security_group_module
diff --git a/tests/unit/plugins/modules/ec2_security_group/test_validate_rule.py b/tests/unit/plugins/modules/ec2_security_group/test_validate_rule.py
index 34d4f45f775..9949c1b5ccd 100644
--- a/tests/unit/plugins/modules/ec2_security_group/test_validate_rule.py
+++ b/tests/unit/plugins/modules/ec2_security_group/test_validate_rule.py
@@ -4,11 +4,11 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from copy import deepcopy
+
import pytest
import ansible_collections.amazon.aws.plugins.modules.ec2_security_group as ec2_security_group_module
-
VALID_RULES = [
dict(
proto="all",
diff --git a/tests/unit/plugins/modules/test_backup_restore_job_info.py b/tests/unit/plugins/modules/test_backup_restore_job_info.py
index 3f46074ed90..51c495e30cb 100644
--- a/tests/unit/plugins/modules/test_backup_restore_job_info.py
+++ b/tests/unit/plugins/modules/test_backup_restore_job_info.py
@@ -3,11 +3,13 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import MagicMock
from unittest.mock import patch
+import pytest
+
from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.modules import backup_restore_job_info
module_name = "ansible_collections.amazon.aws.plugins.modules.backup_restore_job_info"
diff --git a/tests/unit/plugins/modules/test_cloudformation.py b/tests/unit/plugins/modules/test_cloudformation.py
index 8fbefebbf84..fd0b7ca7568 100644
--- a/tests/unit/plugins/modules/test_cloudformation.py
+++ b/tests/unit/plugins/modules/test_cloudformation.py
@@ -5,6 +5,12 @@
import pytest
+from ansible_collections.amazon.aws.plugins.module_utils.botocore import boto_exception
+from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
+from ansible_collections.amazon.aws.plugins.module_utils.retries import RetryingBotoClientWrapper
+from ansible_collections.amazon.aws.plugins.modules import cloudformation as cfn_module
+
+# isort: off
# Magic...
# pylint: disable-next=unused-import
from ansible_collections.amazon.aws.tests.unit.utils.amazon_placebo_fixtures import maybe_sleep
@@ -12,11 +18,7 @@
# pylint: disable-next=unused-import
from ansible_collections.amazon.aws.tests.unit.utils.amazon_placebo_fixtures import placeboify
-from ansible_collections.amazon.aws.plugins.module_utils.botocore import boto_exception
-from ansible_collections.amazon.aws.plugins.module_utils.retries import RetryingBotoClientWrapper
-from ansible_collections.amazon.aws.plugins.module_utils.retries import AWSRetry
-
-from ansible_collections.amazon.aws.plugins.modules import cloudformation as cfn_module
+# isort: on
basic_yaml_tpl = """
---
diff --git a/tests/unit/plugins/modules/test_ec2_ami.py b/tests/unit/plugins/modules/test_ec2_ami.py
index 2ac59d9c427..b1e23451ba9 100644
--- a/tests/unit/plugins/modules/test_ec2_ami.py
+++ b/tests/unit/plugins/modules/test_ec2_ami.py
@@ -2,8 +2,8 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from unittest.mock import MagicMock
-from unittest.mock import patch
from unittest.mock import call
+from unittest.mock import patch
import pytest
diff --git a/tests/unit/plugins/modules/test_ec2_ami_info.py b/tests/unit/plugins/modules/test_ec2_ami_info.py
index 797e29004ad..c33553ee55a 100644
--- a/tests/unit/plugins/modules/test_ec2_ami_info.py
+++ b/tests/unit/plugins/modules/test_ec2_ami_info.py
@@ -3,11 +3,16 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
-from unittest.mock import MagicMock, patch, ANY, call
+from unittest.mock import ANY
+from unittest.mock import MagicMock
+from unittest.mock import call
+from unittest.mock import patch
+
import botocore.exceptions
import pytest
+from ansible.module_utils.common.dict_transformations import camel_dict_to_snake_dict
+
from ansible_collections.amazon.aws.plugins.modules import ec2_ami_info
module_name = "ansible_collections.amazon.aws.plugins.modules.ec2_ami_info"
diff --git a/tests/unit/plugins/modules/test_ec2_eni_info.py b/tests/unit/plugins/modules/test_ec2_eni_info.py
index f825bffa8ae..d6323601dc9 100644
--- a/tests/unit/plugins/modules/test_ec2_eni_info.py
+++ b/tests/unit/plugins/modules/test_ec2_eni_info.py
@@ -3,11 +3,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
from unittest.mock import MagicMock
from unittest.mock import call
from unittest.mock import patch
+import pytest
+
from ansible_collections.amazon.aws.plugins.modules import ec2_eni_info
module_name = "ansible_collections.amazon.aws.plugins.modules.ec2_eni_info"
diff --git a/tests/unit/plugins/modules/test_ec2_key.py b/tests/unit/plugins/modules/test_ec2_key.py
index de5e45a3622..cbcf025881b 100644
--- a/tests/unit/plugins/modules/test_ec2_key.py
+++ b/tests/unit/plugins/modules/test_ec2_key.py
@@ -1,15 +1,15 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
+import copy
import datetime
-from dateutil.tz import tzutc
-import pytest
+from unittest.mock import ANY
from unittest.mock import MagicMock
from unittest.mock import patch
-from unittest.mock import ANY
import botocore
-import copy
+import pytest
+from dateutil.tz import tzutc
from ansible.module_utils._text import to_bytes
diff --git a/tests/unit/plugins/modules/test_ec2_metadata_facts.py b/tests/unit/plugins/modules/test_ec2_metadata_facts.py
index 10c4a341adc..23ba850030e 100644
--- a/tests/unit/plugins/modules/test_ec2_metadata_facts.py
+++ b/tests/unit/plugins/modules/test_ec2_metadata_facts.py
@@ -3,10 +3,11 @@
import gzip
import io
-import pytest
from unittest.mock import MagicMock
from unittest.mock import patch
+import pytest
+
from ansible_collections.amazon.aws.plugins.modules import ec2_metadata_facts
module_name = "ansible_collections.amazon.aws.plugins.modules.ec2_metadata_facts"
diff --git a/tests/unit/plugins/modules/test_ec2_snapshot_info.py b/tests/unit/plugins/modules/test_ec2_snapshot_info.py
index 8bc493baf4b..34767d38ac4 100644
--- a/tests/unit/plugins/modules/test_ec2_snapshot_info.py
+++ b/tests/unit/plugins/modules/test_ec2_snapshot_info.py
@@ -3,11 +3,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
-from unittest.mock import MagicMock
-from unittest.mock import patch
from unittest.mock import ANY
+from unittest.mock import MagicMock
from unittest.mock import call
+from unittest.mock import patch
+
+import pytest
from ansible_collections.amazon.aws.plugins.modules import ec2_snapshot_info
diff --git a/tests/unit/plugins/modules/test_ec2_vpc_dhcp_option.py b/tests/unit/plugins/modules/test_ec2_vpc_dhcp_option.py
index 7118bd91577..27517115e1e 100644
--- a/tests/unit/plugins/modules/test_ec2_vpc_dhcp_option.py
+++ b/tests/unit/plugins/modules/test_ec2_vpc_dhcp_option.py
@@ -5,13 +5,13 @@
from unittest.mock import patch
+from ansible_collections.amazon.aws.plugins.modules import ec2_vpc_dhcp_option as dhcp_module
+from ansible_collections.amazon.aws.tests.unit.plugins.modules.utils import ModuleTestCase
+
# Magic... Incorrectly identified by pylint as unused
# pylint: disable-next=unused-import
from ansible_collections.amazon.aws.tests.unit.utils.amazon_placebo_fixtures import placeboify
-from ansible_collections.amazon.aws.plugins.modules import ec2_vpc_dhcp_option as dhcp_module
-from ansible_collections.amazon.aws.tests.unit.plugins.modules.utils import ModuleTestCase
-
test_module_params = {
"domain_name": "us-west-2.compute.internal",
"dns_servers": ["AmazonProvidedDNS"],
diff --git a/tests/unit/plugins/modules/test_kms_key.py b/tests/unit/plugins/modules/test_kms_key.py
index 93565d34146..b2d8e0b50bc 100644
--- a/tests/unit/plugins/modules/test_kms_key.py
+++ b/tests/unit/plugins/modules/test_kms_key.py
@@ -9,7 +9,6 @@
from ansible_collections.amazon.aws.plugins.modules import kms_key
-
module_name = "ansible_collections.amazon.aws.plugins.modules.kms_key"
key_details = {
"KeyMetadata": {
diff --git a/tests/unit/plugins/modules/test_lambda_layer.py b/tests/unit/plugins/modules/test_lambda_layer.py
index c241c6c82c2..cd3032ef7ec 100644
--- a/tests/unit/plugins/modules/test_lambda_layer.py
+++ b/tests/unit/plugins/modules/test_lambda_layer.py
@@ -4,9 +4,12 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
+from unittest.mock import MagicMock
+from unittest.mock import call
+from unittest.mock import patch
+
import pytest
-from unittest.mock import MagicMock, call, patch
from ansible_collections.amazon.aws.plugins.modules import lambda_layer
diff --git a/tests/unit/plugins/modules/test_lambda_layer_info.py b/tests/unit/plugins/modules/test_lambda_layer_info.py
index a6fa09ed965..2016254011b 100644
--- a/tests/unit/plugins/modules/test_lambda_layer_info.py
+++ b/tests/unit/plugins/modules/test_lambda_layer_info.py
@@ -4,13 +4,15 @@
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
+from unittest.mock import MagicMock
+from unittest.mock import call
+from unittest.mock import patch
+
import pytest
from botocore.exceptions import BotoCoreError
-from unittest.mock import MagicMock, call, patch
from ansible_collections.amazon.aws.plugins.modules import lambda_layer_info
-
mod__list_layer_versions = "ansible_collections.amazon.aws.plugins.modules.lambda_layer_info._list_layer_versions"
mod__list_layers = "ansible_collections.amazon.aws.plugins.modules.lambda_layer_info._list_layers"
mod_list_layer_versions = "ansible_collections.amazon.aws.plugins.modules.lambda_layer_info.list_layer_versions"
diff --git a/tests/unit/plugins/modules/test_rds_instance_info.py b/tests/unit/plugins/modules/test_rds_instance_info.py
index 8f881f81016..8db20f1a077 100644
--- a/tests/unit/plugins/modules/test_rds_instance_info.py
+++ b/tests/unit/plugins/modules/test_rds_instance_info.py
@@ -2,13 +2,13 @@
#
# This file is part of Ansible
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-import pytest
-from unittest.mock import MagicMock
-from unittest.mock import patch
from unittest.mock import ANY
+from unittest.mock import MagicMock
from unittest.mock import call
+from unittest.mock import patch
import botocore.exceptions
+import pytest
from ansible_collections.amazon.aws.plugins.modules import rds_instance_info
diff --git a/tests/unit/plugins/modules/test_s3_object.py b/tests/unit/plugins/modules/test_s3_object.py
index 863001335a3..deeb1c4a0c4 100644
--- a/tests/unit/plugins/modules/test_s3_object.py
+++ b/tests/unit/plugins/modules/test_s3_object.py
@@ -5,9 +5,9 @@
from unittest.mock import MagicMock
from unittest.mock import patch
-import pytest
import botocore.exceptions
+import pytest
from ansible_collections.amazon.aws.plugins.modules import s3_object
diff --git a/tests/unit/utils/amazon_placebo_fixtures.py b/tests/unit/utils/amazon_placebo_fixtures.py
index 3e06f97eb8d..afe91adad43 100644
--- a/tests/unit/utils/amazon_placebo_fixtures.py
+++ b/tests/unit/utils/amazon_placebo_fixtures.py
@@ -1,10 +1,13 @@
-from __future__ import absolute_import, division, print_function
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
__metaclass__ = type
import errno
import os
import time
+
import mock
import pytest
diff --git a/tox.ini b/tox.ini
index 63409e54498..4d68c5069ee 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,11 @@
[tox]
-skipsdist=True
+skipsdist = True
envlist = clean,ansible{2.12,2.13}-py{38,39,310}-{with_constraints,without_constraints},linters
+# Tox4 supports labels which allow us to group the environments rather than dumping all commands into a single environment
+labels =
+ format = black, isort
+ lint = complexity-report, black-lint, isort-lint, flake8-lint
+ units = ansible{2.12,2.13}-py{38,39,310}-{with_constraints,without_constraints}
[testenv]
description = Run the test-suite and generate a HTML coverage report
@@ -34,12 +39,38 @@ deps =
commands =
black {toxinidir}/plugins {toxinidir}/tests
+[testenv:black-lint]
+deps =
+ {[testenv:black]deps}
+commands =
+ black -v --check --diff {toxinidir}/plugins {toxinidir}/tests
+
+[testenv:isort]
+deps =
+ isort
+commands =
+ isort {toxinidir}/plugins {toxinidir}/tests
+
+[testenv:isort-lint]
+deps =
+ {[testenv:isort]deps}
+commands =
+ isort --check-only --diff {toxinidir}/plugins {toxinidir}/tests
+
+[testenv:flake8-lint]
+deps =
+ flake8
+commands =
+ flake8 {posargs} {toxinidir}/plugins {toxinidir}/tests
+
[testenv:linters]
deps =
{[testenv:black]deps}
+ {[testenv:isort]deps}
flake8
commands =
black -v --check {toxinidir}/plugins {toxinidir}/tests
+ isort --check-only --diff {toxinidir}/plugins {toxinidir}/tests
flake8 {posargs} {toxinidir}/plugins {toxinidir}/tests
[flake8]