Class CfnDeploymentStrategy
A CloudFormation AWS::AppConfig::DeploymentStrategy
.
Inherited Members
Namespace: Amazon.CDK.AWS.AppConfig
Assembly: Amazon.CDK.AWS.AppConfig.dll
Syntax (csharp)
public class CfnDeploymentStrategy : CfnResource, IConstruct, IDependable, IInspectable
Syntax (vb)
Public Class CfnDeploymentStrategy
Inherits CfnResource
Implements IConstruct, IDependable, IInspectable
Remarks
The AWS::AppConfig::DeploymentStrategy
resource creates an AWS AppConfig deployment strategy. A deployment strategy defines important criteria for rolling out your configuration to the designated targets. A deployment strategy includes: the overall duration required, a percentage of targets to receive the deployment during each interval, an algorithm that defines how percentage grows, and bake time.
AWS AppConfig requires that you create resources and deploy a configuration in the following order:
For more information, see AWS AppConfig in the AWS AppConfig User Guide .
CloudformationResource: AWS::AppConfig::DeploymentStrategy
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.AppConfig;
var cfnDeploymentStrategy = new CfnDeploymentStrategy(this, "MyCfnDeploymentStrategy", new CfnDeploymentStrategyProps {
DeploymentDurationInMinutes = 123,
GrowthFactor = 123,
Name = "name",
ReplicateTo = "replicateTo",
// the properties below are optional
Description = "description",
FinalBakeTimeInMinutes = 123,
GrowthType = "growthType",
Tags = new [] { new TagsProperty {
Key = "key",
Value = "value"
} }
});
Synopsis
Constructors
CfnDeploymentStrategy(Construct, String, ICfnDeploymentStrategyProps) | Create a new |
CfnDeploymentStrategy(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnDeploymentStrategy(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
Properties
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
DeploymentDurationInMinutes | Total amount of time for a deployment to last. |
Description | A description of the deployment strategy. |
FinalBakeTimeInMinutes | 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. |
GrowthFactor | The percentage of targets to receive a deployed configuration during each interval. |
GrowthType | The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:. |
Name | A name for the deployment strategy. |
ReplicateTo | Save the deployment strategy to a Systems Manager (SSM) document. |
Tags | Assigns metadata to an AWS AppConfig resource. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnDeploymentStrategy(Construct, String, ICfnDeploymentStrategyProps)
Create a new AWS::AppConfig::DeploymentStrategy
.
public CfnDeploymentStrategy(Construct scope, string id, ICfnDeploymentStrategyProps props)
Parameters
- scope Construct
- scope in which this resource is defined.
- id System.String
- scoped id of the resource.
- props ICfnDeploymentStrategyProps
- resource properties.
CfnDeploymentStrategy(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnDeploymentStrategy(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnDeploymentStrategy(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnDeploymentStrategy(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
Properties
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
DeploymentDurationInMinutes
Total amount of time for a deployment to last.
public virtual double DeploymentDurationInMinutes { get; set; }
Property Value
System.Double
Remarks
Description
A description of the deployment strategy.
public virtual string Description { get; set; }
Property Value
System.String
Remarks
FinalBakeTimeInMinutes
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.
public virtual Nullable<double> FinalBakeTimeInMinutes { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
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 .
GrowthFactor
The percentage of targets to receive a deployed configuration during each interval.
public virtual double GrowthFactor { get; set; }
Property Value
System.Double
Remarks
GrowthType
The algorithm used to define how percentage grows over time. AWS AppConfig supports the following growth types:.
public virtual string GrowthType { get; set; }
Property Value
System.String
Remarks
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
A name for the deployment strategy.
public virtual string Name { get; set; }
Property Value
System.String
Remarks
ReplicateTo
Save the deployment strategy to a Systems Manager (SSM) document.
public virtual string ReplicateTo { get; set; }
Property Value
System.String
Remarks
Tags
Assigns metadata to an AWS AppConfig resource.
public virtual CfnDeploymentStrategy.ITagsProperty[] Tags { get; set; }
Property Value
CfnDeploymentStrategy.ITagsProperty[]
Remarks
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.
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
- tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>