NAME

Paws::ServerlessRepo::CreateCloudFormationChangeSet - Arguments for method CreateCloudFormationChangeSet on Paws::ServerlessRepo

DESCRIPTION

This class represents the parameters used for calling the method CreateCloudFormationChangeSet on the AWSServerlessApplicationRepository service. Use the attributes of this class as arguments to method CreateCloudFormationChangeSet.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateCloudFormationChangeSet.

SYNOPSIS

my $serverlessrepo = Paws->service('ServerlessRepo');
my $CreateCloudFormationChangeSetResponse =
  $serverlessrepo->CreateCloudFormationChangeSet(
  ApplicationId      => 'My__string',
  StackName          => 'My__string',
  Capabilities       => [ 'My__string', ... ],    # OPTIONAL
  ChangeSetName      => 'My__string',             # OPTIONAL
  ClientToken        => 'My__string',             # OPTIONAL
  Description        => 'My__string',             # OPTIONAL
  NotificationArns   => [ 'My__string', ... ],    # OPTIONAL
  ParameterOverrides => [
    {
      Name  => 'My__string',
      Value => 'My__string',

    },
    ...
  ],                                              # OPTIONAL
  ResourceTypes         => [ 'My__string', ... ], # OPTIONAL
  RollbackConfiguration => {
    MonitoringTimeInMinutes => 1,                 # OPTIONAL
    RollbackTriggers        => [
      {
        Arn  => 'My__string',
        Type => 'My__string',

      },
      ...
    ],                                            # OPTIONAL
  },    # OPTIONAL
  SemanticVersion => 'My__string',    # OPTIONAL
  Tags            => [
    {
      Key   => 'My__string',
      Value => 'My__string',

    },
    ...
  ],                                  # OPTIONAL
  TemplateId => 'My__string',         # OPTIONAL
  );

# Results:
my $ApplicationId = $CreateCloudFormationChangeSetResponse->ApplicationId;
my $ChangeSetId   = $CreateCloudFormationChangeSetResponse->ChangeSetId;
my $SemanticVersion =
  $CreateCloudFormationChangeSetResponse->SemanticVersion;
my $StackId = $CreateCloudFormationChangeSetResponse->StackId;

# Returns a Paws::ServerlessRepo::CreateCloudFormationChangeSetResponse 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/serverlessrepo/CreateCloudFormationChangeSet

ATTRIBUTES

REQUIRED ApplicationId => Str

The Amazon Resource Name (ARN) of the application.

Capabilities => ArrayRef[Str|Undef]

A list of values that you must specify before you can deploy certain applications. Some applications might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by specifying this parameter.

The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY, and CAPABILITY_AUTO_EXPAND.

The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html), AWS::IAM::InstanceProfile (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html), AWS::IAM::Policy (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html), and AWS::IAM::Role (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). If the application contains IAM resources, you can specify either CAPABILITY_IAM or CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::Lambda::Permission (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html), AWS::IAM:Policy (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html), AWS::ApplicationAutoScaling::ScalingPolicy (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html), AWS::S3::BucketPolicy (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html), AWS::SQS::QueuePolicy (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html), and AWS::SNS:TopicPolicy (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html).

Applications that contain one or more nested applications require you to specify CAPABILITY_AUTO_EXPAND.

If your application template contains any of the above resources, we recommend that you review all permissions associated with the application before deploying. If you don't specify this parameter for an application that requires capabilities, the call will fail.

ChangeSetName => Str

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet (https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet) API.

ClientToken => Str

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet (https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet) API.

Description => Str

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet (https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet) API.

NotificationArns => ArrayRef[Str|Undef]

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet (https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet) API.

ParameterOverrides => ArrayRef[Paws::ServerlessRepo::ParameterValue]

A list of parameter values for the parameters of the application.

ResourceTypes => ArrayRef[Str|Undef]

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet (https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet) API.

RollbackConfiguration => Paws::ServerlessRepo::RollbackConfiguration

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet (https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet) API.

SemanticVersion => Str

The semantic version of the application:

https://semver.org/ (https://semver.org/)

REQUIRED StackName => Str

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet (https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet) API.

Tags => ArrayRef[Paws::ServerlessRepo::Tag]

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet (https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet) API.

TemplateId => Str

The UUID returned by CreateCloudFormationTemplate.

Pattern: [0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}

SEE ALSO

This class forms part of Paws, documenting arguments for method CreateCloudFormationChangeSet in Paws::ServerlessRepo

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