EC2: Add missing transitGatewayArn field for CreateTransitGatewayResponse (#6750)

This commit is contained in:
Mario Nitchev 2023-09-01 19:45:39 +03:00 committed by GitHub
parent 093052bd9b
commit c59fee5d35
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 5 deletions

View File

@ -46,6 +46,10 @@ class TransitGateway(TaggedEC2Resource, CloudFormationModel):
def owner_id(self) -> str:
return self.ec2_backend.account_id
@property
def arn(self) -> str:
return f"arn:aws:ec2:{self.ec2_backend.region_name}:{self.ec2_backend.account_id}:transit-gateway/{self.id}"
@staticmethod
def cloudformation_name_type() -> str:
return ""
@ -62,7 +66,7 @@ class TransitGateway(TaggedEC2Resource, CloudFormationModel):
cloudformation_json: Any,
account_id: str,
region_name: str,
**kwargs: Any
**kwargs: Any,
) -> "TransitGateway":
from ..models import ec2_backends

View File

@ -64,6 +64,7 @@ CREATE_TRANSIT_GATEWAY_RESPONSE = """<CreateTransitGatewayResponse xmlns="http:/
<requestId>151283df-f7dc-4317-89b4-01c9888b1d45</requestId>
<transitGateway>
<transitGatewayId>{{ transit_gateway.id }}</transitGatewayId>
<transitGatewayArn>{{ transit_gateway.arn }}</transitGatewayArn>
<ownerId>{{ transit_gateway.owner_id }}</ownerId>
<description>{{ transit_gateway.description or '' }}</description>
<createTime>{{ transit_gateway.create_time }}</createTime>
@ -122,7 +123,7 @@ DESCRIBE_TRANSIT_GATEWAY_RESPONSE = """<DescribeTransitGatewaysResponse xmlns="h
</item>
{% endfor %}
</tagSet>
<transitGatewayArn>arn:aws:ec2:us-east-1:{{ transit_gateway.owner_id }}:transit-gateway/{{ transit_gateway.id }}</transitGatewayArn>
<transitGatewayArn>{{ transit_gateway.arn }}</transitGatewayArn>
<transitGatewayId>{{ transit_gateway.id }}</transitGatewayId>
</item>
{% endfor %}
@ -166,7 +167,7 @@ MODIFY_TRANSIT_GATEWAY_RESPONSE = """<ModifyTransitGatewaysResponse xmlns="http:
</item>
{% endfor %}
</tagSet>
<transitGatewayArn>arn:aws:ec2:us-east-1:{{ transit_gateway.owner_id }}:transit-gateway/{{ transit_gateway.id }}</transitGatewayArn>
<transitGatewayArn>{{ transit_gateway.arn }}</transitGatewayArn>
<transitGatewayId>{{ transit_gateway.id }}</transitGatewayId>
</item>
</transitGatewaySet>

View File

@ -23,6 +23,10 @@ def test_create_transit_gateway():
)
gateway = response["TransitGateway"]
assert gateway["TransitGatewayId"].startswith("tgw-")
assert (
gateway["TransitGatewayArn"]
== f"arn:aws:ec2:us-west-1:{ACCOUNT_ID}:transit-gateway/{gateway['TransitGatewayId']}"
)
assert gateway["State"] == "available"
assert gateway["OwnerId"] == ACCOUNT_ID
assert gateway["Description"] == "my first gateway"
@ -50,14 +54,13 @@ def test_create_transit_gateway():
assert "CreationTime" in gateways[0]
assert (
gateways[0]["TransitGatewayArn"]
== f"arn:aws:ec2:us-east-1:{ACCOUNT_ID}:transit-gateway/{gateway['TransitGatewayId']}"
== f"arn:aws:ec2:us-west-1:{ACCOUNT_ID}:transit-gateway/{gateway['TransitGatewayId']}"
)
assert (
gateways[0]["Options"]["AssociationDefaultRouteTableId"]
== gateways[0]["Options"]["PropagationDefaultRouteTableId"]
)
del gateways[0]["CreationTime"]
del gateways[0]["TransitGatewayArn"]
del gateways[0]["Options"]["AssociationDefaultRouteTableId"]
assert gateway == gateways[0]