ansible.builtin.ec2_transit_gateway (v2.9.17) — module

Create and delete AWS Transit Gateways.

| "added in version" 2.8 of ansible.builtin"

Authors: Bob Boldin (@BobBoldin)

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.9.17

Description

Creates AWS Transit Gateways

Deletes AWS Transit Gateways

Updates tags on existing transit gateways


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create a new transit gateway using defaults
  ec2_transit_gateway:
    state: present
    region: us-east-1
    description: personal-testing
  register: created_tgw
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create a new transit gateway with options
  ec2_transit_gateway:
    asn: 64514
    auto_associate: no
    auto_propagate: no
    dns_support: True
    description: "nonprod transit gateway"
    purge_tags: False
    state: present
    region: us-east-1
    tags:
      Name: nonprod transit gateway
      status: testing
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Remove a transit gateway by description
  ec2_transit_gateway:
    state: absent
    region: us-east-1
    description: personal-testing
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Remove a transit gateway by id
  ec2_transit_gateway:
    state: absent
    region: ap-southeast-2
    transit_gateway_id: tgw-3a9aa123
  register: deleted_tgw

Inputs

    
asn:
    description:
    - A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The
      range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit
      ASNs.

tags:
    description:
    - A dictionary of resource tags

wait:
    default: true
    description:
    - Whether to wait for status

state:
    choices:
    - present
    - absent
    default: present
    description:
    - present to ensure resource is created.
    - absent to remove resource.

region:
    aliases:
    - aws_region
    - ec2_region
    description:
    - The AWS region to use. If not specified then the value of the AWS_REGION or EC2_REGION
      environment variable, if any, is used. See U(http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region)
    type: str

ec2_url:
    aliases:
    - aws_endpoint_url
    - endpoint_url
    description:
    - URL to use to connect to EC2 or your Eucalyptus cloud (by default the module will
      use EC2 endpoints). Ignored for modules where region is required. Must be specified
      for all other modules if region is not used. If not set then the value of the EC2_URL
      environment variable, if any, is used.
    type: str

profile:
    aliases:
    - aws_profile
    description:
    - Using I(profile) will override I(aws_access_key), I(aws_secret_key) and I(security_token)
      and support for passing them at the same time as I(profile) has been deprecated.
    - I(aws_access_key), I(aws_secret_key) and I(security_token) will be made mutually
      exclusive with I(profile) after 2022-06-01.
    type: str

aws_config:
    description:
    - A dictionary to modify the botocore configuration.
    - Parameters can be found at U(https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config).
    - Only the 'user_agent' key is used for boto modules. See U(http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto)
      for more boto configuration.
    type: dict

purge_tags:
    default: true
    description:
    - Whether to purge existing tags not included with tags argument.
    type: bool

auto_attach:
    default: false
    description:
    - Enable or disable automatic acceptance of attachment requests.
    type: bool

description:
    description:
    - The description of the transit gateway.
    type: str

dns_support:
    default: true
    description:
    - Whether to enable AWS DNS support.
    type: bool

wait_timeout:
    default: 300
    description:
    - number of seconds to wait for status

aws_ca_bundle:
    description:
    - The location of a CA Bundle to use when validating SSL certificates.
    - Not used by boto 2 based modules.
    - 'Note: The CA Bundle is read ''module'' side and may need to be explicitly copied
      from the controller if not run locally.'
    type: path

auto_associate:
    default: true
    description:
    - Enable or disable automatic association with the default association route table.
    type: bool

auto_propagate:
    default: true
    description:
    - Enable or disable automatic propagation of routes to the default propagation route
      table.
    type: bool

aws_access_key:
    aliases:
    - ec2_access_key
    - access_key
    description:
    - C(AWS access key). If not set then the value of the C(AWS_ACCESS_KEY_ID), C(AWS_ACCESS_KEY)
      or C(EC2_ACCESS_KEY) environment variable is used.
    - If I(profile) is set this parameter is ignored.
    - Passing the I(aws_access_key) and I(profile) options at the same time has been deprecated
      and the options will be made mutually exclusive after 2022-06-01.
    type: str

aws_secret_key:
    aliases:
    - ec2_secret_key
    - secret_key
    description:
    - C(AWS secret key). If not set then the value of the C(AWS_SECRET_ACCESS_KEY), C(AWS_SECRET_KEY),
      or C(EC2_SECRET_KEY) environment variable is used.
    - If I(profile) is set this parameter is ignored.
    - Passing the I(aws_secret_key) and I(profile) options at the same time has been deprecated
      and the options will be made mutually exclusive after 2022-06-01.
    type: str

security_token:
    aliases:
    - aws_security_token
    - access_token
    description:
    - C(AWS STS security token). If not set then the value of the C(AWS_SECURITY_TOKEN)
      or C(EC2_SECURITY_TOKEN) environment variable is used.
    - If I(profile) is set this parameter is ignored.
    - Passing the I(security_token) and I(profile) options at the same time has been deprecated
      and the options will be made mutually exclusive after 2022-06-01.
    type: str

validate_certs:
    default: true
    description:
    - When set to "no", SSL certificates will not be validated for communication with
      the AWS APIs.
    type: bool

vpn_ecmp_support:
    default: true
    description:
    - Enable or disable Equal Cost Multipath Protocol support.
    type: bool

transit_gateway_id:
    description:
    - The ID of the transit gateway.
    type: str

debug_botocore_endpoint_logs:
    default: 'no'
    description:
    - Use a botocore.endpoint logger to parse the unique (rather than total) "resource:action"
      API calls made during a task, outputing the set to the resource_actions key in the
      task results. Use the aws_resource_action callback to output to total list made
      during a playbook. The ANSIBLE_DEBUG_BOTOCORE_LOGS environment variable may also
      be used.
    type: bool

Outputs

transit_gateway:
  contains:
    creation_time:
      description: The creation time of the transit gateway.
      returned: always
      sample: '2019-03-06T17:13:51+00:00'
      type: str
    description:
      description: The description of the transit gateway.
      returned: always
      sample: my test tgw
      type: str
    options:
      contains:
        amazon_side_asn:
          description:
          - A private Autonomous System Number (ASN) for the Amazon side of a BGP
            session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to
            4294967294 for 32-bit ASNs.
          returned: always
          sample: 64512
          type: str
        association_default_route_table_id:
          description: The ID of the default association route table.
          returned: Iwhen exists
          sample: tgw-rtb-abc123444
          type: str
        auto_accept_shared_attachements:
          description: Indicates whether attachment requests are automatically accepted.
          returned: always
          sample: disable
          type: str
        default_route_table_association:
          description:
          - Indicates  whether resource attachments are automatically associated with
            the default association route table.
          returned: always
          sample: enable
          type: str
        default_route_table_propagation:
          description:
          - Indicates  whether  resource  attachments   automatically propagate routes
            to the default propagation route table.
          returned: always
          sample: disable
          type: str
        dns_support:
          description: Indicates whether DNS support is enabled.
          returned: always
          sample: enable
          type: str
        propagation_default_route_table_id:
          description: The ID of the default propagation route table.
          returned: when exists
          sample: tgw-rtb-def456777
          type: str
        vpn_ecmp_support:
          description: Indicates  whether  Equal Cost Multipath Protocol support is
            enabled.
          returned: always
          sample: enable
          type: str
      description: The options attributes of the transit gateway
      returned: always
      type: complex
    owner_id:
      description: The account that owns the transit gateway.
      returned: always
      sample: '123456789012'
      type: str
    state:
      description: The state of the transit gateway.
      returned: always
      sample: pending
      type: str
    tags:
      description: A dictionary of resource tags
      returned: always
      sample:
        tags:
          Name: nonprod_tgw
      type: dict
    transit_gateway_arn:
      description: The ID of the transit_gateway.
      returned: always
      sample: tgw-3a9aa123
      type: str
    transit_gateway_id:
      description: The ID of the transit_gateway.
      returned: always
      sample: tgw-3a9aa123
      type: str
  description: The attributes of the transit gateway.
  returned: I(state=present)
  type: complex