Skip to content

Resource: awsAppconfigExtensionAssociation

Associates an AppConfig Extension with a Resource.

Example Usage

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as aws from "./.gen/providers/aws";
const awsAppconfigApplicationTest =
  new aws.appconfigApplication.AppconfigApplication(this, "test", {
    name: "test",
  });
const awsSnsTopicTest = new aws.snsTopic.SnsTopic(this, "test_1", {
  name: "test",
});
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
awsSnsTopicTest.overrideLogicalId("test");
const dataAwsIamPolicyDocumentTest =
  new aws.dataAwsIamPolicyDocument.DataAwsIamPolicyDocument(this, "test_2", {
    statement: [
      {
        actions: ["sts:AssumeRole"],
        principals: [
          {
            identifiers: ["appconfig.amazonaws.com"],
            type: "Service",
          },
        ],
      },
    ],
  });
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
dataAwsIamPolicyDocumentTest.overrideLogicalId("test");
const awsIamRoleTest = new aws.iamRole.IamRole(this, "test_3", {
  assumeRolePolicy: dataAwsIamPolicyDocumentTest.json,
  name: "test",
});
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
awsIamRoleTest.overrideLogicalId("test");
const awsAppconfigExtensionTest = new aws.appconfigExtension.AppconfigExtension(
  this,
  "test_4",
  {
    actionPoint: [
      {
        action: [
          {
            name: "test",
            roleArn: awsIamRoleTest.arn,
            uri: awsSnsTopicTest.arn,
          },
        ],
        point: "ON_DEPLOYMENT_COMPLETE",
      },
    ],
    description: "test description",
    name: "test",
    tags: {
      Type: "AppConfig Extension",
    },
  }
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
awsAppconfigExtensionTest.overrideLogicalId("test");
const awsAppconfigExtensionAssociationTest =
  new aws.appconfigExtensionAssociation.AppconfigExtensionAssociation(
    this,
    "test_5",
    {
      extensionArn: awsAppconfigExtensionTest.arn,
      resourceArn: awsAppconfigApplicationTest.arn,
    }
  );
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
awsAppconfigExtensionAssociationTest.overrideLogicalId("test");

Argument Reference

The following arguments are supported:

  • extensionArn - (Required) The ARN of the extension defined in the association.
  • resourceArn - (Optional) The ARN of the application, configuration profile, or environment to associate with the extension.
  • parameters - (Optional) The parameter names and values defined for the association.

Attributes Reference

In addition to all arguments above, the following attributes are exported:

  • arn - ARN of the AppConfig Extension Association.
  • id - AppConfig Extension Association ID.
  • extensionVersion - The version number for the extension defined in the association.

Import

AppConfig Extension Associations can be imported using their extension association ID, e.g.,

$ terraform import aws_appconfig_extension_association.example 71rxuzt