Skip to content

community.aws 4.0.0

Choose a tag to compare

@github-actions github-actions released this 10 Aug 18:19
· 477 commits to main since this release
7df17bc

Major Changes

  • community.aws collection - The amazon.aws collection has dropped support for botocore<1.20.0 and boto3<1.17.0. Most modules will continue to work with older versions of the AWS SDK, however compatibility 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 (#956).

Minor Changes

  • aws_acm - resource_tags has been added as an alias for the tags parameter (#1185).
  • aws_glue_job - resource_tags has been added as an alias for the tags parameter (#1182).
  • aws_kms - resource_tags has been added as an alias for the tags parameter (#1185).
  • aws_kms - add extra key/value pair to return data (key_policies) to return each policy as a dictionary rather than json string (#1052).
  • aws_kms - fix some bugs in integration tests and add check mode support for key rotation as well as document issues with time taken for requested changes to be reflected on AWS (#1052).
  • aws_kms - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} and purge_tags to True (#1183).
  • aws_msk_cluster - resource_tags has been added as an alias for the tags parameter (#1182).
  • aws_secret - resource_tags has been added as an alias for the tags parameter (#1182).
  • aws_secret - addition of the purge_tags parameter (#1146).
  • aws_ssm_parameter_store - add parameter_metadata to the returned values (#1241).
  • aws_step_functions_state_machine - resource_tags has been added as an alias for the tags parameter (#1182).
  • cloudfront_distribution - resource_tags has been added as an alias for the tags parameter (#1185).
  • cloudfront_distribution - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} and purge_tags to True (#1183).
  • cloudtrail - resource_tags has been added as an alias for the tags parameter (#1219).
  • cloudtrail - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} (#1219).
  • cloudtrail - updated to pass tags as part of the create API call rather than tagging the trail after creation (#1219).
  • cloudwatchlogs_log_group - adds support for returning tags (#1233).
  • cloudwatchlogs_log_group - adds support for updating tags (#1233).
  • cloudwatchlogs_log_group - now consistently returns the values as defined in the return documentation (#1233).
  • cloudwatchlogs_log_group_info - adds support for returning tags (#1233).
  • data_pipeline - resource_tags has been added as an alias for the tags parameter (#1204).
  • dms_endpoint - endpointtype and enginename no longer required when deleting an endpoint (#1234).
  • dms_endpoint - resource_tags added as an alias for tags (#1234).
  • dms_endpoint - added support for purge_tags (#1234).
  • dms_endpoint - now returns details of the endpoint (#1234).
  • dynamodb_table - resource_tags has been added as an alias for the tags parameter (#1199).
  • ec2_ami_copy - resource_tags has been added as an alias for the tags parameter (#1204).
  • ec2_asg - add check mode support (#1033).
  • ec2_asg - bugfix to make test setup run once (#1061).
  • ec2_asg_lifecycle_hook - Added check_mode support (#1060).
  • ec2_asg_lifecycle_hook - add integration tests (#1048).
  • ec2_asg_lifecycle_hook - module now returns info about Life Cycle Hook (#1048).
  • ec2_eip - resource_tags has been added as an alias for the tags parameter (#1182).
  • ec2_launch_template - resource_tags has been added as an alias for the tags parameter (#1204).
  • ec2_snapshot_copy - resource_tags has been added as an alias for the tags parameter (#1201).
  • ec2_snapshot_copy - updated to pass tags as part of the copy API call rather than tagging the snapshot after creation (#1201).
  • ec2_transit_gateway - code updated to use common ensure_ec2_tags helper (#1183).
  • ec2_transit_gateway - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} (#1183).
  • ec2_transit_gateway - wait and retry if API returns an IncorrectState error.
  • ec2_vpc_nacl - resource_tags has been added as an alias for the tags parameter (#1189).
  • ec2_vpc_nacl - add support for purge_tags parameter (#1189).
  • ec2_vpc_nacl - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} and purge_tags to True (#1189).
  • ec2_vpc_peer - resource_tags has been added as an alias for the tags parameter (#1182).
  • ec2_vpc_vgw - add support for purge_tags parameter (#1232).
  • ec2_vpc_vgw - the default behaviour for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} and purge_tags to True (#1232).
  • ec2_vpc_vgw - updated to set tags as part of VGW creation instead of tagging the VGW after creation (#1232).
  • ec2_vpc_vgw_info - added resource_tags to the return values (#1232).
  • ec2_vpc_vpn - resource_tags has been added as an alias for the tags parameter (#1185).
  • ec2_vpc_vpn - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} and purge_tags to True (#1183).
  • ecs_ecr - Will now return repository permission policy if it exists, even if we did not create or modify it. (#1171).
  • ecs_service - Now allows for a capacity_provider_strategy to be utilized when creating/updating a service (#1181).
  • ecs_task - resource_tags has been added as an alias for the tags parameter (#1204).
  • efs - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} (#1183).
  • eks_fargate_profile - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} (#1183).
  • elb_application_lb - resource_tags has been added as an alias for the tags parameter (#1182).
  • elb_network_lb - resource_tags has been added as an alias for the tags parameter (#1182).
  • elb_target_group - explicitly setting the tags parameter to the empty dict {} will now remove all tags unles purge_tags is explicitly set to False (#1183).
  • iam_policy - update broken examples and add RETURN section to documentation; add extra integration tests for idempotency check mode runs (#1093).
  • iam_role - resource_tags has been added as an alias for the tags parameter (#1182).
  • iam_role - delete inline policies prior to deleting role (#1054).
  • iam_role - remove global vars and refactor accordingly (#1054).
  • iam_user - resource_tags has been added as an alias for the tags parameter (#1182).
  • iam_user - add user value to return data structure to deprecate old iam_user (#1059).
  • lambda - resource_tags has been added as an alias for the tags parameter (#1202).
  • lambda - add kms_key_arn parameter (#1108).
  • lambda - the behavior for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} and purge_tags to True (#1202).
  • rds_cluster - resource_tags has been added as an alias for the tags parameter (#1182).
  • rds_instance - resource_tags has been added as an alias for the tags parameter (#1182).
  • rds_instance - add deletion_protection parameter (#1105).
  • rds_instance - add support for addition/removal of iam roles to db instance (#1002).
  • rds_instance_snapshot - resource_tags has been added as an alias for the tags parameter (#1200).
  • rds_instance_snapshot - add check_mode (#789).
  • rds_instance_snapshot - add copy_db_snapshot functionality (#1078).
  • rds_instance_snapshot - add integration tests (#789).
  • rds_instance_snapshot - update module to use handlers defined in module_utils/rds.py (#789).
  • rds_option_group - resource_tags has been added as an alias for the tags parameter (#1182).
  • rds_param_group - resource_tags has been added as an alias for the tags parameter (#1185).
  • rds_param_group - the default value for tags has been updated, to remove all tags the tags parameter must be explicitly set to the empty dict {} and purge_tags to True (#1183).
  • rds_subnet_group - resource_tags has been added as an alias for the tags parameter (#1182).
  • redshift - resource_tags has been added as an alias for the tags parameter (#1182).
  • route53 - add support for GeoLocation param (ansible-collections/amazon.aws#1117).
  • route53_health_check - resource_tags has been added as an alias for the tags parameter (#1185).
  • route53_info - add RETURN section to documentation (#1240).
  • route53_zone - resource_tags has been added as an alias for the tags parameter (#1185).
  • sqs_queue - resource_tags has been added as an alias for the tags parameter (#1185).
  • wafv2_ip_set - Added support for purge_tags parameter (#1205).
  • wafv2_ip_set - Added support for returning tags (#1205).
  • wafv2_ip_set - Added support for updating tags (#1205).
  • wafv2_ip_set_info - Added support for returning tags (#1205).
  • wafv2_rule_group - Added support for purge_tags parameter (#1210).
  • wafv2_rule_group - Added support for returning tags (#1210).
  • wafv2_rule_group - Added support for updating tags (#1210).
  • wafv2_rule_group_info - Added support for returning tags (#1210).
  • wafv2_web_acl - Added support for purge_tags (#1218).
  • wafv2_web_acl - Added support for updating tags (#1218).
  • wafv2_web_acl - resource_tags has been added as an alias for the tags parameter (#1218).
  • wafv2_web_acl - added support for returning tags (#1218).
  • wafv2_web_acl_info - added support for returning tags (#1218).

Breaking Changes / Porting Guide

  • Tags beginning with aws: will not be removed when purging tags, these tags are reserved by Amazon and may not be updated or deleted (ansible-collections/amazon.aws#817).
  • aws_secret - tags are no longer removed when the tags parameter is not set. To remove all tags set tags={} (#1146).
  • community.aws collection - The community.aws collection has now dropped support for and any requirements upon the original boto AWS SDK, and now uses the boto3/botocore AWS SDK (#898).
  • community.aws collection - the profile parameter is now mutually exclusive with the aws_access_key, aws_secret_key and security_token parameters (ansible-collections/amazon.aws#834).
  • 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 use amazon.aws.ec2_vpc_route_table.
  • 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 use amazon.aws.ec2_vpc_route_table_info.
  • elb_instance - the ec2_elbs fact has been removed, updated_elbs has been added the return values and includes the same information (#1173).
  • elb_network_lb - the default value of state has changed from absent to present (#1167).
  • script_inventory_ec2 - The ec2.py inventory script has been moved to a new repository. The script can now be downloaded from https://github.com/ansible-community/contrib-scripts/blob/main/inventory/ec2.py and has been removed from this collection. We recommend migrating from the script to the amazon.aws.ec2 inventory plugin. (#898)

Deprecated Features

  • aws_acm - the current default value of False for purge_tags has been deprecated and will be updated in release 5.0.0 to True.
  • aws_kms - the current default value of False for purge_tags has been deprecated and will be updated in release 5.0.0 to True.
  • cloudfront_distribution - the current default value of False for purge_tags has been deprecated and will be updated in release 5.0.0 to True.
  • ec2_vpc_vpn - the current default value of False for purge_tags has been deprecated and will be updated in release 5.0.0 to True.
  • rds_param_group - the current default value of False for purge_tags has been deprecated and will be updated in release 5.0.0 to True.
  • route53_health_check - the current default value of False for purge_tags has been deprecated and will be updated in release 5.0.0 to True.
  • route53_zone - the current default value of False for purge_tags has been deprecated and will be updated in release 5.0.0 to True.
  • sqs_queue - the current default value of False for purge_tags has been deprecated and will be updated in release 5.0.0 to True.

Removed Features (previously deprecated)

  • aws_kms_info - the unused and deprecated keys_attr parameter has been removed (ansible-collections/amazon.aws#1172).
  • data_pipeline - the version option has always been ignored and has been removed (#1160"
  • ec2_eip - The wait_timeout option has been removed. It has always been ignored by the module (#1159).
  • ec2_lc - the associate_public_ip_address option has been removed. It has always been ignored by the module (#1158).
  • ec2_metric_alarm - support for using the <=, <, > and >= operators for comparison has been dropped. Please use LessThanOrEqualToThreshold, LessThanThreshold, GreaterThanThreshold or GreaterThanOrEqualToThreshold instead (ansible-collections/amazon.aws#1164).
  • ecs_ecr - The deprecated alias delete_policy has been removed. Please use purge_policy instead (#1161).
  • iam_managed_policy - the unused fail_on_delete parameter has been removed (#1168)
  • s3_lifecycle - the unused parameter requester_pays has been removed (#1165).
  • s3_sync - remove unused retries parameter (#1166).

Bugfixes

  • aws_ssm connection plugin - fix linting errors in documentation data (#965).
  • aws_ssm_parameter_store - fix exception when description was set without value (#1241).
  • don't require db_instance_identifier on state = present (#1078).
  • dynamodb_table - fix an issue when creating secondary indexes with global_keys_only (#967).
  • ec2_asg - Change the default value of purge_tags to false. Restores previous behaviour (#1064).
  • ec2_vpc_vpn - fix exception when no tags are passed in check mode (#1242).
  • ecs_service - add missing change detect of health_check_grace_period_seconds parameter (#1145).
  • ecs_service - fix broken compare of task_definition that results always in a changed task (#1145).
  • ecs_service - fix validation for placement_constraints. It's possible to use distinctInstance placement constraint now (#1058)
  • ecs_taskdefinition - fix broken change detect of launch_type parameter (#1145).
  • elb_application_lb_info - Up default value AWS backoff retries for paginated calls. (#1113).
  • elb_target_group_info - Up default value AWS backoff retries for paginated calls. (#1113).
  • execute_lamba - add waiter for function_updated (#1108).
  • execute_lambda - fix check mode and update RETURN documentation (#1115).
  • iam_policy - require one of policy_document and policy_json when state is present to prevent MalformedPolicyDocumentException from being thrown (#1093).
  • iam_user - don't delete user login profile on check mode (#1059).
  • iam_user_info - gracefully handle when no users are found (#1059).
  • lambda - fix bug where tag keys were mangled in the return values (#1202).
  • lambda - fix bug where the lambda module was modifying tags in check mode (#1202).
  • lambda - fix check mode on creation (#1108).
  • rds_instance - fix check_mode and idempotency issues and added integration tests for all tests in suite (#1002).
  • s3_lifecycle - add support of value 0 for transition_days (#1077).
  • s3_lifecycle - check that configuration is complete before returning (#1085).
  • wafv2_rule_group - fix bug where description of resource state was missing when rule groups were updated (#1210).
  • wafv2_rule_group - fix bug where updating just the description did not update the changed state (#1210).

New Modules

  • ec2_transit_gateway_vpc_attachment - Create and delete AWS Transit Gateway VPC attachments
  • ec2_transit_gateway_vpc_attachment_info - describes AWS Transit Gateway VPC attachments
  • eks_fargate_profile - Manage EKS Fargate Profile
  • networkfirewall - manage AWS Network Firewall firewalls
  • networkfirewall_info - describe AWS Network Firewall firewalls
  • networkfirewall_policy - manage AWS Network Firewall policies
  • networkfirewall_policy_info - describe AWS Network Firewall policies
  • networkfirewall_rule_group - create, delete and modify AWS Network Firewall rule groups
  • networkfirewall_rule_group_info - describe AWS Network Firewall rule groups
  • opensearch - Creates OpenSearch or ElasticSearch domain
  • opensearch_info - obtain information about one or more OpenSearch or ElasticSearch domain
  • rds_cluster_snapshot - Manage Amazon RDS snapshots of DB clusters