/community.aws

Ansible Collection for Community AWS

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Community AWS Collection

The Ansible Community AWS collection includes a variety of Ansible content to help automate the management of AWS instances. This collection is maintained by the Ansible community.

AWS related modules and plugins supported by the Ansible Cloud team are in the amazon.aws collection.

Ansible version compatibility

This collection has been tested against following Ansible versions: >=2.9.10.

Plugins and modules within a collection may be tested with only specific Ansible versions. A collection may contain metadata that identifies these versions. PEP440 is the schema used to describe the versions of Ansible.

Python version compatibility

As the AWS SDK for Python (Boto3 and Botocore) has ceased supporting Python 2.7, this collection requires Python 3.6 or greater.

Starting with the 2.0.0 releases of amazon.aws and community.aws, it is generally the collection's policy to support the versions of botocore and boto3 that were released 12 months prior to the most recent major collection release, following semantic versioning (for example, 2.0.0, 3.0.0).

Version 4.0.0 of this collection supports boto3 >= 1.17.0 and botocore >= 1.20.0

Included content

Connection plugins

Name Description
community.aws.aws_ssm execute via AWS Systems Manager

Modules

Name Description
community.aws.acm_certificate Upload and delete certificates in the AWS Certificate Manager service
community.aws.acm_certificate_info Retrieve certificate information from AWS Certificate Manager service
community.aws.api_gateway Manage AWS API Gateway APIs
community.aws.api_gateway_domain Manage AWS API Gateway custom domains
community.aws.application_autoscaling_policy Manage Application Auto Scaling Scaling Policies
community.aws.autoscaling_group Create or delete AWS AutoScaling Groups (ASGs)
community.aws.autoscaling_group_info Gather information about EC2 Auto Scaling Groups (ASGs) in AWS
community.aws.autoscaling_instance_refresh Start or cancel an EC2 Auto Scaling Group (ASG) instance refresh in AWS
community.aws.autoscaling_instance_refresh_info Gather information about EC2 Auto Scaling Group (ASG) Instance Refreshes in AWS
community.aws.autoscaling_launch_config Create or delete AWS Autoscaling Launch Configurations
community.aws.autoscaling_launch_config_find Find AWS Autoscaling Launch Configurations
community.aws.autoscaling_launch_config_info Gather information about AWS Autoscaling Launch Configurations
community.aws.autoscaling_lifecycle_hook Create, delete or update AWS ASG Lifecycle Hooks
community.aws.autoscaling_policy Create or delete AWS scaling policies for Autoscaling groups
community.aws.autoscaling_scheduled_action Create, modify and delete ASG scheduled scaling actions
community.aws.aws_region_info Gather information about AWS regions.
community.aws.batch_compute_environment Manage AWS Batch Compute Environments
community.aws.batch_job_definition Manage AWS Batch Job Definitions
community.aws.batch_job_queue Manage AWS Batch Job Queues
community.aws.cloudformation_exports_info Read a value from CloudFormation Exports
community.aws.cloudformation_stack_set Manage groups of CloudFormation stacks
community.aws.cloudfront_distribution Create, update and delete AWS CloudFront distributions
community.aws.cloudfront_distribution_info Obtain facts about an AWS CloudFront distribution
community.aws.cloudfront_invalidation create invalidations for AWS CloudFront distributions
community.aws.cloudfront_origin_access_identity Create, update and delete origin access identities for a CloudFront distribution
community.aws.cloudfront_response_headers_policy Create, update and delete response headers policies to be used in a Cloudfront distribution
community.aws.cloudtrail manage CloudTrail create, delete, update
community.aws.cloudwatch_metric_alarm Create/update or delete AWS CloudWatch 'metric alarms'
community.aws.cloudwatchevent_rule Manage CloudWatch Event rules and targets
community.aws.cloudwatchlogs_log_group create or delete log_group in CloudWatchLogs
community.aws.cloudwatchlogs_log_group_info Get information about log_group in CloudWatchLogs
community.aws.cloudwatchlogs_log_group_metric_filter Manage CloudWatch log group metric filter
community.aws.codebuild_project Create or delete an AWS CodeBuild project
community.aws.codecommit_repository Manage repositories in AWS CodeCommit
community.aws.codepipeline Create or delete AWS CodePipelines
community.aws.config_aggregation_authorization Manage cross-account AWS Config authorizations
community.aws.config_aggregator Manage AWS Config aggregations across multiple accounts
community.aws.config_delivery_channel Manage AWS Config delivery channels
community.aws.config_recorder Manage AWS Config Recorders
community.aws.config_rule Manage AWS Config rule resources
community.aws.data_pipeline Create and manage AWS Datapipelines
community.aws.directconnect_confirm_connection Confirms the creation of a hosted DirectConnect connection
community.aws.directconnect_connection Creates, deletes, modifies a DirectConnect connection
community.aws.directconnect_gateway Manage AWS Direct Connect gateway
community.aws.directconnect_link_aggregation_group Manage Direct Connect LAG bundles
community.aws.directconnect_virtual_interface Manage Direct Connect virtual interfaces
community.aws.dms_endpoint Creates or destroys a data migration services endpoint
community.aws.dms_replication_subnet_group creates or destroys a data migration services subnet group
community.aws.dynamodb_table Create, update or delete AWS Dynamo DB tables
community.aws.dynamodb_ttl Set TTL for a given DynamoDB table
community.aws.ec2_ami_copy copies AMI between AWS regions, return new image id
community.aws.ec2_customer_gateway Manage an AWS customer gateway
community.aws.ec2_customer_gateway_info Gather information about customer gateways in AWS
community.aws.ec2_eip manages EC2 elastic IP (EIP) addresses.
community.aws.ec2_eip_info List EC2 EIP details
community.aws.ec2_launch_template Manage EC2 launch templates
community.aws.ec2_placement_group Create or delete an EC2 Placement Group
community.aws.ec2_placement_group_info List EC2 Placement Group(s) details
community.aws.ec2_snapshot_copy Copies an EC2 snapshot and returns the new Snapshot ID
community.aws.ec2_transit_gateway Create and delete AWS Transit Gateways
community.aws.ec2_transit_gateway_info Gather information about ec2 transit gateways in AWS
community.aws.ec2_transit_gateway_vpc_attachment Create and delete AWS Transit Gateway VPC attachments
community.aws.ec2_transit_gateway_vpc_attachment_info describes AWS Transit Gateway VPC attachments
community.aws.ec2_vpc_egress_igw Manage an AWS VPC Egress Only Internet gateway
community.aws.ec2_vpc_nacl create and delete Network ACLs
community.aws.ec2_vpc_nacl_info Gather information about Network ACLs in an AWS VPC
community.aws.ec2_vpc_peer create, delete, accept, and reject VPC peering connections between two VPCs.
community.aws.ec2_vpc_peering_info Retrieves AWS VPC Peering details using AWS methods.
community.aws.ec2_vpc_vgw Create and delete AWS VPN Virtual Gateways
community.aws.ec2_vpc_vgw_info Gather information about virtual gateways in AWS
community.aws.ec2_vpc_vpn Create, modify, and delete EC2 VPN connections
community.aws.ec2_vpc_vpn_info Gather information about VPN Connections in AWS.
community.aws.ec2_win_password Gets the default administrator password for EC2 Windows instances
community.aws.ecs_attribute manage ecs attributes
community.aws.ecs_cluster Create or terminate ECS clusters.
community.aws.ecs_ecr Manage Elastic Container Registry repositories
community.aws.ecs_service Create, terminate, start or stop a service in ECS
community.aws.ecs_service_info List or describe services in ECS
community.aws.ecs_tag create and remove tags on Amazon ECS resources
community.aws.ecs_task Run, start or stop a task in ECS
community.aws.ecs_taskdefinition register a task definition in ecs
community.aws.ecs_taskdefinition_info Describe a task definition in ECS
community.aws.efs create and maintain EFS file systems
community.aws.efs_info Get information about Amazon EFS file systems
community.aws.efs_tag create and remove tags on Amazon EFS resources
community.aws.eks_cluster Manage Elastic Kubernetes Service (EKS) Clusters
community.aws.eks_fargate_profile Manage EKS Fargate Profile
community.aws.elasticache Manage cache clusters in Amazon ElastiCache
community.aws.elasticache_info Retrieve information for AWS ElastiCache clusters
community.aws.elasticache_parameter_group Manage cache parameter groups in Amazon ElastiCache.
community.aws.elasticache_snapshot Manage cache snapshots in Amazon ElastiCache
community.aws.elasticache_subnet_group manage ElastiCache subnet groups
community.aws.elasticbeanstalk_app Create, update, and delete an Elastic Beanstalk application
community.aws.elb_application_lb Manage an Application Load Balancer
community.aws.elb_application_lb_info Gather information about Application Load Balancers in AWS
community.aws.elb_classic_lb_info Gather information about EC2 Elastic Load Balancers in AWS
community.aws.elb_instance De-registers or registers instances from EC2 ELBs
community.aws.elb_network_lb Manage a Network Load Balancer
community.aws.elb_target Manage a target in a target group
community.aws.elb_target_group Manage a target group for an Application or Network load balancer
community.aws.elb_target_group_info Gather information about ELB target groups in AWS
community.aws.elb_target_info Gathers which target groups a target is associated with.
community.aws.glue_connection Manage an AWS Glue connection
community.aws.glue_crawler Manage an AWS Glue crawler
community.aws.glue_job Manage an AWS Glue job
community.aws.iam_access_key Manage AWS IAM User access keys
community.aws.iam_access_key_info fetch information about AWS IAM User access keys
community.aws.iam_group Manage AWS IAM groups
community.aws.iam_managed_policy Manage User Managed IAM policies
community.aws.iam_mfa_device_info List the MFA (Multi-Factor Authentication) devices registered for a user
community.aws.iam_password_policy Update an IAM Password Policy
community.aws.iam_policy Manage inline IAM policies for users, groups, and roles
community.aws.iam_policy_info Retrieve inline IAM policies for users, groups, and roles
community.aws.iam_role Manage AWS IAM roles
community.aws.iam_role_info Gather information on IAM roles
community.aws.iam_saml_federation Maintain IAM SAML federation configuration.
community.aws.iam_server_certificate Manage server certificates for use on ELBs and CloudFront
community.aws.iam_server_certificate_info Retrieve the information of a server certificate
community.aws.iam_user Manage AWS IAM users
community.aws.iam_user_info Gather IAM user(s) facts in AWS
community.aws.inspector_target Create, Update and Delete Amazon Inspector Assessment Targets
community.aws.kinesis_stream Manage a Kinesis Stream.
community.aws.kms_key Perform various KMS key management tasks
community.aws.kms_key_info Gather information about AWS KMS keys
community.aws.lambda Manage AWS Lambda functions
community.aws.lambda_alias Creates, updates or deletes AWS Lambda function aliases
community.aws.lambda_event Creates, updates or deletes AWS Lambda function event mappings
community.aws.lambda_execute Execute an AWS Lambda function
community.aws.lambda_info Gathers AWS Lambda function details
community.aws.lambda_policy Creates, updates or deletes AWS Lambda policy statements.
community.aws.lightsail Manage instances in AWS Lightsail
community.aws.msk_cluster Manage Amazon MSK clusters
community.aws.msk_config Manage Amazon MSK cluster configurations
community.aws.networkfirewall manage AWS Network Firewall firewalls
community.aws.networkfirewall_info describe AWS Network Firewall firewalls
community.aws.networkfirewall_policy manage AWS Network Firewall policies
community.aws.networkfirewall_policy_info describe AWS Network Firewall policies
community.aws.networkfirewall_rule_group create, delete and modify AWS Network Firewall rule groups
community.aws.networkfirewall_rule_group_info describe AWS Network Firewall rule groups
community.aws.opensearch Creates OpenSearch or ElasticSearch domain
community.aws.opensearch_info obtain information about one or more OpenSearch or ElasticSearch domain
community.aws.rds_cluster rds_cluster module
community.aws.rds_cluster_info Obtain information about one or more RDS clusters
community.aws.rds_cluster_snapshot Manage Amazon RDS snapshots of DB clusters
community.aws.rds_instance Manage RDS instances
community.aws.rds_instance_info obtain information about one or more RDS instances
community.aws.rds_instance_snapshot Manage Amazon RDS instance snapshots
community.aws.rds_option_group Manages the creation, modification, deletion of RDS option groups
community.aws.rds_option_group_info rds_option_group_info module
community.aws.rds_param_group manage RDS parameter groups
community.aws.rds_snapshot_info obtain information about one or more RDS snapshots
community.aws.rds_subnet_group manage RDS database subnet groups
community.aws.redshift create, delete, or modify an Amazon Redshift instance
community.aws.redshift_cross_region_snapshots Manage Redshift Cross Region Snapshots
community.aws.redshift_info Gather information about Redshift cluster(s)
community.aws.redshift_subnet_group manage Redshift cluster subnet groups
community.aws.route53 add or delete entries in Amazons Route 53 DNS service
community.aws.route53_health_check Manage health-checks in Amazons Route53 DNS service
community.aws.route53_info Retrieves route53 details using AWS methods
community.aws.route53_zone add or delete Route53 zones
community.aws.s3_bucket_info Lists S3 buckets in AWS
community.aws.s3_bucket_notification Creates, updates or deletes S3 Bucket notifications targeting Lambda functions, SNS or SQS.
community.aws.s3_cors Manage CORS for S3 buckets in AWS
community.aws.s3_lifecycle Manage S3 bucket lifecycle rules in AWS
community.aws.s3_logging Manage logging facility of an s3 bucket in AWS
community.aws.s3_metrics_configuration Manage s3 bucket metrics configuration in AWS
community.aws.s3_sync Efficiently upload multiple files to S3
community.aws.s3_website Configure an s3 bucket as a website
community.aws.secretsmanager_secret Manage secrets stored in AWS Secrets Manager
community.aws.ses_identity Manages SES email and domain identity
community.aws.ses_identity_policy Manages SES sending authorization policies
community.aws.ses_rule_set Manages SES inbound receipt rule sets
community.aws.sns Send Amazon Simple Notification Service messages
community.aws.sns_topic Manages AWS SNS topics and subscriptions
community.aws.sns_topic_info sns_topic_info module
community.aws.sqs_queue Creates or deletes AWS SQS queues
community.aws.ssm_parameter Manage key-value pairs in AWS Systems Manager Parameter Store
community.aws.stepfunctions_state_machine Manage AWS Step Functions state machines
community.aws.stepfunctions_state_machine_execution Start or stop execution of an AWS Step Functions state machine
community.aws.storagegateway_info Fetch AWS Storage Gateway information
community.aws.sts_assume_role Assume a role using AWS Security Token Service and obtain temporary credentials
community.aws.sts_session_token Obtain a session token from the AWS Security Token Service
community.aws.waf_condition Create and delete WAF Conditions
community.aws.waf_info Retrieve information for WAF ACLs, Rules, Conditions and Filters
community.aws.waf_rule Create and delete WAF Rules
community.aws.waf_web_acl Create and delete WAF Web ACLs
community.aws.wafv2_ip_set wafv2_ip_set
community.aws.wafv2_ip_set_info Get information about wafv2 ip sets
community.aws.wafv2_resources wafv2_web_acl
community.aws.wafv2_resources_info wafv2_resources_info
community.aws.wafv2_rule_group wafv2_web_acl
community.aws.wafv2_rule_group_info wafv2_web_acl_info
community.aws.wafv2_web_acl Create and delete WAF Web ACLs
community.aws.wafv2_web_acl_info wafv2_web_acl

Installing this collection

You can install the AWS collection with the Ansible Galaxy CLI:

ansible-galaxy collection install community.aws

You can also include it in a requirements.yml file and install it with ansible-galaxy collection install -r requirements.yml, using the format:

---
collections:
  - name: community.aws

A specific version of the collection can be installed by using the version keyword in the requirements.yml file:

---
collections:
  - name: community.aws
    version: 0.1.1

You can either call modules by their Fully Qualified Collection Namespace (FQCN), such as community.aws.ec2_instance, or you can call modules by their short name if you list the community.aws collection in the playbook's collections keyword:

---
  - name: Create a DB instance using the default AWS KMS encryption key
    community.aws.rds_instance:
      id: test-encrypted-db
      state: present
      engine: mariadb
      storage_encrypted: True
      db_instance_class: db.t2.medium
      username: "{{ username }}"
      password: "{{ password }}"
      allocated_storage: "{{ allocated_storage }}"

See Also:

Contributing to this collection

We welcome community contributions to this collection. If you find problems, please open an issue or create a PR against the Community AWS collection repository.

You can also join us on:

More information about contributing

Release notes

Roadmap

More information

Licensing

GNU General Public License v3.0 or later.

See LICENSE to see the full text.