1. Packages
  2. AWS Native
  3. API Docs
  4. appconfig
  5. Extension

AWS Native is in preview. AWS Classic is fully supported.

AWS Native v0.108.4 published on Tuesday, Jun 18, 2024 by Pulumi

aws-native.appconfig.Extension

Explore with Pulumi AI

aws-native logo

AWS Native is in preview. AWS Classic is fully supported.

AWS Native v0.108.4 published on Tuesday, Jun 18, 2024 by Pulumi

    Resource Type definition for AWS::AppConfig::Extension

    Example Usage

    Example

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AwsNative = Pulumi.AwsNative;
    
    return await Deployment.RunAsync(() => 
    {
        var basicExtension = new AwsNative.AppConfig.Extension("basicExtension", new()
        {
            Name = "My Test Extension",
            Description = "My test extension",
            LatestVersionNumber = 0,
            Actions = 
            {
                { "pre_create_hosted_configuration_version", new[]
                {
                    new AwsNative.AppConfig.Inputs.ExtensionActionArgs
                    {
                        Name = "My Test Action",
                        Uri = "DependentLambda.Arn",
                        RoleArn = "DependentRole.Arn",
                        Description = "My test action point",
                    },
                } },
            },
            Parameters = 
            {
                { "myTestParam", new AwsNative.AppConfig.Inputs.ExtensionParameterArgs
                {
                    Required = false,
                    Description = "My test parameter",
                } },
            },
            Tags = new[]
            {
                new AwsNative.Inputs.CreateOnlyTagArgs
                {
                    Key = "Ext",
                    Value = "Test",
                },
            },
        });
    
    });
    
    package main
    
    import (
    	awsnative "github.com/pulumi/pulumi-aws-native/sdk/go/aws"
    	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/appconfig"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := appconfig.NewExtension(ctx, "basicExtension", &appconfig.ExtensionArgs{
    			Name:                pulumi.String("My Test Extension"),
    			Description:         pulumi.String("My test extension"),
    			LatestVersionNumber: pulumi.Int(0),
    			Actions: appconfig.ExtensionActionArrayMap{
    				"pre_create_hosted_configuration_version": appconfig.ExtensionActionArray{
    					&appconfig.ExtensionActionArgs{
    						Name:        pulumi.String("My Test Action"),
    						Uri:         pulumi.String("DependentLambda.Arn"),
    						RoleArn:     pulumi.String("DependentRole.Arn"),
    						Description: pulumi.String("My test action point"),
    					},
    				},
    			},
    			Parameters: appconfig.ExtensionParameterMap{
    				"myTestParam": &appconfig.ExtensionParameterArgs{
    					Required:    pulumi.Bool(false),
    					Description: pulumi.String("My test parameter"),
    				},
    			},
    			Tags: aws.CreateOnlyTagArray{
    				&aws.CreateOnlyTagArgs{
    					Key:   pulumi.String("Ext"),
    					Value: pulumi.String("Test"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    import pulumi_aws_native as aws_native
    
    basic_extension = aws_native.appconfig.Extension("basicExtension",
        name="My Test Extension",
        description="My test extension",
        latest_version_number=0,
        actions={
            "pre_create_hosted_configuration_version": [aws_native.appconfig.ExtensionActionArgs(
                name="My Test Action",
                uri="DependentLambda.Arn",
                role_arn="DependentRole.Arn",
                description="My test action point",
            )],
        },
        parameters={
            "myTestParam": aws_native.appconfig.ExtensionParameterArgs(
                required=False,
                description="My test parameter",
            ),
        },
        tags=[aws_native.CreateOnlyTagArgs(
            key="Ext",
            value="Test",
        )])
    
    import * as pulumi from "@pulumi/pulumi";
    import * as aws_native from "@pulumi/aws-native";
    
    const basicExtension = new aws_native.appconfig.Extension("basicExtension", {
        name: "My Test Extension",
        description: "My test extension",
        latestVersionNumber: 0,
        actions: {
            pre_create_hosted_configuration_version: [{
                name: "My Test Action",
                uri: "DependentLambda.Arn",
                roleArn: "DependentRole.Arn",
                description: "My test action point",
            }],
        },
        parameters: {
            myTestParam: {
                required: false,
                description: "My test parameter",
            },
        },
        tags: [{
            key: "Ext",
            value: "Test",
        }],
    });
    

    Coming soon!

    Create Extension Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Extension(name: string, args: ExtensionArgs, opts?: CustomResourceOptions);
    @overload
    def Extension(resource_name: str,
                  args: ExtensionArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def Extension(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  actions: Optional[Mapping[str, Sequence[ExtensionActionArgs]]] = None,
                  description: Optional[str] = None,
                  latest_version_number: Optional[int] = None,
                  name: Optional[str] = None,
                  parameters: Optional[Mapping[str, ExtensionParameterArgs]] = None,
                  tags: Optional[Sequence[_root_inputs.CreateOnlyTagArgs]] = None)
    func NewExtension(ctx *Context, name string, args ExtensionArgs, opts ...ResourceOption) (*Extension, error)
    public Extension(string name, ExtensionArgs args, CustomResourceOptions? opts = null)
    public Extension(String name, ExtensionArgs args)
    public Extension(String name, ExtensionArgs args, CustomResourceOptions options)
    
    type: aws-native:appconfig:Extension
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ExtensionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ExtensionArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ExtensionArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ExtensionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ExtensionArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    const extensionResource = new aws_native.appconfig.Extension("extensionResource", {
        actions: {
            string: [{
                name: "string",
                uri: "string",
                description: "string",
                roleArn: "string",
            }],
        },
        description: "string",
        latestVersionNumber: 0,
        name: "string",
        parameters: {
            string: {
                required: false,
                description: "string",
                dynamic: false,
            },
        },
        tags: [{
            key: "string",
            value: "string",
        }],
    });
    
    Coming soon!
    

    Extension Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Extension resource accepts the following input properties:

    Actions Dictionary<string, ImmutableArray<Pulumi.AwsNative.AppConfig.Inputs.ExtensionActionArgs>>
    The actions defined in the extension.
    Description string
    Description of the extension.
    LatestVersionNumber int
    You can omit this field when you create an extension. When you create a new version, specify the most recent current version number. For example, you create version 3, enter 2 for this field.
    Name string
    Name of the extension.
    Parameters Dictionary<string, Pulumi.AwsNative.AppConfig.Inputs.ExtensionParameterArgs>
    The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the CreateExtensionAssociation API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
    Tags List<Pulumi.AwsNative.Inputs.CreateOnlyTag>
    An array of key-value tags to apply to this resource.
    Actions map[string][]ExtensionActionArgs
    The actions defined in the extension.
    Description string
    Description of the extension.
    LatestVersionNumber int
    You can omit this field when you create an extension. When you create a new version, specify the most recent current version number. For example, you create version 3, enter 2 for this field.
    Name string
    Name of the extension.
    Parameters map[string]ExtensionParameterArgs
    The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the CreateExtensionAssociation API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
    Tags CreateOnlyTagArgs
    An array of key-value tags to apply to this resource.
    actions Map<String,List<ExtensionActionArgs>>
    The actions defined in the extension.
    description String
    Description of the extension.
    latestVersionNumber Integer
    You can omit this field when you create an extension. When you create a new version, specify the most recent current version number. For example, you create version 3, enter 2 for this field.
    name String
    Name of the extension.
    parameters Map<String,ExtensionParameterArgs>
    The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the CreateExtensionAssociation API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
    tags List<CreateOnlyTag>
    An array of key-value tags to apply to this resource.
    actions {[key: string]: ExtensionActionArgs[]}
    The actions defined in the extension.
    description string
    Description of the extension.
    latestVersionNumber number
    You can omit this field when you create an extension. When you create a new version, specify the most recent current version number. For example, you create version 3, enter 2 for this field.
    name string
    Name of the extension.
    parameters {[key: string]: ExtensionParameterArgs}
    The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the CreateExtensionAssociation API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
    tags CreateOnlyTag[]
    An array of key-value tags to apply to this resource.
    actions Mapping[str, Sequence[ExtensionActionArgs]]
    The actions defined in the extension.
    description str
    Description of the extension.
    latest_version_number int
    You can omit this field when you create an extension. When you create a new version, specify the most recent current version number. For example, you create version 3, enter 2 for this field.
    name str
    Name of the extension.
    parameters Mapping[str, ExtensionParameterArgs]
    The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the CreateExtensionAssociation API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
    tags Sequence[CreateOnlyTagArgs]
    An array of key-value tags to apply to this resource.
    actions Map<List<Property Map>>
    The actions defined in the extension.
    description String
    Description of the extension.
    latestVersionNumber Number
    You can omit this field when you create an extension. When you create a new version, specify the most recent current version number. For example, you create version 3, enter 2 for this field.
    name String
    Name of the extension.
    parameters Map<Property Map>
    The parameters accepted by the extension. You specify parameter values when you associate the extension to an AWS AppConfig resource by using the CreateExtensionAssociation API action. For AWS Lambda extension actions, these parameters are included in the Lambda request object.
    tags List<Property Map>
    An array of key-value tags to apply to this resource.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Extension resource produces the following output properties:

    Arn string
    The system-generated Amazon Resource Name (ARN) for the extension.
    AwsId string
    The system-generated ID of the extension.
    Id string
    The provider-assigned unique ID for this managed resource.
    VersionNumber int
    The extension version number.
    Arn string
    The system-generated Amazon Resource Name (ARN) for the extension.
    AwsId string
    The system-generated ID of the extension.
    Id string
    The provider-assigned unique ID for this managed resource.
    VersionNumber int
    The extension version number.
    arn String
    The system-generated Amazon Resource Name (ARN) for the extension.
    awsId String
    The system-generated ID of the extension.
    id String
    The provider-assigned unique ID for this managed resource.
    versionNumber Integer
    The extension version number.
    arn string
    The system-generated Amazon Resource Name (ARN) for the extension.
    awsId string
    The system-generated ID of the extension.
    id string
    The provider-assigned unique ID for this managed resource.
    versionNumber number
    The extension version number.
    arn str
    The system-generated Amazon Resource Name (ARN) for the extension.
    aws_id str
    The system-generated ID of the extension.
    id str
    The provider-assigned unique ID for this managed resource.
    version_number int
    The extension version number.
    arn String
    The system-generated Amazon Resource Name (ARN) for the extension.
    awsId String
    The system-generated ID of the extension.
    id String
    The provider-assigned unique ID for this managed resource.
    versionNumber Number
    The extension version number.

    Supporting Types

    CreateOnlyTag, CreateOnlyTagArgs

    Key string
    The key name of the tag
    Value string
    The value of the tag
    Key string
    The key name of the tag
    Value string
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag
    key string
    The key name of the tag
    value string
    The value of the tag
    key str
    The key name of the tag
    value str
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag

    ExtensionAction, ExtensionActionArgs

    Name string
    The name of the extension action.
    Uri string
    The URI of the extension action.
    Description string
    The description of the extension Action.
    RoleArn string
    The ARN of the role for invoking the extension action.
    Name string
    The name of the extension action.
    Uri string
    The URI of the extension action.
    Description string
    The description of the extension Action.
    RoleArn string
    The ARN of the role for invoking the extension action.
    name String
    The name of the extension action.
    uri String
    The URI of the extension action.
    description String
    The description of the extension Action.
    roleArn String
    The ARN of the role for invoking the extension action.
    name string
    The name of the extension action.
    uri string
    The URI of the extension action.
    description string
    The description of the extension Action.
    roleArn string
    The ARN of the role for invoking the extension action.
    name str
    The name of the extension action.
    uri str
    The URI of the extension action.
    description str
    The description of the extension Action.
    role_arn str
    The ARN of the role for invoking the extension action.
    name String
    The name of the extension action.
    uri String
    The URI of the extension action.
    description String
    The description of the extension Action.
    roleArn String
    The ARN of the role for invoking the extension action.

    ExtensionParameter, ExtensionParameterArgs

    Required bool
    Description string
    The description of the extension Parameter.
    Dynamic bool
    Required bool
    Description string
    The description of the extension Parameter.
    Dynamic bool
    required Boolean
    description String
    The description of the extension Parameter.
    dynamic Boolean
    required boolean
    description string
    The description of the extension Parameter.
    dynamic boolean
    required bool
    description str
    The description of the extension Parameter.
    dynamic bool
    required Boolean
    description String
    The description of the extension Parameter.
    dynamic Boolean

    Package Details

    Repository
    AWS Native pulumi/pulumi-aws-native
    License
    Apache-2.0
    aws-native logo

    AWS Native is in preview. AWS Classic is fully supported.

    AWS Native v0.108.4 published on Tuesday, Jun 18, 2024 by Pulumi