From 96a23613a54bb371744373c2a97132600cf2b997 Mon Sep 17 00:00:00 2001 From: "Alexey.Kozyachiy" Date: Wed, 12 May 2021 11:13:50 -0400 Subject: [PATCH 1/6] Add AWS Chime serivce --- .hashibot.hcl | 3 + aws/config.go | 3 + aws/provider.go | 2 + aws/resource_aws_chime_voice_connector.go | 141 ++++++++++++++++++ ...resource_aws_chime_voice_connector_test.go | 98 ++++++++++++ website/allowed-subcategories.txt | 1 + .../guides/custom-service-endpoints.html.md | 1 + .../r/chime_voice_connector.html.markdown | 42 ++++++ 8 files changed, 291 insertions(+) create mode 100644 aws/resource_aws_chime_voice_connector.go create mode 100644 aws/resource_aws_chime_voice_connector_test.go create mode 100644 website/docs/r/chime_voice_connector.html.markdown diff --git a/.hashibot.hcl b/.hashibot.hcl index fec801df9262..62351a747fc5 100644 --- a/.hashibot.hcl +++ b/.hashibot.hcl @@ -91,6 +91,9 @@ behavior "regexp_issue_labeler_v2" "service_labels" { "service/budgets" = [ "aws_budgets_", ], + "service/chime" = [ + "aws_chime_", + ], "service/cloud9" = [ "aws_cloud9_", ], diff --git a/aws/config.go b/aws/config.go index 372e34012501..4b47c42ced4b 100644 --- a/aws/config.go +++ b/aws/config.go @@ -28,6 +28,7 @@ import ( "github.com/aws/aws-sdk-go/service/backup" "github.com/aws/aws-sdk-go/service/batch" "github.com/aws/aws-sdk-go/service/budgets" + "github.com/aws/aws-sdk-go/service/chime" "github.com/aws/aws-sdk-go/service/cloud9" "github.com/aws/aws-sdk-go/service/cloudformation" "github.com/aws/aws-sdk-go/service/cloudfront" @@ -233,6 +234,7 @@ type AWSClient struct { batchconn *batch.Batch budgetconn *budgets.Budgets cfconn *cloudformation.CloudFormation + chimeconn *chime.Chime cloud9conn *cloud9.Cloud9 cloudfrontconn *cloudfront.CloudFront cloudhsmv2conn *cloudhsmv2.CloudHSMV2 @@ -481,6 +483,7 @@ func (c *Config) Client() (interface{}, error) { batchconn: batch.New(sess.Copy(&aws.Config{Endpoint: aws.String(c.Endpoints["batch"])})), budgetconn: budgets.New(sess.Copy(&aws.Config{Endpoint: aws.String(c.Endpoints["budgets"])})), cfconn: cloudformation.New(sess.Copy(&aws.Config{Endpoint: aws.String(c.Endpoints["cloudformation"])})), + chimeconn: chime.New(sess.Copy(&aws.Config{Endpoint: aws.String(c.Endpoints["chime"])})), cloud9conn: cloud9.New(sess.Copy(&aws.Config{Endpoint: aws.String(c.Endpoints["cloud9"])})), cloudfrontconn: cloudfront.New(sess.Copy(&aws.Config{Endpoint: aws.String(c.Endpoints["cloudfront"])})), cloudhsmv2conn: cloudhsmv2.New(sess.Copy(&aws.Config{Endpoint: aws.String(c.Endpoints["cloudhsm"])})), diff --git a/aws/provider.go b/aws/provider.go index e19ff3f64847..138a916143ab 100644 --- a/aws/provider.go +++ b/aws/provider.go @@ -524,6 +524,7 @@ func Provider() *schema.Provider { "aws_backup_vault_notifications": resourceAwsBackupVaultNotifications(), "aws_backup_vault_policy": resourceAwsBackupVaultPolicy(), "aws_budgets_budget": resourceAwsBudgetsBudget(), + "aws_chime_voice_connector": resourceAwsChimeVoiceConnector(), "aws_cloud9_environment_ec2": resourceAwsCloud9EnvironmentEc2(), "aws_cloudformation_stack": resourceAwsCloudFormationStack(), "aws_cloudformation_stack_set": resourceAwsCloudFormationStackSet(), @@ -1269,6 +1270,7 @@ func init() { "backup", "batch", "budgets", + "chime", "cloud9", "cloudformation", "cloudfront", diff --git a/aws/resource_aws_chime_voice_connector.go b/aws/resource_aws_chime_voice_connector.go new file mode 100644 index 000000000000..2a1fe654b003 --- /dev/null +++ b/aws/resource_aws_chime_voice_connector.go @@ -0,0 +1,141 @@ +package aws + +import ( + "fmt" + "log" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/service/chime" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation" +) + +func resourceAwsChimeVoiceConnector() *schema.Resource { + return &schema.Resource{ + Create: resourceAwsChimeVoiceConnectorCreate, + Read: resourceAwsChimeVoiceConnectorRead, + Update: resourceAwsChimeVoiceConnectorUpdate, + Delete: resourceAwsChimeVoiceConnectorDelete, + + Importer: &schema.ResourceImporter{ + StateContext: schema.ImportStatePassthroughContext, + }, + + Schema: map[string]*schema.Schema{ + "outbound_host_name": { + Type: schema.TypeString, + Computed: true, + }, + "name": { + Type: schema.TypeString, + Required: true, + ValidateFunc: validation.NoZeroValues, + }, + "aws_region": { + Type: schema.TypeString, + ForceNew: true, + Optional: true, + Default: chime.VoiceConnectorAwsRegionUsEast1, + ValidateFunc: validation.StringInSlice([]string{chime.VoiceConnectorAwsRegionUsEast1, chime.VoiceConnectorAwsRegionUsWest2}, false), + }, + "require_encryption": { + Type: schema.TypeBool, + Required: true, + }, + }, + } +} + +func resourceAwsChimeVoiceConnectorCreate(d *schema.ResourceData, meta interface{}) error { + conn := meta.(*AWSClient).chimeconn + + createInput := &chime.CreateVoiceConnectorInput{} + + if v, ok := d.GetOk("name"); ok { + createInput.Name = aws.String(v.(string)) + } + + if v, ok := d.GetOk("aws_region"); ok { + createInput.AwsRegion = aws.String(v.(string)) + } + + if v, ok := d.GetOk("require_encryption"); ok { + createInput.RequireEncryption = aws.Bool(v.(bool)) + } + + resp, err := conn.CreateVoiceConnector(createInput) + if err != nil { + return fmt.Errorf("Error creating Chime Voice connector: %s", err) + } + + d.SetId(aws.StringValue(resp.VoiceConnector.VoiceConnectorId)) + + return resourceAwsChimeVoiceConnectorRead(d, meta) +} + +func resourceAwsChimeVoiceConnectorRead(d *schema.ResourceData, meta interface{}) error { + conn := meta.(*AWSClient).chimeconn + + getInput := &chime.GetVoiceConnectorInput{ + VoiceConnectorId: aws.String(d.Id()), + } + + resp, err := conn.GetVoiceConnector(getInput) + if isAWSErr(err, chime.ErrCodeNotFoundException, "") { + log.Printf("[WARN] Chime Voice connector %s not found", d.Id()) + d.SetId("") + return nil + } + + if err != nil { + return fmt.Errorf("Error getting Voice connector (%s): %s", d.Id(), err) + } + + d.Set("aws_region", resp.VoiceConnector.AwsRegion) + d.Set("outbound_host_name", resp.VoiceConnector.OutboundHostName) + d.Set("require_encryption", resp.VoiceConnector.RequireEncryption) + d.Set("name", resp.VoiceConnector.Name) + + return nil +} + +func resourceAwsChimeVoiceConnectorUpdate(d *schema.ResourceData, meta interface{}) error { + conn := meta.(*AWSClient).chimeconn + + updateInput := &chime.UpdateVoiceConnectorInput{ + VoiceConnectorId: aws.String(d.Id()), + } + + if v, ok := d.GetOk("name"); ok { + updateInput.Name = aws.String(v.(string)) + } + + if v, ok := d.GetOk("require_encryption"); ok { + updateInput.RequireEncryption = aws.Bool(v.(bool)) + } + + if _, err := conn.UpdateVoiceConnector(updateInput); err != nil { + if isAWSErr(err, chime.ErrCodeNotFoundException, "") { + log.Printf("[WARN] Chime Voice connector %s not found", d.Id()) + d.SetId("") + return nil + } + return fmt.Errorf("Error updating Voice connector (%s): %s", d.Id(), err) + } + + return resourceAwsChimeVoiceConnectorRead(d, meta) +} + +func resourceAwsChimeVoiceConnectorDelete(d *schema.ResourceData, meta interface{}) error { + conn := meta.(*AWSClient).chimeconn + + input := &chime.DeleteVoiceConnectorInput{ + VoiceConnectorId: aws.String(d.Id()), + } + + if _, err := conn.DeleteVoiceConnector(input); err != nil { + return fmt.Errorf("Error deleting Voice connector (%s)", d.Id()) + } + + return nil +} diff --git a/aws/resource_aws_chime_voice_connector_test.go b/aws/resource_aws_chime_voice_connector_test.go new file mode 100644 index 000000000000..bca0a171380f --- /dev/null +++ b/aws/resource_aws_chime_voice_connector_test.go @@ -0,0 +1,98 @@ +package aws + +import ( + "fmt" + "testing" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/service/chime" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/acctest" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" + "github.com/hashicorp/terraform-plugin-sdk/v2/terraform" +) + +func TestAccAWSChimeVoiceConnector_basic(t *testing.T) { + var voiceConnector *chime.VoiceConnector + + vcName := acctest.RandomWithPrefix("tf-acc-test") + resourceName := "aws_chime_voice_connector.default" + + resource.ParallelTest(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + ErrorCheck: testAccErrorCheck(t, chime.EndpointsID), + Providers: testAccProviders, + CheckDestroy: testAccCheckAWSChimeVoiceConnectorDestroy, + Steps: []resource.TestStep{ + { + Config: testAccAWSChimeVoiceConnectorConfig(vcName), + Check: resource.ComposeTestCheckFunc( + testAccCheckAWSChimeVoiceConnectorExists(resourceName, voiceConnector), + resource.TestCheckResourceAttr(resourceName, "name", fmt.Sprintf("voice-connector-test-%s", vcName)), + ), + }, + { + ResourceName: resourceName, + ImportState: true, + ImportStateVerify: true, + }, + }, + }) +} + +func testAccAWSChimeVoiceConnectorConfig(name string) string { + return fmt.Sprintf(` +resource "aws_chime_voice_connector" "test" { + name = "voice-connector-test-%s" + require_encryption = true +} +`, name) +} + +func testAccCheckAWSChimeVoiceConnectorExists(name string, vc *chime.VoiceConnector) resource.TestCheckFunc { + return func(s *terraform.State) error { + rs, ok := s.RootModule().Resources[name] + if !ok { + return fmt.Errorf("not found: %s", name) + } + + if rs.Primary.ID == "" { + return fmt.Errorf("no Chime voice connector ID is set") + } + + conn := testAccProvider.Meta().(*AWSClient).chimeconn + input := &chime.GetVoiceConnectorInput{ + VoiceConnectorId: aws.String(rs.Primary.ID), + } + resp, err := conn.GetVoiceConnector(input) + if err != nil { + return err + } + + vc = resp.VoiceConnector + + return nil + } +} + +func testAccCheckAWSChimeVoiceConnectorDestroy(s *terraform.State) error { + for _, rs := range s.RootModule().Resources { + if rs.Type != "aws_chime_voice_connector" { + continue + } + conn := testAccProvider.Meta().(*AWSClient).chimeconn + input := &chime.GetVoiceConnectorInput{ + VoiceConnectorId: aws.String(rs.Primary.ID), + } + resp, err := conn.GetVoiceConnector(input) + if err == nil { + if resp.VoiceConnector != nil && aws.StringValue(resp.VoiceConnector.Name) != "" { + return fmt.Errorf("error Chime Voice Connector still exists") + } + } + + return nil + + } + + return nil +} diff --git a/website/allowed-subcategories.txt b/website/allowed-subcategories.txt index fbeef2245903..4880319d4d51 100644 --- a/website/allowed-subcategories.txt +++ b/website/allowed-subcategories.txt @@ -17,6 +17,7 @@ Amazon Managed Service for Prometheus (AMP) Backup Batch Budgets +Chime Cloud9 CloudFormation CloudFront diff --git a/website/docs/guides/custom-service-endpoints.html.md b/website/docs/guides/custom-service-endpoints.html.md index fc513621a1d2..e23f99ffa083 100644 --- a/website/docs/guides/custom-service-endpoints.html.md +++ b/website/docs/guides/custom-service-endpoints.html.md @@ -73,6 +73,7 @@ The Terraform AWS Provider allows the following endpoints to be customized:
  • backup
  • batch
  • budgets
  • +
  • chime
  • cloud9
  • cloudformation
  • cloudfront
  • diff --git a/website/docs/r/chime_voice_connector.html.markdown b/website/docs/r/chime_voice_connector.html.markdown new file mode 100644 index 000000000000..a82abf367945 --- /dev/null +++ b/website/docs/r/chime_voice_connector.html.markdown @@ -0,0 +1,42 @@ +--- +subcategory: "Chime" +layout: "aws" +page_title: "AWS: aws_chime_voice_connector" +description: |- +Enables you to connect your phone system to the telephone network at a substantial cost savings by using SIP trunking. +--- + +# Resource: aws_chime_voice_connector + +Enables you to connect your phone system to the telephone network at a substantial cost savings by using SIP trunking. + + +```terraform +resource "aws_chime_voice_connector" "test" { + name = "connector-test-1" + require_encryption = true + aws_region = "us-east-1" +} +``` + +## Argument Reference + +The following arguments are supported: + +* `name` - (Required) The name of the Amazon Chime Voice Connector. +* `require_encryption` - (Required) When enabled, requires encryption for the Amazon Chime Voice Connector. +* `aws_region` - (Optional) The AWS Region in which the Amazon Chime Voice Connector is created. Default value: `us-east-1` + +## Attributes Reference + +In addition to all arguments above, the following attributes are exported: + +* `outbound_host_name` - The outbound host name for the Amazon Chime Voice Connector. + +## Import + +Configuration Recorder can be imported using the name, e.g. + +``` +$ terraform import aws_chime_voice_connector.test example +``` \ No newline at end of file From 12553250e71b026c0d5fe85692247eb5034d0fdf Mon Sep 17 00:00:00 2001 From: "Alexey.Kozyachiy" Date: Tue, 18 May 2021 10:08:29 -0400 Subject: [PATCH 2/6] Add Changelog file --- .changelog/19343.txt | 3 +++ aws/provider.go | 1 - 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 .changelog/19343.txt diff --git a/.changelog/19343.txt b/.changelog/19343.txt new file mode 100644 index 000000000000..0b3a64e0d182 --- /dev/null +++ b/.changelog/19343.txt @@ -0,0 +1,3 @@ +```release-note:new-service +chime +``` \ No newline at end of file diff --git a/aws/provider.go b/aws/provider.go index 138a916143ab..69008e6522cd 100644 --- a/aws/provider.go +++ b/aws/provider.go @@ -524,7 +524,6 @@ func Provider() *schema.Provider { "aws_backup_vault_notifications": resourceAwsBackupVaultNotifications(), "aws_backup_vault_policy": resourceAwsBackupVaultPolicy(), "aws_budgets_budget": resourceAwsBudgetsBudget(), - "aws_chime_voice_connector": resourceAwsChimeVoiceConnector(), "aws_cloud9_environment_ec2": resourceAwsCloud9EnvironmentEc2(), "aws_cloudformation_stack": resourceAwsCloudFormationStack(), "aws_cloudformation_stack_set": resourceAwsCloudFormationStackSet(), From ffa2f45d65bc3bec4b0ccd4439f99c72b6b79e25 Mon Sep 17 00:00:00 2001 From: "Alexey.Kozyachiy" Date: Tue, 18 May 2021 10:08:53 -0400 Subject: [PATCH 3/6] Remove resource --- aws/resource_aws_chime_voice_connector.go | 141 ------------------ ...resource_aws_chime_voice_connector_test.go | 98 ------------ .../r/chime_voice_connector.html.markdown | 42 ------ 3 files changed, 281 deletions(-) delete mode 100644 aws/resource_aws_chime_voice_connector.go delete mode 100644 aws/resource_aws_chime_voice_connector_test.go delete mode 100644 website/docs/r/chime_voice_connector.html.markdown diff --git a/aws/resource_aws_chime_voice_connector.go b/aws/resource_aws_chime_voice_connector.go deleted file mode 100644 index 2a1fe654b003..000000000000 --- a/aws/resource_aws_chime_voice_connector.go +++ /dev/null @@ -1,141 +0,0 @@ -package aws - -import ( - "fmt" - "log" - - "github.com/aws/aws-sdk-go/aws" - "github.com/aws/aws-sdk-go/service/chime" - "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" - "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation" -) - -func resourceAwsChimeVoiceConnector() *schema.Resource { - return &schema.Resource{ - Create: resourceAwsChimeVoiceConnectorCreate, - Read: resourceAwsChimeVoiceConnectorRead, - Update: resourceAwsChimeVoiceConnectorUpdate, - Delete: resourceAwsChimeVoiceConnectorDelete, - - Importer: &schema.ResourceImporter{ - StateContext: schema.ImportStatePassthroughContext, - }, - - Schema: map[string]*schema.Schema{ - "outbound_host_name": { - Type: schema.TypeString, - Computed: true, - }, - "name": { - Type: schema.TypeString, - Required: true, - ValidateFunc: validation.NoZeroValues, - }, - "aws_region": { - Type: schema.TypeString, - ForceNew: true, - Optional: true, - Default: chime.VoiceConnectorAwsRegionUsEast1, - ValidateFunc: validation.StringInSlice([]string{chime.VoiceConnectorAwsRegionUsEast1, chime.VoiceConnectorAwsRegionUsWest2}, false), - }, - "require_encryption": { - Type: schema.TypeBool, - Required: true, - }, - }, - } -} - -func resourceAwsChimeVoiceConnectorCreate(d *schema.ResourceData, meta interface{}) error { - conn := meta.(*AWSClient).chimeconn - - createInput := &chime.CreateVoiceConnectorInput{} - - if v, ok := d.GetOk("name"); ok { - createInput.Name = aws.String(v.(string)) - } - - if v, ok := d.GetOk("aws_region"); ok { - createInput.AwsRegion = aws.String(v.(string)) - } - - if v, ok := d.GetOk("require_encryption"); ok { - createInput.RequireEncryption = aws.Bool(v.(bool)) - } - - resp, err := conn.CreateVoiceConnector(createInput) - if err != nil { - return fmt.Errorf("Error creating Chime Voice connector: %s", err) - } - - d.SetId(aws.StringValue(resp.VoiceConnector.VoiceConnectorId)) - - return resourceAwsChimeVoiceConnectorRead(d, meta) -} - -func resourceAwsChimeVoiceConnectorRead(d *schema.ResourceData, meta interface{}) error { - conn := meta.(*AWSClient).chimeconn - - getInput := &chime.GetVoiceConnectorInput{ - VoiceConnectorId: aws.String(d.Id()), - } - - resp, err := conn.GetVoiceConnector(getInput) - if isAWSErr(err, chime.ErrCodeNotFoundException, "") { - log.Printf("[WARN] Chime Voice connector %s not found", d.Id()) - d.SetId("") - return nil - } - - if err != nil { - return fmt.Errorf("Error getting Voice connector (%s): %s", d.Id(), err) - } - - d.Set("aws_region", resp.VoiceConnector.AwsRegion) - d.Set("outbound_host_name", resp.VoiceConnector.OutboundHostName) - d.Set("require_encryption", resp.VoiceConnector.RequireEncryption) - d.Set("name", resp.VoiceConnector.Name) - - return nil -} - -func resourceAwsChimeVoiceConnectorUpdate(d *schema.ResourceData, meta interface{}) error { - conn := meta.(*AWSClient).chimeconn - - updateInput := &chime.UpdateVoiceConnectorInput{ - VoiceConnectorId: aws.String(d.Id()), - } - - if v, ok := d.GetOk("name"); ok { - updateInput.Name = aws.String(v.(string)) - } - - if v, ok := d.GetOk("require_encryption"); ok { - updateInput.RequireEncryption = aws.Bool(v.(bool)) - } - - if _, err := conn.UpdateVoiceConnector(updateInput); err != nil { - if isAWSErr(err, chime.ErrCodeNotFoundException, "") { - log.Printf("[WARN] Chime Voice connector %s not found", d.Id()) - d.SetId("") - return nil - } - return fmt.Errorf("Error updating Voice connector (%s): %s", d.Id(), err) - } - - return resourceAwsChimeVoiceConnectorRead(d, meta) -} - -func resourceAwsChimeVoiceConnectorDelete(d *schema.ResourceData, meta interface{}) error { - conn := meta.(*AWSClient).chimeconn - - input := &chime.DeleteVoiceConnectorInput{ - VoiceConnectorId: aws.String(d.Id()), - } - - if _, err := conn.DeleteVoiceConnector(input); err != nil { - return fmt.Errorf("Error deleting Voice connector (%s)", d.Id()) - } - - return nil -} diff --git a/aws/resource_aws_chime_voice_connector_test.go b/aws/resource_aws_chime_voice_connector_test.go deleted file mode 100644 index bca0a171380f..000000000000 --- a/aws/resource_aws_chime_voice_connector_test.go +++ /dev/null @@ -1,98 +0,0 @@ -package aws - -import ( - "fmt" - "testing" - - "github.com/aws/aws-sdk-go/aws" - "github.com/aws/aws-sdk-go/service/chime" - "github.com/hashicorp/terraform-plugin-sdk/v2/helper/acctest" - "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" - "github.com/hashicorp/terraform-plugin-sdk/v2/terraform" -) - -func TestAccAWSChimeVoiceConnector_basic(t *testing.T) { - var voiceConnector *chime.VoiceConnector - - vcName := acctest.RandomWithPrefix("tf-acc-test") - resourceName := "aws_chime_voice_connector.default" - - resource.ParallelTest(t, resource.TestCase{ - PreCheck: func() { testAccPreCheck(t) }, - ErrorCheck: testAccErrorCheck(t, chime.EndpointsID), - Providers: testAccProviders, - CheckDestroy: testAccCheckAWSChimeVoiceConnectorDestroy, - Steps: []resource.TestStep{ - { - Config: testAccAWSChimeVoiceConnectorConfig(vcName), - Check: resource.ComposeTestCheckFunc( - testAccCheckAWSChimeVoiceConnectorExists(resourceName, voiceConnector), - resource.TestCheckResourceAttr(resourceName, "name", fmt.Sprintf("voice-connector-test-%s", vcName)), - ), - }, - { - ResourceName: resourceName, - ImportState: true, - ImportStateVerify: true, - }, - }, - }) -} - -func testAccAWSChimeVoiceConnectorConfig(name string) string { - return fmt.Sprintf(` -resource "aws_chime_voice_connector" "test" { - name = "voice-connector-test-%s" - require_encryption = true -} -`, name) -} - -func testAccCheckAWSChimeVoiceConnectorExists(name string, vc *chime.VoiceConnector) resource.TestCheckFunc { - return func(s *terraform.State) error { - rs, ok := s.RootModule().Resources[name] - if !ok { - return fmt.Errorf("not found: %s", name) - } - - if rs.Primary.ID == "" { - return fmt.Errorf("no Chime voice connector ID is set") - } - - conn := testAccProvider.Meta().(*AWSClient).chimeconn - input := &chime.GetVoiceConnectorInput{ - VoiceConnectorId: aws.String(rs.Primary.ID), - } - resp, err := conn.GetVoiceConnector(input) - if err != nil { - return err - } - - vc = resp.VoiceConnector - - return nil - } -} - -func testAccCheckAWSChimeVoiceConnectorDestroy(s *terraform.State) error { - for _, rs := range s.RootModule().Resources { - if rs.Type != "aws_chime_voice_connector" { - continue - } - conn := testAccProvider.Meta().(*AWSClient).chimeconn - input := &chime.GetVoiceConnectorInput{ - VoiceConnectorId: aws.String(rs.Primary.ID), - } - resp, err := conn.GetVoiceConnector(input) - if err == nil { - if resp.VoiceConnector != nil && aws.StringValue(resp.VoiceConnector.Name) != "" { - return fmt.Errorf("error Chime Voice Connector still exists") - } - } - - return nil - - } - - return nil -} diff --git a/website/docs/r/chime_voice_connector.html.markdown b/website/docs/r/chime_voice_connector.html.markdown deleted file mode 100644 index a82abf367945..000000000000 --- a/website/docs/r/chime_voice_connector.html.markdown +++ /dev/null @@ -1,42 +0,0 @@ ---- -subcategory: "Chime" -layout: "aws" -page_title: "AWS: aws_chime_voice_connector" -description: |- -Enables you to connect your phone system to the telephone network at a substantial cost savings by using SIP trunking. ---- - -# Resource: aws_chime_voice_connector - -Enables you to connect your phone system to the telephone network at a substantial cost savings by using SIP trunking. - - -```terraform -resource "aws_chime_voice_connector" "test" { - name = "connector-test-1" - require_encryption = true - aws_region = "us-east-1" -} -``` - -## Argument Reference - -The following arguments are supported: - -* `name` - (Required) The name of the Amazon Chime Voice Connector. -* `require_encryption` - (Required) When enabled, requires encryption for the Amazon Chime Voice Connector. -* `aws_region` - (Optional) The AWS Region in which the Amazon Chime Voice Connector is created. Default value: `us-east-1` - -## Attributes Reference - -In addition to all arguments above, the following attributes are exported: - -* `outbound_host_name` - The outbound host name for the Amazon Chime Voice Connector. - -## Import - -Configuration Recorder can be imported using the name, e.g. - -``` -$ terraform import aws_chime_voice_connector.test example -``` \ No newline at end of file From dc39e5dc35cbc24560e0d4b5b6f9d025a4bcb4fa Mon Sep 17 00:00:00 2001 From: "Alexey.Kozyachiy" Date: Tue, 18 May 2021 10:32:40 -0400 Subject: [PATCH 4/6] fix changelog file --- .changelog/19343.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.changelog/19343.txt b/.changelog/19343.txt index 0b3a64e0d182..d2d2d24bd37c 100644 --- a/.changelog/19343.txt +++ b/.changelog/19343.txt @@ -1,3 +1,3 @@ -```release-note:new-service -chime +```release-note:enhancement +aws_chime: Add new AWS Chime service ``` \ No newline at end of file From 4e10fd692a018851c4fd37eb5b7b897042f1dbfd Mon Sep 17 00:00:00 2001 From: Kit Ewbank Date: Thu, 20 May 2021 10:47:02 -0400 Subject: [PATCH 5/6] Add Chime service to PR labeler. --- .github/labeler-pr-triage.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/labeler-pr-triage.yml b/.github/labeler-pr-triage.yml index 51eaf2277494..2458add8c9c3 100644 --- a/.github/labeler-pr-triage.yml +++ b/.github/labeler-pr-triage.yml @@ -123,6 +123,10 @@ service/budgets: - 'aws/internal/service/budgets/**/*' - '**/*_budgets_*' - '**/budgets_*' +service/chime: + - 'aws/internal/service/chime/**/*' + - '**/*_chime_*' + - '**/chime_*' service/cloud9: - 'aws/internal/service/cloud9/**/*' - '**/*_cloud9_*' From 49838dc86d6795c6d628444020cbc9d4716ac10e Mon Sep 17 00:00:00 2001 From: Kit Ewbank Date: Thu, 20 May 2021 10:48:58 -0400 Subject: [PATCH 6/6] CHANGELOG entry not needed. --- .changelog/19343.txt | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 .changelog/19343.txt diff --git a/.changelog/19343.txt b/.changelog/19343.txt deleted file mode 100644 index d2d2d24bd37c..000000000000 --- a/.changelog/19343.txt +++ /dev/null @@ -1,3 +0,0 @@ -```release-note:enhancement -aws_chime: Add new AWS Chime service -``` \ No newline at end of file