Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Update 'aws_route' to handle changes in IPv6 route entries #12062

Closed
wants to merge 1 commit into from

Conversation

kula
Copy link
Contributor

@kula kula commented Feb 15, 2020

Allow the aws_route resource to update targets for all IPv6 destinations it can create route entries for. Currently, aws_route assumes all route targets for update are IPv4 except for a couple targets.

For example, given the following Terraform code

resource "aws_route" "default_ipv6_route" {
  route_table_id = aws_route_table.routes.id

  destination_ipv6_cidr_block = "::/0"
  network_interface_id        = aws_instance.router.primary_network_interface_id
}

this aws_route could be created, but if the network interface ever changed the provider would attempt to make the following POST to AWS

Action=ReplaceRoute&DestinationCidrBlock=&Network
InterfaceId=eni-<eni>&RouteTableId=rtb-<rtb>&Version=2016-11-15

and return the following error message:

MissingParameter: The request must contain the parameter destinationCidrBlock or destinationIpv6CidrBlock

Community Note

  • Please vote on this pull request by adding a 👍 reaction to the original pull request comment to help the community and maintainers prioritize this request
  • Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for pull request followers and do not help prioritize the request

Output from acceptance testing:

Currently no acceptance testing, but I'm willing to tackle that once I wrap my head around it.

NOTE: I have only tested with a target of network_interface, as that's the use case I ran into.

'aws_route' allows you to create route table entries with IPv6
destinations and targets including (but not limited to) a gateway,
an EC2 instance, a network interface, a transit_gateway or a
vpc_peering_connection. However, none of the entries with those
targets could *update* their target, since the update function
assumed that all updates would be IPv4 entries.
@ghost ghost added size/S Managed by automation to categorize the size of a PR. needs-triage Waiting for first response or review from a maintainer. service/ec2 Issues and PRs that pertain to the ec2 service. labels Feb 15, 2020
@ewbankkit
Copy link
Contributor

@kula Thanks for the contribution.
Updates to IPv6 aws_routes has been added in #14050.

@ewbankkit ewbankkit closed this Jul 5, 2020
@ghost
Copy link

ghost commented Aug 5, 2020

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. Thanks!

@ghost ghost locked and limited conversation to collaborators Aug 5, 2020
@breathingdust breathingdust removed the needs-triage Waiting for first response or review from a maintainer. label Sep 17, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
service/ec2 Issues and PRs that pertain to the ec2 service. size/S Managed by automation to categorize the size of a PR.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants