ansible / ansible.builtin / v2.5.10 / module / lightsail Create or delete a virtual machine instance in AWS Lightsail | "added in version" 2.4 of ansible.builtin" Authors: Nick Ball (@nickball) preview | supported by communityansible.builtin.lightsail (v2.5.10) — module
pip
Install with pip install ansible==2.5.10
Creates or instances in AWS Lightsail and optionally wait for it to be 'running'.
# Create a new Lightsail instance, register the instance details - lightsail: state: present name: myinstance region: us-east-1 zone: us-east-1a blueprint_id: ubuntu_16_04 bundle_id: nano_1_0 key_pair_name: id_rsa user_data: " echo 'hello world' > /home/ubuntu/test.txt" wait_timeout: 500 register: my_instance
- debug: msg: "Name is {{ my_instance.instance.name }}"
- debug: msg: "IP is {{ my_instance.instance.public_ip_address }}"
# Delete an instance if present - lightsail: state: absent region: us-east-1 name: myinstance
name: default: null description: - Name of the instance required: true wait: choices: - 'yes' - 'no' default: 'yes' description: - Wait for the instance to be in state 'running' before returning. If wait is "no" an ip_address may not be returned zone: default: null description: - AWS availability zone in which to launch the instance. Required when state='present' required: false state: choices: - present - absent - running - restarted - stopped default: present description: - Indicate desired state of the target. region: aliases: - aws_region - ec2_region description: - The AWS region to use. - For global services such as IAM, Route53 and CloudFront, I(region) is ignored. - The C(AWS_REGION) or C(EC2_REGION) environment variables may also be used. - See the Amazon AWS documentation for more information U(http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region). - The C(ec2_region) alias has been deprecated and will be removed in a release after 2024-12-01 - Support for the C(EC2_REGION) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str profile: aliases: - aws_profile description: - A named AWS profile to use for authentication. - See the AWS documentation for more information about named profiles U(https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html). - The C(AWS_PROFILE) environment variable may also be used. - The I(profile) option is mutually exclusive with the I(aws_access_key), I(aws_secret_key) and I(security_token) options. type: str bundle_id: default: null description: - Bundle of specification info for the instance. Required when state='present' required: false user_data: default: null description: - Launch script that can configure the instance with additional data required: false access_key: aliases: - aws_access_key_id - aws_access_key - ec2_access_key description: - AWS access key ID. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_ACCESS_KEY_ID), C(AWS_ACCESS_KEY) or C(EC2_ACCESS_KEY) environment variables may also be used in decreasing order of preference. - The I(aws_access_key) and I(profile) options are mutually exclusive. - The I(aws_access_key_id) alias was added in release 5.1.0 for consistency with the AWS botocore SDK. - The I(ec2_access_key) alias has been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_ACCESS_KEY) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str aws_config: description: - A dictionary to modify the botocore configuration. - Parameters can be found in the AWS documentation U(https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config). type: dict secret_key: aliases: - aws_secret_access_key - aws_secret_key - ec2_secret_key description: - AWS secret access key. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_SECRET_ACCESS_KEY), C(AWS_SECRET_KEY), or C(EC2_SECRET_KEY) environment variables may also be used in decreasing order of preference. - The I(secret_key) and I(profile) options are mutually exclusive. - The I(aws_secret_access_key) alias was added in release 5.1.0 for consistency with the AWS botocore SDK. - The I(ec2_secret_key) alias has been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_SECRET_KEY) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str blueprint_id: default: null description: - ID of the instance blueprint image. Required when state='present' required: false endpoint_url: aliases: - ec2_url - aws_endpoint_url - s3_url description: - URL to connect to instead of the default AWS endpoints. While this can be used to connection to other AWS-compatible services the amazon.aws and community.aws collections are only tested against AWS. - The C(AWS_URL) or C(EC2_URL) environment variables may also be used, in decreasing order of preference. - The I(ec2_url) and I(s3_url) aliases have been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_URL) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str wait_timeout: default: 300 description: - How long before wait gives up, in seconds. aws_ca_bundle: description: - The location of a CA Bundle to use when validating SSL certificates. - The C(AWS_CA_BUNDLE) environment variable may also be used. type: path key_pair_name: default: null description: - Name of the key pair to use with the instance required: false session_token: aliases: - aws_session_token - security_token - aws_security_token - access_token description: - AWS STS session token for use with temporary credentials. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_SESSION_TOKEN), C(AWS_SECURITY_TOKEN) or C(EC2_SECURITY_TOKEN) environment variables may also be used in decreasing order of preference. - The I(security_token) and I(profile) options are mutually exclusive. - Aliases I(aws_session_token) and I(session_token) were added in release 3.2.0, with the parameter being renamed from I(security_token) to I(session_token) in release 6.0.0. - The I(security_token), I(aws_security_token), and I(access_token) aliases have been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_SECRET_KEY) and C(AWS_SECURITY_TOKEN) environment variables has been deprecated and will be removed in a release after 2024-12-01. type: str validate_certs: default: true description: - When set to C(false), SSL certificates will not be validated for communication with the AWS APIs. - Setting I(validate_certs=false) is strongly discouraged, as an alternative, consider setting I(aws_ca_bundle) instead. type: bool debug_botocore_endpoint_logs: default: false description: - Use a C(botocore.endpoint) logger to parse the unique (rather than total) C("resource:action") API calls made during a task, outputing the set to the resource_actions key in the task results. Use the C(aws_resource_action) callback to output to total list made during a playbook. - The C(ANSIBLE_DEBUG_BOTOCORE_LOGS) environment variable may also be used. type: bool
changed: description: if a snapshot has been modified/created returned: always sample: changed: true type: bool instance: description: instance data returned: always sample: arn: arn:aws:lightsail:us-east-1:448830907657:Instance/1fef0175-d6c8-480e-84fa-214f969cda87 blueprint_id: ubuntu_16_04 blueprint_name: Ubuntu bundle_id: nano_1_0 created_at: '2017-03-27T08:38:59.714000-04:00' hardware: cpu_count: 1 ram_size_in_gb: 0.5 is_static_ip: false location: availability_zone: us-east-1a region_name: us-east-1 name: my_instance networking: monthly_transfer: gb_per_month_allocated: 1024 ports: - access_direction: inbound access_from: Anywhere (0.0.0.0/0) access_type: public common_name: '' from_port: 80 protocol: tcp to_port: 80 - access_direction: inbound access_from: Anywhere (0.0.0.0/0) access_type: public common_name: '' from_port: 22 protocol: tcp to_port: 22 private_ip_address: 172.26.8.14 public_ip_address: 34.207.152.202 resource_type: Instance ssh_key_name: keypair state: code: 16 name: running support_code: 588307843083/i-0997c97831ee21e33 username: ubuntu type: dict