Skip VPC endpoint routes when removing default route table's routes. (#10303)
This commit is contained in:
parent
b335418d0d
commit
7319968f5f
|
@ -188,6 +188,11 @@ func revokeAllRouteTableRules(defaultRouteTableId string, meta interface{}) erro
|
|||
if r.GatewayId != nil && *r.GatewayId == "local" {
|
||||
continue
|
||||
}
|
||||
if r.DestinationPrefixListId != nil {
|
||||
// Skipping because VPC endpoint routes are handled separately
|
||||
// See aws_vpc_endpoint
|
||||
continue
|
||||
}
|
||||
log.Printf(
|
||||
"[INFO] Deleting route from %s: %s",
|
||||
defaultRouteTableId, *r.DestinationCidrBlock)
|
||||
|
|
|
@ -65,6 +65,26 @@ func TestAccAWSDefaultRouteTable_swap(t *testing.T) {
|
|||
})
|
||||
}
|
||||
|
||||
func TestAccAWSDefaultRouteTable_vpc_endpoint(t *testing.T) {
|
||||
var v ec2.RouteTable
|
||||
|
||||
resource.Test(t, resource.TestCase{
|
||||
PreCheck: func() { testAccPreCheck(t) },
|
||||
IDRefreshName: "aws_default_route_table.foo",
|
||||
Providers: testAccProviders,
|
||||
CheckDestroy: testAccCheckDefaultRouteTableDestroy,
|
||||
Steps: []resource.TestStep{
|
||||
resource.TestStep{
|
||||
Config: testAccDefaultRouteTable_vpc_endpoint,
|
||||
Check: resource.ComposeTestCheckFunc(
|
||||
testAccCheckRouteTableExists(
|
||||
"aws_default_route_table.foo", &v),
|
||||
),
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
func testAccCheckDefaultRouteTableDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.Meta().(*AWSClient).ec2conn
|
||||
|
||||
|
@ -238,3 +258,46 @@ resource "aws_main_route_table_association" "a" {
|
|||
route_table_id = "${aws_route_table.r.id}"
|
||||
}
|
||||
`
|
||||
|
||||
const testAccDefaultRouteTable_vpc_endpoint = `
|
||||
provider "aws" {
|
||||
region = "us-west-2"
|
||||
}
|
||||
|
||||
resource "aws_vpc" "test" {
|
||||
cidr_block = "10.0.0.0/16"
|
||||
|
||||
tags {
|
||||
Name = "test"
|
||||
}
|
||||
}
|
||||
|
||||
resource "aws_internet_gateway" "igw" {
|
||||
vpc_id = "${aws_vpc.test.id}"
|
||||
|
||||
tags {
|
||||
Name = "test"
|
||||
}
|
||||
}
|
||||
|
||||
resource "aws_vpc_endpoint" "s3" {
|
||||
vpc_id = "${aws_vpc.test.id}"
|
||||
service_name = "com.amazonaws.us-west-2.s3"
|
||||
route_table_ids = [
|
||||
"${aws_vpc.test.default_route_table_id}"
|
||||
]
|
||||
}
|
||||
|
||||
resource "aws_default_route_table" "foo" {
|
||||
default_route_table_id = "${aws_vpc.test.default_route_table_id}"
|
||||
|
||||
tags {
|
||||
Name = "test"
|
||||
}
|
||||
|
||||
route {
|
||||
cidr_block = "0.0.0.0/0"
|
||||
gateway_id = "${aws_internet_gateway.igw.id}"
|
||||
}
|
||||
}
|
||||
`
|
||||
|
|
Loading…
Reference in New Issue