NAME
Paws::CodeDeploy::CreateDeploymentGroup - Arguments for method CreateDeploymentGroup on Paws::CodeDeploy
DESCRIPTION
This class represents the parameters used for calling the method CreateDeploymentGroup on the AWS CodeDeploy service. Use the attributes of this class as arguments to method CreateDeploymentGroup.
You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateDeploymentGroup.
SYNOPSIS
my $codedeploy = Paws->service('CodeDeploy');
my $CreateDeploymentGroupOutput = $codedeploy->CreateDeploymentGroup(
ApplicationName => 'MyApplicationName',
DeploymentGroupName => 'MyDeploymentGroupName',
ServiceRoleArn => 'MyRole',
AlarmConfiguration => {
Alarms => [
{
Name => 'MyAlarmName', # OPTIONAL
},
...
], # OPTIONAL
Enabled => 1, # OPTIONAL
IgnorePollAlarmFailure => 1, # OPTIONAL
}, # OPTIONAL
AutoRollbackConfiguration => {
Enabled => 1, # OPTIONAL
Events => [
'DEPLOYMENT_FAILURE',
... # values: DEPLOYMENT_FAILURE, DEPLOYMENT_STOP_ON_ALARM, DEPLOYMENT_STOP_ON_REQUEST
], # OPTIONAL
}, # OPTIONAL
AutoScalingGroups => [ 'MyAutoScalingGroupName', ... ], # OPTIONAL
BlueGreenDeploymentConfiguration => {
DeploymentReadyOption => {
ActionOnTimeout => 'CONTINUE_DEPLOYMENT'
, # values: CONTINUE_DEPLOYMENT, STOP_DEPLOYMENT; OPTIONAL
WaitTimeInMinutes => 1, # OPTIONAL
}, # OPTIONAL
GreenFleetProvisioningOption => {
Action => 'DISCOVER_EXISTING'
, # values: DISCOVER_EXISTING, COPY_AUTO_SCALING_GROUP; OPTIONAL
}, # OPTIONAL
TerminateBlueInstancesOnDeploymentSuccess => {
Action => 'TERMINATE', # values: TERMINATE, KEEP_ALIVE; OPTIONAL
TerminationWaitTimeInMinutes => 1, # OPTIONAL
}, # OPTIONAL
}, # OPTIONAL
DeploymentConfigName => 'MyDeploymentConfigName', # OPTIONAL
DeploymentStyle => {
DeploymentOption => 'WITH_TRAFFIC_CONTROL'
, # values: WITH_TRAFFIC_CONTROL, WITHOUT_TRAFFIC_CONTROL; OPTIONAL
DeploymentType => 'IN_PLACE', # values: IN_PLACE, BLUE_GREEN; OPTIONAL
}, # OPTIONAL
Ec2TagFilters => [
{
Key => 'MyKey', # OPTIONAL
Type =>
'KEY_ONLY', # values: KEY_ONLY, VALUE_ONLY, KEY_AND_VALUE; OPTIONAL
Value => 'MyValue', # OPTIONAL
},
...
], # OPTIONAL
Ec2TagSet => {
Ec2TagSetList => [
[
{
Key => 'MyKey', # OPTIONAL
Type => 'KEY_ONLY'
, # values: KEY_ONLY, VALUE_ONLY, KEY_AND_VALUE; OPTIONAL
Value => 'MyValue', # OPTIONAL
},
...
],
...
], # OPTIONAL
}, # OPTIONAL
EcsServices => [
{
ClusterName => 'MyECSClusterName', # OPTIONAL
ServiceName => 'MyECSServiceName', # OPTIONAL
},
...
], # OPTIONAL
LoadBalancerInfo => {
ElbInfoList => [
{
Name => 'MyELBName', # OPTIONAL
},
...
], # OPTIONAL
TargetGroupInfoList => [
{
Name => 'MyTargetGroupName', # OPTIONAL
},
...
], # OPTIONAL
TargetGroupPairInfoList => [
{
ProdTrafficRoute => {
ListenerArns => [ 'MyListenerArn', ... ], # OPTIONAL
}, # OPTIONAL
TargetGroups => [
{
Name => 'MyTargetGroupName', # OPTIONAL
},
...
], # OPTIONAL
TestTrafficRoute => {
ListenerArns => [ 'MyListenerArn', ... ], # OPTIONAL
}, # OPTIONAL
},
...
], # OPTIONAL
}, # OPTIONAL
OnPremisesInstanceTagFilters => [
{
Key => 'MyKey', # OPTIONAL
Type =>
'KEY_ONLY', # values: KEY_ONLY, VALUE_ONLY, KEY_AND_VALUE; OPTIONAL
Value => 'MyValue', # OPTIONAL
},
...
], # OPTIONAL
OnPremisesTagSet => {
OnPremisesTagSetList => [
[
{
Key => 'MyKey', # OPTIONAL
Type => 'KEY_ONLY'
, # values: KEY_ONLY, VALUE_ONLY, KEY_AND_VALUE; OPTIONAL
Value => 'MyValue', # OPTIONAL
},
...
],
...
], # OPTIONAL
}, # OPTIONAL
OutdatedInstancesStrategy => 'UPDATE', # OPTIONAL
Tags => [
{
Key => 'MyKey', # OPTIONAL
Value => 'MyValue', # OPTIONAL
},
...
], # OPTIONAL
TriggerConfigurations => [
{
TriggerEvents => [
'DeploymentStart',
... # values: DeploymentStart, DeploymentSuccess, DeploymentFailure, DeploymentStop, DeploymentRollback, DeploymentReady, InstanceStart, InstanceSuccess, InstanceFailure, InstanceReady
], # OPTIONAL
TriggerName => 'MyTriggerName', # OPTIONAL
TriggerTargetArn => 'MyTriggerTargetArn', # OPTIONAL
},
...
], # OPTIONAL
);
# Results:
my $DeploymentGroupId = $CreateDeploymentGroupOutput->DeploymentGroupId;
# Returns a L<Paws::CodeDeploy::CreateDeploymentGroupOutput> object.
Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/codedeploy/CreateDeploymentGroup
ATTRIBUTES
AlarmConfiguration => Paws::CodeDeploy::AlarmConfiguration
Information to add about Amazon CloudWatch alarms when the deployment group is created.
REQUIRED ApplicationName => Str
The name of an AWS CodeDeploy application associated with the IAM user or AWS account.
AutoRollbackConfiguration => Paws::CodeDeploy::AutoRollbackConfiguration
Configuration information for an automatic rollback that is added when a deployment group is created.
AutoScalingGroups => ArrayRef[Str|Undef]
A list of associated Amazon EC2 Auto Scaling groups.
BlueGreenDeploymentConfiguration => Paws::CodeDeploy::BlueGreenDeploymentConfiguration
Information about blue/green deployment options for a deployment group.
DeploymentConfigName => Str
If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.
CodeDeployDefault.OneAtATime
is the default deployment configuration. It is used if a configuration isn't specified for the deployment or deployment group.
For more information about the predefined deployment configurations in AWS CodeDeploy, see Working with Deployment Configurations in CodeDeploy (https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations.html) in the AWS CodeDeploy User Guide.
REQUIRED DeploymentGroupName => Str
The name of a new deployment group for the specified application.
DeploymentStyle => Paws::CodeDeploy::DeploymentStyle
Information about the type of deployment, in-place or blue/green, that you want to run and whether to route deployment traffic behind a load balancer.
Ec2TagFilters => ArrayRef[Paws::CodeDeploy::EC2TagFilter]
The Amazon EC2 tags on which to filter. The deployment group includes EC2 instances with any of the specified tags. Cannot be used in the same call as ec2TagSet.
Ec2TagSet => Paws::CodeDeploy::EC2TagSet
Information about groups of tags applied to EC2 instances. The deployment group includes only EC2 instances identified by all the tag groups. Cannot be used in the same call as ec2TagFilters
.
EcsServices => ArrayRef[Paws::CodeDeploy::ECSService]
The target Amazon ECS services in the deployment group. This applies only to deployment groups that use the Amazon ECS compute platform. A target Amazon ECS service is specified as an Amazon ECS cluster and service name pair using the format <clustername>:<servicename>
.
LoadBalancerInfo => Paws::CodeDeploy::LoadBalancerInfo
Information about the load balancer used in a deployment.
OnPremisesInstanceTagFilters => ArrayRef[Paws::CodeDeploy::TagFilter]
The on-premises instance tags on which to filter. The deployment group includes on-premises instances with any of the specified tags. Cannot be used in the same call as OnPremisesTagSet
.
OnPremisesTagSet => Paws::CodeDeploy::OnPremisesTagSet
Information about groups of tags applied to on-premises instances. The deployment group includes only on-premises instances identified by all of the tag groups. Cannot be used in the same call as onPremisesInstanceTagFilters
.
OutdatedInstancesStrategy => Str
Indicates what happens when new EC2 instances are launched mid-deployment and do not receive the deployed application revision.
If this option is set to UPDATE
or is unspecified, CodeDeploy initiates one or more 'auto-update outdated instances' deployments to apply the deployed application revision to the new EC2 instances.
If this option is set to IGNORE
, CodeDeploy does not initiate a deployment to update the new EC2 instances. This may result in instances having different revisions.
Valid values are: "UPDATE"
, "IGNORE"
REQUIRED ServiceRoleArn => Str
A service role Amazon Resource Name (ARN) that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.
Tags => ArrayRef[Paws::CodeDeploy::Tag]
The metadata that you apply to CodeDeploy deployment groups to help you organize and categorize them. Each tag consists of a key and an optional value, both of which you define.
TriggerConfigurations => ArrayRef[Paws::CodeDeploy::TriggerConfig]
Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event (https://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-notify-sns.html) in the AWS CodeDeploy User Guide.
SEE ALSO
This class forms part of Paws, documenting arguments for method CreateDeploymentGroup in Paws::CodeDeploy
BUGS and CONTRIBUTIONS
The source code is located here: https://github.com/pplu/aws-sdk-perl
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues