@@ -350,6 +350,25 @@ func testAccResourceSecret_text_inline(id string, name string, secretValue strin
350350` , id , name , secretValue )
351351}
352352
353+ func testAccResourceSecret_text_inline_AWS_SM (id string , name string , secretValue , secretManagerIdentifier string ) string {
354+ return fmt .Sprintf (`
355+ resource "harness_platform_secret_text" "test" {
356+ identifier = "%[1]s"
357+ name = "%[2]s"
358+ description = "test"
359+ tags = ["foo:bar"]
360+ secret_manager_identifier = "%[4]s"
361+ value_type = "Inline"
362+ value = "%[3]s"
363+ additional_metadata {
364+ values {
365+ kms_key_id = "awsKMSKeyId"
366+ }
367+ }
368+ }
369+ ` , id , name , secretValue , secretManagerIdentifier )
370+ }
371+
353372func testAccResourceSecret_text_reference (id string , name string , secretValue string , secretManagerIdentifier string ) string {
354373 return fmt .Sprintf (`
355374 resource "harness_platform_secret_text" "test" {
@@ -529,3 +548,55 @@ func TestAccResourceSecretText_GCP_SM_reference(t *testing.T) {
529548 },
530549 })
531550}
551+
552+ func TestAccResourceSecretText_AWS_SM_reference (t * testing.T ) {
553+ id := fmt .Sprintf ("%s_%s" , t .Name (), utils .RandStringBytes (5 ))
554+ name := id
555+ updatedName := fmt .Sprintf ("%s_updated" , name )
556+ secretValue := fmt .Sprintf ("%s_%s" , t .Name (), utils .RandStringBytes (5 ))
557+ updatedValue := secretValue + "updated"
558+ resourceName := "harness_platform_secret_text.test"
559+
560+ resource .UnitTest (t , resource.TestCase {
561+ PreCheck : func () { acctest .TestAccPreCheck (t ) },
562+ ProviderFactories : acctest .ProviderFactories ,
563+ CheckDestroy : testAccSecretDestroy (resourceName ),
564+ Steps : []resource.TestStep {
565+ {
566+ Config : testAccResourceSecret_text_inline_AWS_SM (id , name , secretValue , "harnessSecretManager" ),
567+ Check : resource .ComposeTestCheckFunc (
568+ resource .TestCheckResourceAttr (resourceName , "id" , id ),
569+ resource .TestCheckResourceAttr (resourceName , "identifier" , id ),
570+ resource .TestCheckResourceAttr (resourceName , "name" , name ),
571+ resource .TestCheckResourceAttr (resourceName , "description" , "test" ),
572+ resource .TestCheckResourceAttr (resourceName , "tags.#" , "1" ),
573+ resource .TestCheckResourceAttr (resourceName , "secret_manager_identifier" , "harnessSecretManager" ),
574+ resource .TestCheckResourceAttr (resourceName , "value_type" , "Inline" ),
575+ resource .TestCheckResourceAttr (resourceName , "value" , secretValue ),
576+ resource .TestCheckResourceAttr (resourceName , "additional_metadata.0.values.0.kms_key_id" , "awsKMSKeyId" ),
577+ ),
578+ },
579+ {
580+ Config : testAccResourceSecret_text_inline_AWS_SM (id , updatedName , updatedValue , "harnessSecretManager" ),
581+ Check : resource .ComposeTestCheckFunc (
582+ resource .TestCheckResourceAttr (resourceName , "id" , id ),
583+ resource .TestCheckResourceAttr (resourceName , "identifier" , id ),
584+ resource .TestCheckResourceAttr (resourceName , "name" , updatedName ),
585+ resource .TestCheckResourceAttr (resourceName , "description" , "test" ),
586+ resource .TestCheckResourceAttr (resourceName , "tags.#" , "1" ),
587+ resource .TestCheckResourceAttr (resourceName , "secret_manager_identifier" , "harnessSecretManager" ),
588+ resource .TestCheckResourceAttr (resourceName , "value_type" , "Inline" ),
589+ resource .TestCheckResourceAttr (resourceName , "value" , updatedValue ),
590+ resource .TestCheckResourceAttr (resourceName , "additional_metadata.0.values.0.kms_key_id" , "awsKMSKeyId" ),
591+ ),
592+ },
593+ {
594+ ResourceName : resourceName ,
595+ ImportState : true ,
596+ ImportStateVerify : true ,
597+ ImportStateIdFunc : acctest .AccountLevelResourceImportStateIdFunc (resourceName ),
598+ ImportStateVerifyIgnore : []string {"value" },
599+ },
600+ },
601+ })
602+ }
0 commit comments