1. Packages
  2. AWS Cloud Control
  3. API Docs
  4. appconfig
  5. DeploymentStrategy

We recommend new projects start with resources from the AWS provider.

AWS Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi

aws-native.appconfig.DeploymentStrategy

Explore with Pulumi AI

aws-native logo

We recommend new projects start with resources from the AWS provider.

AWS Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi

    Resource Type definition for AWS::AppConfig::DeploymentStrategy

    Example Usage

    Example

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AwsNative = Pulumi.AwsNative;
    
    return await Deployment.RunAsync(() => 
    {
        var basicDeploymentStrategy = new AwsNative.AppConfig.DeploymentStrategy("basicDeploymentStrategy", new()
        {
            Name = "MyTestDeploymentStrategy",
            Description = "A sample test deployment strategy.",
            DeploymentDurationInMinutes = 3,
            FinalBakeTimeInMinutes = 4,
            GrowthFactor = 10,
            GrowthType = AwsNative.AppConfig.DeploymentStrategyGrowthType.Linear,
            ReplicateTo = AwsNative.AppConfig.DeploymentStrategyReplicateTo.None,
            Tags = new[]
            {
                new AwsNative.Inputs.TagArgs
                {
                    Key = "Env",
                    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.NewDeploymentStrategy(ctx, "basicDeploymentStrategy", &appconfig.DeploymentStrategyArgs{
    			Name:                        pulumi.String("MyTestDeploymentStrategy"),
    			Description:                 pulumi.String("A sample test deployment strategy."),
    			DeploymentDurationInMinutes: pulumi.Float64(3),
    			FinalBakeTimeInMinutes:      pulumi.Float64(4),
    			GrowthFactor:                pulumi.Float64(10),
    			GrowthType:                  appconfig.DeploymentStrategyGrowthTypeLinear,
    			ReplicateTo:                 appconfig.DeploymentStrategyReplicateToNone,
    			Tags: aws.TagArray{
    				&aws.TagArgs{
    					Key:   pulumi.String("Env"),
    					Value: pulumi.String("test"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    import pulumi_aws_native as aws_native
    
    basic_deployment_strategy = aws_native.appconfig.DeploymentStrategy("basicDeploymentStrategy",
        name="MyTestDeploymentStrategy",
        description="A sample test deployment strategy.",
        deployment_duration_in_minutes=3,
        final_bake_time_in_minutes=4,
        growth_factor=10,
        growth_type=aws_native.appconfig.DeploymentStrategyGrowthType.LINEAR,
        replicate_to=aws_native.appconfig.DeploymentStrategyReplicateTo.NONE,
        tags=[{
            "key": "Env",
            "value": "test",
        }])
    
    import * as pulumi from "@pulumi/pulumi";
    import * as aws_native from "@pulumi/aws-native";
    
    const basicDeploymentStrategy = new aws_native.appconfig.DeploymentStrategy("basicDeploymentStrategy", {
        name: "MyTestDeploymentStrategy",
        description: "A sample test deployment strategy.",
        deploymentDurationInMinutes: 3,
        finalBakeTimeInMinutes: 4,
        growthFactor: 10,
        growthType: aws_native.appconfig.DeploymentStrategyGrowthType.Linear,
        replicateTo: aws_native.appconfig.DeploymentStrategyReplicateTo.None,
        tags: [{
            key: "Env",
            value: "test",
        }],
    });
    

    Coming soon!

    Create DeploymentStrategy Resource

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

    Constructor syntax

    new DeploymentStrategy(name: string, args: DeploymentStrategyArgs, opts?: CustomResourceOptions);
    @overload
    def DeploymentStrategy(resource_name: str,
                           args: DeploymentStrategyArgs,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def DeploymentStrategy(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           deployment_duration_in_minutes: Optional[float] = None,
                           growth_factor: Optional[float] = None,
                           replicate_to: Optional[DeploymentStrategyReplicateTo] = None,
                           description: Optional[str] = None,
                           final_bake_time_in_minutes: Optional[float] = None,
                           growth_type: Optional[DeploymentStrategyGrowthType] = None,
                           name: Optional[str] = None,
                           tags: Optional[Sequence[_root_inputs.TagArgs]] = None)
    func NewDeploymentStrategy(ctx *Context, name string, args DeploymentStrategyArgs, opts ...ResourceOption) (*DeploymentStrategy, error)
    public DeploymentStrategy(string name, DeploymentStrategyArgs args, CustomResourceOptions? opts = null)
    public DeploymentStrategy(String name, DeploymentStrategyArgs args)
    public DeploymentStrategy(String name, DeploymentStrategyArgs args, CustomResourceOptions options)
    
    type: aws-native:appconfig:DeploymentStrategy
    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 DeploymentStrategyArgs
    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 DeploymentStrategyArgs
    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 DeploymentStrategyArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DeploymentStrategyArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DeploymentStrategyArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    DeploymentStrategy Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The DeploymentStrategy resource accepts the following input properties:

    DeploymentDurationInMinutes double
    Total amount of time for a deployment to last.
    GrowthFactor double
    The percentage of targets to receive a deployed configuration during each interval.
    ReplicateTo Pulumi.AwsNative.AppConfig.DeploymentStrategyReplicateTo
    Save the deployment strategy to a Systems Manager (SSM) document.
    Description string
    A description of the deployment strategy.
    FinalBakeTimeInMinutes double
    Specifies the amount of time AWS AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AWS AppConfig rolls back the deployment. You must configure permissions for AWS AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AWS AppConfig User Guide.
    GrowthType Pulumi.AwsNative.AppConfig.DeploymentStrategyGrowthType

    The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:

    Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration.

    Exponential: For this type, AWS AppConfig processes the deployment exponentially using the following formula: G*(2^N). In this formula, G is the growth factor specified by the user and N is the number of steps until the configuration is deployed to all targets. For example, if you specify a growth factor of 2, then the system rolls out the configuration as follows:

    2*(2^0)

    2*(2^1)

    2*(2^2)

    Expressed numerically, the deployment rolls out as follows: 2% of the targets, 4% of the targets, 8% of the targets, and continues until the configuration has been deployed to all targets.

    Name string
    A name for the deployment strategy.
    Tags List<Pulumi.AwsNative.Inputs.Tag>
    Assigns metadata to an AWS AppConfig resource. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. You can specify a maximum of 50 tags for a resource.
    DeploymentDurationInMinutes float64
    Total amount of time for a deployment to last.
    GrowthFactor float64
    The percentage of targets to receive a deployed configuration during each interval.
    ReplicateTo DeploymentStrategyReplicateTo
    Save the deployment strategy to a Systems Manager (SSM) document.
    Description string
    A description of the deployment strategy.
    FinalBakeTimeInMinutes float64
    Specifies the amount of time AWS AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AWS AppConfig rolls back the deployment. You must configure permissions for AWS AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AWS AppConfig User Guide.
    GrowthType DeploymentStrategyGrowthType

    The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:

    Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration.

    Exponential: For this type, AWS AppConfig processes the deployment exponentially using the following formula: G*(2^N). In this formula, G is the growth factor specified by the user and N is the number of steps until the configuration is deployed to all targets. For example, if you specify a growth factor of 2, then the system rolls out the configuration as follows:

    2*(2^0)

    2*(2^1)

    2*(2^2)

    Expressed numerically, the deployment rolls out as follows: 2% of the targets, 4% of the targets, 8% of the targets, and continues until the configuration has been deployed to all targets.

    Name string
    A name for the deployment strategy.
    Tags TagArgs
    Assigns metadata to an AWS AppConfig resource. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. You can specify a maximum of 50 tags for a resource.
    deploymentDurationInMinutes Double
    Total amount of time for a deployment to last.
    growthFactor Double
    The percentage of targets to receive a deployed configuration during each interval.
    replicateTo DeploymentStrategyReplicateTo
    Save the deployment strategy to a Systems Manager (SSM) document.
    description String
    A description of the deployment strategy.
    finalBakeTimeInMinutes Double
    Specifies the amount of time AWS AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AWS AppConfig rolls back the deployment. You must configure permissions for AWS AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AWS AppConfig User Guide.
    growthType DeploymentStrategyGrowthType

    The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:

    Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration.

    Exponential: For this type, AWS AppConfig processes the deployment exponentially using the following formula: G*(2^N). In this formula, G is the growth factor specified by the user and N is the number of steps until the configuration is deployed to all targets. For example, if you specify a growth factor of 2, then the system rolls out the configuration as follows:

    2*(2^0)

    2*(2^1)

    2*(2^2)

    Expressed numerically, the deployment rolls out as follows: 2% of the targets, 4% of the targets, 8% of the targets, and continues until the configuration has been deployed to all targets.

    name String
    A name for the deployment strategy.
    tags List<Tag>
    Assigns metadata to an AWS AppConfig resource. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. You can specify a maximum of 50 tags for a resource.
    deploymentDurationInMinutes number
    Total amount of time for a deployment to last.
    growthFactor number
    The percentage of targets to receive a deployed configuration during each interval.
    replicateTo DeploymentStrategyReplicateTo
    Save the deployment strategy to a Systems Manager (SSM) document.
    description string
    A description of the deployment strategy.
    finalBakeTimeInMinutes number
    Specifies the amount of time AWS AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AWS AppConfig rolls back the deployment. You must configure permissions for AWS AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AWS AppConfig User Guide.
    growthType DeploymentStrategyGrowthType

    The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:

    Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration.

    Exponential: For this type, AWS AppConfig processes the deployment exponentially using the following formula: G*(2^N). In this formula, G is the growth factor specified by the user and N is the number of steps until the configuration is deployed to all targets. For example, if you specify a growth factor of 2, then the system rolls out the configuration as follows:

    2*(2^0)

    2*(2^1)

    2*(2^2)

    Expressed numerically, the deployment rolls out as follows: 2% of the targets, 4% of the targets, 8% of the targets, and continues until the configuration has been deployed to all targets.

    name string
    A name for the deployment strategy.
    tags Tag[]
    Assigns metadata to an AWS AppConfig resource. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. You can specify a maximum of 50 tags for a resource.
    deployment_duration_in_minutes float
    Total amount of time for a deployment to last.
    growth_factor float
    The percentage of targets to receive a deployed configuration during each interval.
    replicate_to DeploymentStrategyReplicateTo
    Save the deployment strategy to a Systems Manager (SSM) document.
    description str
    A description of the deployment strategy.
    final_bake_time_in_minutes float
    Specifies the amount of time AWS AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AWS AppConfig rolls back the deployment. You must configure permissions for AWS AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AWS AppConfig User Guide.
    growth_type DeploymentStrategyGrowthType

    The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:

    Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration.

    Exponential: For this type, AWS AppConfig processes the deployment exponentially using the following formula: G*(2^N). In this formula, G is the growth factor specified by the user and N is the number of steps until the configuration is deployed to all targets. For example, if you specify a growth factor of 2, then the system rolls out the configuration as follows:

    2*(2^0)

    2*(2^1)

    2*(2^2)

    Expressed numerically, the deployment rolls out as follows: 2% of the targets, 4% of the targets, 8% of the targets, and continues until the configuration has been deployed to all targets.

    name str
    A name for the deployment strategy.
    tags Sequence[TagArgs]
    Assigns metadata to an AWS AppConfig resource. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. You can specify a maximum of 50 tags for a resource.
    deploymentDurationInMinutes Number
    Total amount of time for a deployment to last.
    growthFactor Number
    The percentage of targets to receive a deployed configuration during each interval.
    replicateTo "NONE" | "SSM_DOCUMENT"
    Save the deployment strategy to a Systems Manager (SSM) document.
    description String
    A description of the deployment strategy.
    finalBakeTimeInMinutes Number
    Specifies the amount of time AWS AppConfig monitors for Amazon CloudWatch alarms after the configuration has been deployed to 100% of its targets, before considering the deployment to be complete. If an alarm is triggered during this time, AWS AppConfig rolls back the deployment. You must configure permissions for AWS AppConfig to roll back based on CloudWatch alarms. For more information, see Configuring permissions for rollback based on Amazon CloudWatch alarms in the AWS AppConfig User Guide.
    growthType "EXPONENTIAL" | "LINEAR"

    The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:

    Linear: For this type, AWS AppConfig processes the deployment by dividing the total number of targets by the value specified for Step percentage. For example, a linear deployment that uses a Step percentage of 10 deploys the configuration to 10 percent of the hosts. After those deployments are complete, the system deploys the configuration to the next 10 percent. This continues until 100% of the targets have successfully received the configuration.

    Exponential: For this type, AWS AppConfig processes the deployment exponentially using the following formula: G*(2^N). In this formula, G is the growth factor specified by the user and N is the number of steps until the configuration is deployed to all targets. For example, if you specify a growth factor of 2, then the system rolls out the configuration as follows:

    2*(2^0)

    2*(2^1)

    2*(2^2)

    Expressed numerically, the deployment rolls out as follows: 2% of the targets, 4% of the targets, 8% of the targets, and continues until the configuration has been deployed to all targets.

    name String
    A name for the deployment strategy.
    tags List<Property Map>
    Assigns metadata to an AWS AppConfig resource. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define. You can specify a maximum of 50 tags for a resource.

    Outputs

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

    AwsId string
    The deployment strategy ID.
    Id string
    The provider-assigned unique ID for this managed resource.
    AwsId string
    The deployment strategy ID.
    Id string
    The provider-assigned unique ID for this managed resource.
    awsId String
    The deployment strategy ID.
    id String
    The provider-assigned unique ID for this managed resource.
    awsId string
    The deployment strategy ID.
    id string
    The provider-assigned unique ID for this managed resource.
    aws_id str
    The deployment strategy ID.
    id str
    The provider-assigned unique ID for this managed resource.
    awsId String
    The deployment strategy ID.
    id String
    The provider-assigned unique ID for this managed resource.

    Supporting Types

    DeploymentStrategyGrowthType, DeploymentStrategyGrowthTypeArgs

    Exponential
    EXPONENTIAL
    Linear
    LINEAR
    DeploymentStrategyGrowthTypeExponential
    EXPONENTIAL
    DeploymentStrategyGrowthTypeLinear
    LINEAR
    Exponential
    EXPONENTIAL
    Linear
    LINEAR
    Exponential
    EXPONENTIAL
    Linear
    LINEAR
    EXPONENTIAL
    EXPONENTIAL
    LINEAR
    LINEAR
    "EXPONENTIAL"
    EXPONENTIAL
    "LINEAR"
    LINEAR

    DeploymentStrategyReplicateTo, DeploymentStrategyReplicateToArgs

    None
    NONE
    SsmDocument
    SSM_DOCUMENT
    DeploymentStrategyReplicateToNone
    NONE
    DeploymentStrategyReplicateToSsmDocument
    SSM_DOCUMENT
    None
    NONE
    SsmDocument
    SSM_DOCUMENT
    None
    NONE
    SsmDocument
    SSM_DOCUMENT
    NONE
    NONE
    SSM_DOCUMENT
    SSM_DOCUMENT
    "NONE"
    NONE
    "SSM_DOCUMENT"
    SSM_DOCUMENT

    Tag, TagArgs

    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

    Package Details

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

    We recommend new projects start with resources from the AWS provider.

    AWS Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi