- amazon.aws collection - Due to the AWS SDKs announcing the end of support for Python less than 3.6 (https://boto3.amazonaws.com/v1/documentation/api/1.17.64/guide/migrationpy3.html) this collection now requires Python 3.6+ (ansible-collections#298).
- amazon.aws collection - The amazon.aws collection has dropped support for
botocore<1.18.0
andboto3<1.15.0
. Most modules will continue to work with older versions of the AWS SDK, however compatability with older versions of the SDK is not guaranteed and will not be tested. When using older versions of the SDK a warning will be emitted by Ansible (ansible-collections#502). - ec2_instance - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_instance
. - ec2_instance_info - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_instance_info
. - ec2_vpc_endpoint - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_endpoint
. - ec2_vpc_endpoint_facts - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_endpoint_info
. - ec2_vpc_endpoint_info - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_endpoint_info
. - ec2_vpc_endpoint_service_info - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_endpoint_service_info
. - ec2_vpc_igw - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_igw
. - ec2_vpc_igw_facts - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_igw_facts
. - ec2_vpc_igw_info - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_igw_info
. - ec2_vpc_nat_gateway - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_nat_gateway
. - ec2_vpc_nat_gateway_facts - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_nat_gateway_info
. - ec2_vpc_nat_gateway_info - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_nat_gateway_info
. - ec2_vpc_route_table - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_route_table
. - ec2_vpc_route_table_facts - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_route_table_facts
. - ec2_vpc_route_table_info - The module has been migrated from the
community.aws
collection. Playbooks using the Fully Qualified Collection Name for this module should be updated to useamazon.aws.ec2_vpc_route_table_info
.
- aws_ec2 - use a generator rather than list comprehension (ansible-collections#465).
- aws_s3 - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- aws_s3 - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- aws_s3 - add
tags
andpurge_tags
features for an S3 object (ansible-collections#335) - aws_s3 - new mode to copy existing on another bucket (ansible-collections#359).
- aws_secret - added support for gracefully handling deleted secrets (ansible-collections#455).
- aws_ssm - add "on_missing" and "on_denied" option (ansible-collections#370).
- cloudformation - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- cloudformation - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- ec2_ami - ensure tags are propagated to the snapshot(s) when creating an AMI (ansible-collections#437).
- ec2_eni - fix idempotency when
security_groups
attribute is specified (ansible-collections#337). - ec2_eni - timeout increased when waiting for ENIs to finish detaching (ansible-collections#501).
- ec2_group - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- ec2_group - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- ec2_group - use a generator rather than list comprehension (ansible-collections#465).
- ec2_group - use system ipaddress module, available with Python >= 3.3, instead of vendored copy (ansible-collections#461).
- ec2_instance - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- ec2_instance - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- ec2_instance - add
throughput
parameter for gp3 volume types (ansible-collections#433). - ec2_instance - add support for controlling metadata options (ansible-collections#414).
- ec2_instance - remove unnecessary raise when exiting with a failure (ansible-collections#460).
- ec2_instance_info - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- ec2_instance_info - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- ec2_snapshot - migrated to use the boto3 python library (ansible-collections#356).
- ec2_spot_instance_info - Added a new module that describes the specified Spot Instance requests (ansible-collections#487).
- ec2_vol - add parameter
multi_attach
to support Multi-Attach on volume creation/update (ansible-collections#362). - ec2_vol - relax the boto3/botocore requirements and only require botocore 1.19.27 for modifying the
throughput
parameter (ansible-collections#346). - ec2_vpc_dhcp_option - Now also returns a boto3-style resource description in the
dhcp_options
result key. This includes any tags for thedhcp_options_id
and has the same format as the current return value ofec2_vpc_dhcp_option_info
. (ansible-collections#252) - ec2_vpc_dhcp_option_info - Now also returns a user-friendly
dhcp_config
key that matches the historicalnew_config
key from ec2_vpc_dhcp_option, and alleviates the need to useitems2dict(key_name='key', value_name='values')
when parsing the output of the module. (ansible-collections#252) - ec2_vpc_subnet - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- ec2_vpc_subnet - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- integration tests - remove dependency with collection
community.general
(ansible-collections#361). - module_utils/waiter - add RDS cluster
cluster_available
waiter (ansible-collections#464). - module_utils/waiter - add RDS cluster
cluster_deleted
waiter (ansible-collections#464). - module_utils/waiter - add Route53
resource_record_sets_changed
waiter (ansible-collections#350). - s3_bucket - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- s3_bucket - Tests for compatability with older versions of the AWS SDKs have been removed (ansible-collections#442).
- s3_bucket - add new option
object_ownership
to configure object ownership (ansible-collections#311) - s3_bucket - updated to use HeadBucket instead of ListBucket when testing for bucket existence (ansible-collections#357).
- ec2_instance - instance wait for state behaviour has changed. If plays require the old behavior of waiting for the instance monitoring status to become
OK
when launching a new instance, the action will need to specifystate: started
(ansible-collections#481). - ec2_snapshot - support for waiting indefinitely has been dropped, new default is 10 minutes (ansible-collections#356).
- ec2_vol_info - return
attachment_set
is now a list of attachments with Multi-Attach support on disk. (ansible-collections#362). - ec2_vpc_dhcp_option - The module has been refactored to use boto3. Keys and value types returned by the module are now consistent, which is a change from the previous behaviour. A
purge_tags
option has been added, which defaults toTrue
. (ansible-collections#252) - ec2_vpc_dhcp_option_info - Now preserves case for tag keys in return value. (ansible-collections#252)
- module_utils.core - The boto3 switch has been removed from the region parameter (ansible-collections#287).
- module_utils/compat - vendored copy of ipaddress removed (ansible-collections#461).
- module_utils/core - updated the
scrub_none_parameters
function so thatdescend_into_lists
is set toTrue
by default (ansible-collections#297).
- ec2 - the boto based
ec2
module has been deprecated in favour of the boto3 basedec2_instance
module. Theec2
module will be removed in release 4.0.0 (ansible-collections#424). - ec2_vpc_dhcp_option - The
new_config
return key has been deprecated and will be removed in a future release. It will be replaced bydhcp_config
. Both values are returned in the interim. (ansible-collections#252)
- aws_s3 - Fix upload permission when an S3 bucket ACL policy requires a particular canned ACL (ansible-collections#318)
- ec2_ami - Fix ami issue when creating an ami with no_device parameter (ansible-collections#386)
- ec2_instance -
ec2_instance
was waiting on EC2 instance monitoring status to beOK
when launching a new instance. This could cause a play to wait multiple minutes for AWS's monitoring to complete status checks (ansible-collections#481). - ec2_snapshot - Fix snapshot issue when capturing a snapshot of a volume without tags (ansible-collections#383)
- ec2_vol - Fixes
changed
status whenmodify_volume
is used, but no new disk is being attached. The module incorrectly reported that no change had occurred even when disks had been modified (iops, throughput, type, etc.). (ansible-collections#482). - ec2_vol - fix iops setting and enforce iops/throughput parameters usage (ansible-collections#334)
- inventory -
include_filters
won't be ignored anymore iffilters
is not set (ansible-collections#457). - s3_bucket - Fix error handling when attempting to set a feature that is not implemented (ansible-collections#391).
- s3_bucket - Gracefully handle
NotImplemented
exceptions when fetching encryption settings (ansible-collections#390).
- ec2_spot_instance - request, stop, reboot or cancel spot instance
- ec2_spot_instance_info - Gather information about ec2 spot instance requests
- AWS inventory plugins - use shared HAS_BOTO3 helper rather than copying code (ansible-collections#288).
- AWS lookup plugins - use shared HAS_BOTO3 helper rather than copying code (ansible-collections#288).
- aws_account_attribute - add retries on common AWS failures (ansible-collections#295).
- aws_ec2 inventory - expose a new configuration key
use_contrib_script_compatible_ec2_tag_keys
to reproduce a behavior of the oldec2.py
inventory script. With this option enabled, each tag is exposed using aec2_tag_TAGNAME
key (ansible-collections#331). - aws_ec2 inventory - expose to new keys called
include_filters
andexclude_filters
to give the user the ability to compose an inventory with multiple queries (ansible-collections#328). - aws_ec2 inventory plugin - Added support for using Jinja2 templates in the authentication fields (ansible-collections#57).
- cloudformation - added support for StackPolicyDuringUpdateBody (ansible-collections#155).
- ec2_metadata_facts - add support for IMDSv2 (ansible-collections#43).
- ec2_snapshot_info - add the
max_results
along withnext_token_id
option (ansible-collections#321). - ec2_tag - use common code for tagging resources (ansible-collections#309).
- ec2_tag_info - use common code for tagging resources (ansible-collections#309).
- ec2_vol - add the
purge_tags
option (ansible-collections#242). - ec2_vol - use common code for tagging resources (ansible-collections#309).
- ec2_vpc_net - use a custom waiter which can handle API rate limiting (ansible-collections#270).
- ec2_vpc_subnet - use AWSRetry decorator to more consistently handle API rate limiting (ansible-collections#270).
- ec2_vpc_subnet - use common code for tagging resources (ansible-collections#309).
- module_utils.cloudfront_facts - linting cleanup (ansible-collections#291).
- module_utils.ec2 - linting cleanup (ansible-collections#291).
- module_utils/core - add a helper function
normalize_boto3_result
(ansible-collections#271). - module_utils/core - add parameter
descend_into_lists
toscrub_none_parameters
helper function (ansible-collections#262). - module_utils/ec2 - added additional helper functions for tagging EC2 resources (ansible-collections#309).
- sanity tests - add ignore.txt for 2.12 (ansible-collections#315).
- ec2_vol - create or update now preserves the existing tags, including Name (ansible-collections#229)
- ec2_vol - fix exception when platform information isn't available (ansible-collections#305).
- module_utils - the ipaddress module utility has been vendored into this collection. This eliminates the collection dependency on ansible.netcommon (which had removed the library in its 2.0 release). The ipaddress library is provided for internal use in this collection only. (ansible-collections#273)-
- aws_ec2 - Add hostname options concatenation
- aws_ec2 inventory plugin - avoid a superfluous import of
ansible.utils.display.Display
(ansible-collections#226). - aws_ec2 module - Replace inverse aws instance-state-name filters !terminated, !shutting-down in favor of postive filters pending, running, stopping, stopped. Issue 235. (ansible-collections#237)
- aws_secret - add
bypath
functionality (ansible-collections#192). - ec2_key - add AWSRetry decorator to automatically retry on common temporary failures (ansible-collections#213).
- ec2_vol - Add support for gp3 volumes and support for modifying existing volumes (ansible-collections#55).
- module_utils/elbv2 - add logic to compare_rules to suit Values list nested within dicts unique to each field type. Fixes issue (ansible-collections#187)
- various AWS plugins and module_utils - Cleanup unused imports (ansible-collections#217).
- ec2_vol - a creation or update now returns a structure with an up to date list of tags (ansible-collections#241).
- aws_caller_info - add AWSRetry decorator to automatically retry on common temporary failures (ansible-collections#208)
- aws_s3 - Add support for uploading templated content (ansible-collections#20).
- aws_secret - add "on_missing" and "on_denied" option (ansible-collections#122).
- ec2_ami - Add retries for ratelimiting related errors (ansible-collections#195).
- ec2_ami - fixed and streamlined
max_attempts
logic when waiting for AMI creation to finish (ansible-collections#194). - ec2_ami - increased default
wait_timeout
to 1200 seconds (ansible-collections#194). - ec2_ami_info - Add retries for ratelimiting related errors (ansible-collections#195).
- ec2_eni - Improve reliability of the module by adding waiters and performing lookups by ENI ID rather than repeated searches (ansible-collections#180).
- ec2_eni_info - Improve reliability of the module by adding waiters and performing lookups by ENI ID rather than repeated searches (ansible-collections#180).
- ec2_group - add AWSRetry decorator to automatically retry on common temporary failures (ansible-collections#207)
- ec2_group_info - add AWSRetry decorator to automatically retry on common temporary failures (ansible-collections#207)
- ec2_snapshot_info - add AWSRetry decorator to automatically retry on common temporary failures (ansible-collections#208)
- ec2_vol - Add automatic retries on AWS rate limit errors (ansible-collections#199).
- ec2_vol - ported ec2_vol to use boto3 (ansible-collections#53).
- ec2_vpc_dhcp_option_info - add AWSRetry decorator to automatically retry on common temporary failures (ansible-collections#208)
- module_utils/core - add helper function
scrub_none_parameters
to remove params set toNone
(ansible-collections/community.aws#251). - module_utils/waiters - Add retries to our waiters for the same failure codes that we retry with AWSRetry (ansible-collections#185)
- s3_bucket - Add support for managing the
public_access
settings (ansible-collections#171).
- ec2 - Code fix so module can create ec2 instances with
ec2_volume_iops
option (ansible-collections#177). - ec2 - ignore terminated instances and instances that are shutting down when starting and stopping (ansible-collections#146).
- ec2_group - Fixes error handling during tagging failures (ansible-collections#210).
- ec2_group_info - Code fix so module works with Python 3.8 (make dict immutable in loop) (ansible-collections#181)
- ec2_eni - Add support for tagging.
- ec2_eni - Port ec2_eni module to boto3 and add an integration test suite.
- ec2_eni_info - Add retries on transient AWS failures.
- ec2_eni_info - Add support for providing an ENI ID.
- ec2 module_utils - Update
ec2_connect
(boto2) behaviour so thatec2_url
overridesregion
. - module_utils.core - Support passing arbitrary extra keys to fail_json_aws, matching capabilities of fail_json.
- All AWS Modules -
aws_access_key
,aws_secret_key
andsecurity_token
will be made mutually exclusive withprofile
after 2022-06-01.
- ec2 module_utils - Ensure boto3 verify parameter isn't overridden by setting a profile (ansible-collections#129)
- s3_bucket - Ceph compatibility: treat error code NoSuchTagSetError used by Ceph synonymously to NoSuchTagSet used by AWS
- ec2 module_utils - The
AWSRetry
decorator no longer catchesNotFound
exceptions by default.NotFound
exceptions need to be explicitly added usingcatch_extra_error_codes
. Some AWS modules may see an increase in transient failures due to AWS''s eventual consistency model.
- Add aws_security_token, aws_endpoint_url and endpoint_url aliases to improve AWS module parameter naming consistency.
- Add support for aws_ca_bundle to boto3 based AWS modules
- Add support for configuring boto3 profiles using AWS_PROFILE and AWS_DEFAULT_PROFILE
- Added check_mode support to aws_az_info
- Added check_mode support to ec2_eni_info
- Added check_mode support to ec2_snapshot_info
- ansible_dict_to_boto3_filter_list - convert integers and bools to strings before using them in filters.
- aws_direct_connect_virtual_interface - add direct_connect_gateway_id parameter. This field is only applicable in private VIF cases (public=False) and is mutually exclusive to virtual_gateway_id.
- cloudformation - Return change_set_id in the cloudformation output if a change set was created.
- ec2 - deprecate allowing both group and group_id - currently we ignore group_id if both are passed.
- ec2_ami_info - allow integer and bool values for filtering images (ansible/ansible#43570).
- ec2_asg - Add support for Max Instance Lifetime
- ec2_asg - Add the ability to use mixed_instance_policy in launch template driven autoscaling groups
- ec2_asg - Migrated to AnsibleAWSModule
- ec2_placement_group - make name a required field.
- ec2_vol_info - Code cleanup and use of the AWSRetry decorator to improve stability
- ec2_vpc_net - Enable IPv6 CIDR assignment
- aws_s3 - can now delete versioned buckets even when they are not empty - set mode to delete to delete a versioned bucket and everything in it.
- cloudformation - The
template_format
option had no effect since Ansible 2.3 and will be removed after 2022-06-01 - cloudformation - the
template_format
option has been deprecated and will be removed in a later release. It has been ignored by the module since Ansible 2.3. - data_pipeline - The
version
option had no effect and will be removed in after 2022-06-01 - ec2 - in a later release, the
group
andgroup_id
options will become mutually exclusive. Currentlygroup_id
is ignored if you pass both. - ec2_ami - The
no_device
aliasNoDevice
has been deprecated and will be removed after 2022-06-01 - ec2_ami - The
virtual_name
aliasVirtualName
has been deprecated and will be removed after 2022-06-01 - ec2_eip - The
wait_timeout
option had no effect and will be removed after 2022-06-01 - ec2_key - The
wait_timeout
option had no effect and will be removed after 2022-06-01 - ec2_key - The
wait
option had no effect and will be removed after 2022-06-01 - ec2_key - the
wait_timeout
option has been deprecated and will be removed in a later release. It has had no effect since Ansible 2.5. - ec2_key - the
wait
option has been deprecated and will be removed in a later release. It has had no effect since Ansible 2.5. - ec2_lc - The
associate_public_ip_address
option had no effect and will be removed after 2022-06-01 - ec2_tag - deprecate the
list
option in favor of ec2_tag_info - ec2_tag - support for
list
as a state has been deprecated and will be removed in a later release. Theec2_tag_info
can be used to fetch the tags on an EC2 resource.
- aws_ec2 - fix idempotency when managing tags
- aws_ec2 - fix idempotency when metrics are enable
- aws_s3 - Delete objects and delete markers so versioned buckets can be removed.
- aws_s3 - Try to wait for the bucket to exist before setting the access control list.
- cloudformation_info - Fix a KeyError returning information about the stack(s).
- ec2_asg - Ensure "wait" is honored during replace operations
- ec2_launch_template - Update output to include latest_version and default_version, matching the documentation
- ec2_transit_gateway - Use AWSRetry before ClientError is handled when describing transit gateways
- ec2_transit_gateway - fixed issue where auto_attach set to yes was not being honored (ansible/ansible#61907)
- ec2_vol - fix filtering bug
- s3_bucket - Accept XNotImplemented response to support NetApp StorageGRID.