From 235ce71b3d3e6c1966f493486f643a676dd0c5b8 Mon Sep 17 00:00:00 2001 From: DrFaust92 Date: Thu, 25 Jun 2020 23:26:28 +0300 Subject: [PATCH 1/4] add arn attribute + disappears --- aws/resource_aws_ec2_traffic_mirror_filter.go | 15 +++++++++++++++ ...resource_aws_ec2_traffic_mirror_filter_test.go | 15 +++------------ website/docs/index.html.markdown | 3 ++- .../r/ec2_traffic_mirror_filter.html.markdown | 1 + 4 files changed, 21 insertions(+), 13 deletions(-) diff --git a/aws/resource_aws_ec2_traffic_mirror_filter.go b/aws/resource_aws_ec2_traffic_mirror_filter.go index fcf9a4859243..4541a94dce19 100644 --- a/aws/resource_aws_ec2_traffic_mirror_filter.go +++ b/aws/resource_aws_ec2_traffic_mirror_filter.go @@ -5,6 +5,7 @@ import ( "log" "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/arn" "github.com/aws/aws-sdk-go/service/ec2" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation" @@ -21,6 +22,10 @@ func resourceAwsEc2TrafficMirrorFilter() *schema.Resource { State: schema.ImportStatePassthrough, }, Schema: map[string]*schema.Schema{ + "arn": { + Type: schema.TypeString, + Computed: true, + }, "description": { Type: schema.TypeString, Optional: true, @@ -150,6 +155,16 @@ func resourceAwsEc2TrafficMirrorFilterRead(d *schema.ResourceData, meta interfac return fmt.Errorf("error setting network_services for filter %v: %s", d.Id(), err) } + arn := arn.ARN{ + Partition: meta.(*AWSClient).partition, + Service: "ec2", + Region: meta.(*AWSClient).region, + AccountID: meta.(*AWSClient).accountid, + Resource: fmt.Sprintf("traffic-mirror-filter/%s", d.Id()), + }.String() + + d.Set("arn", arn) + return nil } diff --git a/aws/resource_aws_ec2_traffic_mirror_filter_test.go b/aws/resource_aws_ec2_traffic_mirror_filter_test.go index 04042a270d47..911e619eb877 100644 --- a/aws/resource_aws_ec2_traffic_mirror_filter_test.go +++ b/aws/resource_aws_ec2_traffic_mirror_filter_test.go @@ -2,6 +2,7 @@ package aws import ( "fmt" + "regexp" "testing" "github.com/aws/aws-sdk-go/aws" @@ -28,6 +29,7 @@ func TestAccAWSEc2TrafficMirrorFilter_basic(t *testing.T) { Config: testAccTrafficMirrorFilterConfig(description), Check: resource.ComposeTestCheckFunc( testAccCheckAWSEc2TrafficMirrorFilterExists(resourceName, &v), + testAccMatchResourceAttrRegionalARN(resourceName, "arn", "ec2", regexp.MustCompile(`traffic-mirror-filter/tmf-.+`)), resource.TestCheckResourceAttr(resourceName, "description", description), resource.TestCheckResourceAttr(resourceName, "network_services.#", "1"), resource.TestCheckResourceAttr(resourceName, "tags.%", "0"), @@ -122,7 +124,7 @@ func TestAccAWSEc2TrafficMirrorFilter_disappears(t *testing.T) { Config: testAccTrafficMirrorFilterConfig(description), Check: resource.ComposeTestCheckFunc( testAccCheckAWSEc2TrafficMirrorFilterExists(resourceName, &v), - testAccCheckAWSEc2TrafficMirrorFilterDisappears(&v), + testAccCheckResourceDisappears(testAccProvider, resourceAwsEc2TrafficMirrorFilter(), resourceName), ), ExpectNonEmptyPlan: true, }, @@ -161,17 +163,6 @@ func testAccCheckAWSEc2TrafficMirrorFilterExists(name string, traffic *ec2.Traff } } -func testAccCheckAWSEc2TrafficMirrorFilterDisappears(traffic *ec2.TrafficMirrorFilter) resource.TestCheckFunc { - return func(s *terraform.State) error { - conn := testAccProvider.Meta().(*AWSClient).ec2conn - _, err := conn.DeleteTrafficMirrorFilter(&ec2.DeleteTrafficMirrorFilterInput{ - TrafficMirrorFilterId: traffic.TrafficMirrorFilterId, - }) - - return err - } -} - func testAccTrafficMirrorFilterConfig(description string) string { return fmt.Sprintf(` resource "aws_ec2_traffic_mirror_filter" "test" { diff --git a/website/docs/index.html.markdown b/website/docs/index.html.markdown index a40bde3c5a76..05b88096950d 100644 --- a/website/docs/index.html.markdown +++ b/website/docs/index.html.markdown @@ -265,7 +265,8 @@ for more information about connecting to alternate AWS endpoints or AWS compatib - [`aws_ebs_volume` data source](/docs/providers/aws/d/ebs_volume.html) - [`aws_ec2_capacity_reservation` resource](/docs/providers/aws/r/ec2_capacity_reservation.html) - [`aws_ec2_client_vpn_endpoint` resource](/docs/providers/aws/r/ec2_client_vpn_endpoint.html) - - [`aws_ec2_traffic_mirror_session` resource](/docs/providers/aws/r/ec2_traffic_mirror_session.html) + - [`aws_ec2_traffic_mirror_filter` resource](/docs/providers/aws/r/ec2_traffic_mirror_filter.html) + - [`aws_ec2_traffic_mirror_session` resource](/docs/providers/aws/r/ec2_traffic_mirror_session.html) - [`aws_ec2_traffic_mirror_target` resource](/docs/providers/aws/r/ec2_traffic_mirror_target.html) - [`aws_ec2_transit_gateway_route_table` data source](/docs/providers/aws/d/ec2_transit_gateway_route_table.html) - [`aws_ec2_transit_gateway_route_table` resource](/docs/providers/aws/r/ec2_transit_gateway_route_table.html) diff --git a/website/docs/r/ec2_traffic_mirror_filter.html.markdown b/website/docs/r/ec2_traffic_mirror_filter.html.markdown index 0bf7ca21b107..d4fb95cb685a 100644 --- a/website/docs/r/ec2_traffic_mirror_filter.html.markdown +++ b/website/docs/r/ec2_traffic_mirror_filter.html.markdown @@ -35,6 +35,7 @@ The following arguments are supported: In addition to all arguments above, the following attributes are exported: +* `arn` - The ARN of the traffic mirror filter. * `id` - The name of the filter. ## Import From c6fe3d21575f67ec9f9f88901c762aee7e823851 Mon Sep 17 00:00:00 2001 From: DrFaust92 Date: Fri, 10 Jul 2020 00:06:42 +0300 Subject: [PATCH 2/4] fix --- website/docs/index.html.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/index.html.markdown b/website/docs/index.html.markdown index 05b88096950d..5c3913fb6e7b 100644 --- a/website/docs/index.html.markdown +++ b/website/docs/index.html.markdown @@ -266,7 +266,7 @@ for more information about connecting to alternate AWS endpoints or AWS compatib - [`aws_ec2_capacity_reservation` resource](/docs/providers/aws/r/ec2_capacity_reservation.html) - [`aws_ec2_client_vpn_endpoint` resource](/docs/providers/aws/r/ec2_client_vpn_endpoint.html) - [`aws_ec2_traffic_mirror_filter` resource](/docs/providers/aws/r/ec2_traffic_mirror_filter.html) - - [`aws_ec2_traffic_mirror_session` resource](/docs/providers/aws/r/ec2_traffic_mirror_session.html) + - [`aws_ec2_traffic_mirror_session` resource](/docs/providers/aws/r/ec2_traffic_mirror_session.html) - [`aws_ec2_traffic_mirror_target` resource](/docs/providers/aws/r/ec2_traffic_mirror_target.html) - [`aws_ec2_transit_gateway_route_table` data source](/docs/providers/aws/d/ec2_transit_gateway_route_table.html) - [`aws_ec2_transit_gateway_route_table` resource](/docs/providers/aws/r/ec2_transit_gateway_route_table.html) From b5fead2e451b99e75ed9c91d14692a55b204870f Mon Sep 17 00:00:00 2001 From: drfaust92 Date: Thu, 11 Feb 2021 15:31:31 +0200 Subject: [PATCH 3/4] lint --- website/docs/index.html.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/index.html.markdown b/website/docs/index.html.markdown index 5c3913fb6e7b..bbe1ab154165 100644 --- a/website/docs/index.html.markdown +++ b/website/docs/index.html.markdown @@ -265,7 +265,7 @@ for more information about connecting to alternate AWS endpoints or AWS compatib - [`aws_ebs_volume` data source](/docs/providers/aws/d/ebs_volume.html) - [`aws_ec2_capacity_reservation` resource](/docs/providers/aws/r/ec2_capacity_reservation.html) - [`aws_ec2_client_vpn_endpoint` resource](/docs/providers/aws/r/ec2_client_vpn_endpoint.html) - - [`aws_ec2_traffic_mirror_filter` resource](/docs/providers/aws/r/ec2_traffic_mirror_filter.html) + - [`aws_ec2_traffic_mirror_filter` resource](/docs/providers/aws/r/ec2_traffic_mirror_filter.html) - [`aws_ec2_traffic_mirror_session` resource](/docs/providers/aws/r/ec2_traffic_mirror_session.html) - [`aws_ec2_traffic_mirror_target` resource](/docs/providers/aws/r/ec2_traffic_mirror_target.html) - [`aws_ec2_transit_gateway_route_table` data source](/docs/providers/aws/d/ec2_transit_gateway_route_table.html) From 1dfb153fba59c5b7d6c6966566adbfd8da992f3b Mon Sep 17 00:00:00 2001 From: drfaust92 Date: Thu, 11 Feb 2021 15:34:05 +0200 Subject: [PATCH 4/4] changelog --- .changelog/13948.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/13948.txt diff --git a/.changelog/13948.txt b/.changelog/13948.txt new file mode 100644 index 000000000000..71f2f4e7481d --- /dev/null +++ b/.changelog/13948.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +resource/aws_ec2_traffic_mirror_filter: Add `arn` attribute. +```