NAME

Paws::CloudFormation - Perl Interface to AWS AWS CloudFormation

SYNOPSIS

  use Paws;

  my $obj = Paws->service('CloudFormation');
  my $res = $obj->Method(
    Arg1 => $val1,
    Arg2 => [ 'V1', 'V2' ],
    # if Arg3 is an object, the HashRef will be used as arguments to the constructor
    # of the arguments type
    Arg3 => { Att1 => 'Val1' },
    # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
    # the constructor of the arguments type
    Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
  );

DESCRIPTION

AWS CloudFormation

AWS CloudFormation allows you to create and manage AWS infrastructure deployments predictably and repeatedly. You can use AWS CloudFormation to leverage AWS products, such as Amazon Elastic Compute Cloud, Amazon Elastic Block Store, Amazon Simple Notification Service, Elastic Load Balancing, and Auto Scaling to build highly-reliable, highly scalable, cost-effective applications without creating or configuring the underlying AWS infrastructure.

With AWS CloudFormation, you declare all of your resources and dependencies in a template file. The template defines a collection of resources as a single unit called a stack. AWS CloudFormation creates and deletes all member resources of the stack together and manages all dependencies between the resources for you.

For more information about AWS CloudFormation, see the AWS CloudFormation Product Page.

Amazon CloudFormation makes use of other AWS products. For additional technical information about a specific AWS product, see its technical documentation.

METHODS

CancelUpdateStack(StackName => Str)

Each argument is described in detail in: Paws::CloudFormation::CancelUpdateStack

Returns: nothing

  Cancels an update on the specified stack. If the call completes
successfully, the stack rolls back the update and reverts to the
previous stack configuration.

You can cancel only stacks that are in the UPDATE_IN_PROGRESS state.

ContinueUpdateRollback(StackName => Str, [ResourcesToSkip => ArrayRef[Str|Undef], RoleARN => Str])

Each argument is described in detail in: Paws::CloudFormation::ContinueUpdateRollback

Returns: a Paws::CloudFormation::ContinueUpdateRollbackOutput instance

  For a specified stack that is in the C<UPDATE_ROLLBACK_FAILED> state,
continues rolling it back to the C<UPDATE_ROLLBACK_COMPLETE> state.
Depending on the cause of the failure, you can manually fix the error
and continue the rollback. By continuing the rollback, you can return
your stack to a working state (the C<UPDATE_ROLLBACK_COMPLETE> state),
and then try to update the stack again.

A stack goes into the UPDATE_ROLLBACK_FAILED state when AWS CloudFormation cannot roll back all changes after a failed stack update. For example, you might have a stack that is rolling back to an old database instance that was deleted outside of AWS CloudFormation. Because AWS CloudFormation doesn't know the database was deleted, it assumes that the database instance still exists and attempts to roll back to it, causing the update rollback to fail.

CreateChangeSet(ChangeSetName => Str, StackName => Str, [Capabilities => ArrayRef[Str|Undef], ChangeSetType => Str, ClientToken => Str, Description => Str, NotificationARNs => ArrayRef[Str|Undef], Parameters => ArrayRef[Paws::CloudFormation::Parameter], ResourceTypes => ArrayRef[Str|Undef], RoleARN => Str, Tags => ArrayRef[Paws::CloudFormation::Tag], TemplateBody => Str, TemplateURL => Str, UsePreviousTemplate => Bool])

Each argument is described in detail in: Paws::CloudFormation::CreateChangeSet

Returns: a Paws::CloudFormation::CreateChangeSetOutput instance

  Creates a list of changes for a stack. AWS CloudFormation generates the
change set by comparing the template's information with the information
that you submit. A change set can help you understand which resources
AWS CloudFormation will change, and how it will change them, before you
update your stack. Change sets allow you to check before making a
change to avoid deleting or replacing critical resources.

AWS CloudFormation doesn't make any changes to the stack when you create a change set. To make the specified changes, you must execute the change set by using the ExecuteChangeSet action.

After the call successfully completes, AWS CloudFormation starts creating the change set. To check the status of the change set, use the DescribeChangeSet action.

CreateStack(StackName => Str, [Capabilities => ArrayRef[Str|Undef], DisableRollback => Bool, NotificationARNs => ArrayRef[Str|Undef], OnFailure => Str, Parameters => ArrayRef[Paws::CloudFormation::Parameter], ResourceTypes => ArrayRef[Str|Undef], RoleARN => Str, StackPolicyBody => Str, StackPolicyURL => Str, Tags => ArrayRef[Paws::CloudFormation::Tag], TemplateBody => Str, TemplateURL => Str, TimeoutInMinutes => Int])

Each argument is described in detail in: Paws::CloudFormation::CreateStack

Returns: a Paws::CloudFormation::CreateStackOutput instance

  Creates a stack as specified in the template. After the call completes
successfully, the stack creation starts. You can check the status of
the stack via the DescribeStacks API.

DeleteChangeSet(ChangeSetName => Str, [StackName => Str])

Each argument is described in detail in: Paws::CloudFormation::DeleteChangeSet

Returns: a Paws::CloudFormation::DeleteChangeSetOutput instance

  Deletes the specified change set. Deleting change sets ensures that no
one executes the wrong change set.

If the call successfully completes, AWS CloudFormation successfully deleted the change set.

DeleteStack(StackName => Str, [RetainResources => ArrayRef[Str|Undef], RoleARN => Str])

Each argument is described in detail in: Paws::CloudFormation::DeleteStack

Returns: nothing

  Deletes a specified stack. Once the call completes successfully, stack
deletion starts. Deleted stacks do not show up in the DescribeStacks
API if the deletion has been completed successfully.

DescribeAccountLimits([NextToken => Str])

Each argument is described in detail in: Paws::CloudFormation::DescribeAccountLimits

Returns: a Paws::CloudFormation::DescribeAccountLimitsOutput instance

  Retrieves your account's AWS CloudFormation limits, such as the maximum
number of stacks that you can create in your account.

DescribeChangeSet(ChangeSetName => Str, [NextToken => Str, StackName => Str])

Each argument is described in detail in: Paws::CloudFormation::DescribeChangeSet

Returns: a Paws::CloudFormation::DescribeChangeSetOutput instance

  Returns the inputs for the change set and a list of changes that AWS
CloudFormation will make if you execute the change set. For more
information, see Updating Stacks Using Change Sets in the AWS
CloudFormation User Guide.

DescribeStackEvents([NextToken => Str, StackName => Str])

Each argument is described in detail in: Paws::CloudFormation::DescribeStackEvents

Returns: a Paws::CloudFormation::DescribeStackEventsOutput instance

  Returns all stack related events for a specified stack in reverse
chronological order. For more information about a stack's event
history, go to Stacks in the AWS CloudFormation User Guide.

You can list events for stacks that have failed to create or have been deleted by specifying the unique stack identifier (stack ID).

DescribeStackResource(LogicalResourceId => Str, StackName => Str)

Each argument is described in detail in: Paws::CloudFormation::DescribeStackResource

Returns: a Paws::CloudFormation::DescribeStackResourceOutput instance

  Returns a description of the specified resource in the specified stack.

For deleted stacks, DescribeStackResource returns resource information for up to 90 days after the stack has been deleted.

DescribeStackResources([LogicalResourceId => Str, PhysicalResourceId => Str, StackName => Str])

Each argument is described in detail in: Paws::CloudFormation::DescribeStackResources

Returns: a Paws::CloudFormation::DescribeStackResourcesOutput instance

  Returns AWS resource descriptions for running and deleted stacks. If
C<StackName> is specified, all the associated resources that are part
of the stack are returned. If C<PhysicalResourceId> is specified, the
associated resources of the stack that the resource belongs to are
returned.

Only the first 100 resources will be returned. If your stack has more resources than this, you should use ListStackResources instead.

For deleted stacks, DescribeStackResources returns resource information for up to 90 days after the stack has been deleted.

You must specify either StackName or PhysicalResourceId, but not both. In addition, you can specify LogicalResourceId to filter the returned result. For more information about resources, the LogicalResourceId and PhysicalResourceId, go to the AWS CloudFormation User Guide.

A ValidationError is returned if you specify both StackName and PhysicalResourceId in the same request.

DescribeStacks([NextToken => Str, StackName => Str])

Each argument is described in detail in: Paws::CloudFormation::DescribeStacks

Returns: a Paws::CloudFormation::DescribeStacksOutput instance

  Returns the description for the specified stack; if no stack name was
specified, then it returns the description for all the stacks created.

If the stack does not exist, an AmazonCloudFormationException is returned.

EstimateTemplateCost([Parameters => ArrayRef[Paws::CloudFormation::Parameter], TemplateBody => Str, TemplateURL => Str])

Each argument is described in detail in: Paws::CloudFormation::EstimateTemplateCost

Returns: a Paws::CloudFormation::EstimateTemplateCostOutput instance

  Returns the estimated monthly cost of a template. The return value is
an AWS Simple Monthly Calculator URL with a query string that describes
the resources required to run the template.

ExecuteChangeSet(ChangeSetName => Str, [StackName => Str])

Each argument is described in detail in: Paws::CloudFormation::ExecuteChangeSet

Returns: a Paws::CloudFormation::ExecuteChangeSetOutput instance

  Updates a stack using the input information that was provided when the
specified change set was created. After the call successfully
completes, AWS CloudFormation starts updating the stack. Use the
DescribeStacks action to view the status of the update.

When you execute a change set, AWS CloudFormation deletes all other change sets associated with the stack because they aren't valid for the updated stack.

If a stack policy is associated with the stack, AWS CloudFormation enforces the policy during the update. You can't specify a temporary stack policy that overrides the current policy.

GetStackPolicy(StackName => Str)

Each argument is described in detail in: Paws::CloudFormation::GetStackPolicy

Returns: a Paws::CloudFormation::GetStackPolicyOutput instance

  Returns the stack policy for a specified stack. If a stack doesn't have
a policy, a null value is returned.

GetTemplate([ChangeSetName => Str, StackName => Str, TemplateStage => Str])

Each argument is described in detail in: Paws::CloudFormation::GetTemplate

Returns: a Paws::CloudFormation::GetTemplateOutput instance

  Returns the template body for a specified stack. You can get the
template for running or deleted stacks.

For deleted stacks, GetTemplate returns the template for up to 90 days after the stack has been deleted.

If the template does not exist, a ValidationError is returned.

GetTemplateSummary([StackName => Str, TemplateBody => Str, TemplateURL => Str])

Each argument is described in detail in: Paws::CloudFormation::GetTemplateSummary

Returns: a Paws::CloudFormation::GetTemplateSummaryOutput instance

  Returns information about a new or existing template. The
C<GetTemplateSummary> action is useful for viewing parameter
information, such as default parameter values and parameter types,
before you create or update a stack.

You can use the GetTemplateSummary action when you submit a template, or you can get template information for a running or deleted stack.

For deleted stacks, GetTemplateSummary returns the template information for up to 90 days after the stack has been deleted. If the template does not exist, a ValidationError is returned.

ListChangeSets(StackName => Str, [NextToken => Str])

Each argument is described in detail in: Paws::CloudFormation::ListChangeSets

Returns: a Paws::CloudFormation::ListChangeSetsOutput instance

  Returns the ID and status of each active change set for a stack. For
example, AWS CloudFormation lists change sets that are in the
C<CREATE_IN_PROGRESS> or C<CREATE_PENDING> state.

ListExports([NextToken => Str])

Each argument is described in detail in: Paws::CloudFormation::ListExports

Returns: a Paws::CloudFormation::ListExportsOutput instance

  Lists all exported output values in the account and region in which you
call this action. Use this action to see the exported output values
that you can import into other stacks. To import values, use the
C<Fn::ImportValue> function.

For more information, see AWS CloudFormation Export Stack Output Values.

ListImports(ExportName => Str, [NextToken => Str])

Each argument is described in detail in: Paws::CloudFormation::ListImports

Returns: a Paws::CloudFormation::ListImportsOutput instance

  Lists all stacks that are importing an exported output value. To modify
or remove an exported output value, first use this action to see which
stacks are using it. To see the exported output values in your account,
see ListExports.

For more information about importing an exported output value, see the Fn::ImportValue function.

ListStackResources(StackName => Str, [NextToken => Str])

Each argument is described in detail in: Paws::CloudFormation::ListStackResources

Returns: a Paws::CloudFormation::ListStackResourcesOutput instance

  Returns descriptions of all resources of the specified stack.

For deleted stacks, ListStackResources returns resource information for up to 90 days after the stack has been deleted.

ListStacks([NextToken => Str, StackStatusFilter => ArrayRef[Str|Undef]])

Each argument is described in detail in: Paws::CloudFormation::ListStacks

Returns: a Paws::CloudFormation::ListStacksOutput instance

  Returns the summary information for stacks whose status matches the
specified StackStatusFilter. Summary information for stacks that have
been deleted is kept for 90 days after the stack is deleted. If no
StackStatusFilter is specified, summary information for all stacks is
returned (including existing stacks and stacks that have been deleted).

SetStackPolicy(StackName => Str, [StackPolicyBody => Str, StackPolicyURL => Str])

Each argument is described in detail in: Paws::CloudFormation::SetStackPolicy

Returns: nothing

  Sets a stack policy for a specified stack.

SignalResource(LogicalResourceId => Str, StackName => Str, Status => Str, UniqueId => Str)

Each argument is described in detail in: Paws::CloudFormation::SignalResource

Returns: nothing

  Sends a signal to the specified resource with a success or failure
status. You can use the SignalResource API in conjunction with a
creation policy or update policy. AWS CloudFormation doesn't proceed
with a stack creation or update until resources receive the required
number of signals or the timeout period is exceeded. The SignalResource
API is useful in cases where you want to send signals from anywhere
other than an Amazon EC2 instance.

UpdateStack(StackName => Str, [Capabilities => ArrayRef[Str|Undef], NotificationARNs => ArrayRef[Str|Undef], Parameters => ArrayRef[Paws::CloudFormation::Parameter], ResourceTypes => ArrayRef[Str|Undef], RoleARN => Str, StackPolicyBody => Str, StackPolicyDuringUpdateBody => Str, StackPolicyDuringUpdateURL => Str, StackPolicyURL => Str, Tags => ArrayRef[Paws::CloudFormation::Tag], TemplateBody => Str, TemplateURL => Str, UsePreviousTemplate => Bool])

Each argument is described in detail in: Paws::CloudFormation::UpdateStack

Returns: a Paws::CloudFormation::UpdateStackOutput instance

  Updates a stack as specified in the template. After the call completes
successfully, the stack update starts. You can check the status of the
stack via the DescribeStacks action.

To get a copy of the template for an existing stack, you can use the GetTemplate action.

For more information about creating an update template, updating a stack, and monitoring the progress of the update, see Updating a Stack.

ValidateTemplate([TemplateBody => Str, TemplateURL => Str])

Each argument is described in detail in: Paws::CloudFormation::ValidateTemplate

Returns: a Paws::CloudFormation::ValidateTemplateOutput instance

  Validates a specified template. AWS CloudFormation first checks if the
template is valid JSON. If it isn't, AWS CloudFormation checks if the
template is valid YAML. If both these checks fail, AWS CloudFormation
returns a template validation error.

PAGINATORS

Paginator methods are helpers that repetively call methods that return partial results

DescribeAllStackEvents(sub { },[NextToken => Str, StackName => Str])

DescribeAllStackEvents([NextToken => Str, StackName => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - StackEvents, passing the object as the first parameter, and the string 'StackEvents' as the second parameter 

If not, it will return a a Paws::CloudFormation::DescribeStackEventsOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

DescribeAllStacks(sub { },[NextToken => Str, StackName => Str])

DescribeAllStacks([NextToken => Str, StackName => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - Stacks, passing the object as the first parameter, and the string 'Stacks' as the second parameter 

If not, it will return a a Paws::CloudFormation::DescribeStacksOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllStackResources(sub { },StackName => Str, [NextToken => Str])

ListAllStackResources(StackName => Str, [NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - StackResourceSummaries, passing the object as the first parameter, and the string 'StackResourceSummaries' as the second parameter 

If not, it will return a a Paws::CloudFormation::ListStackResourcesOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllStacks(sub { },[NextToken => Str, StackStatusFilter => ArrayRef[Str|Undef]])

ListAllStacks([NextToken => Str, StackStatusFilter => ArrayRef[Str|Undef]])

If passed a sub as first parameter, it will call the sub for each element found in :

 - StackSummaries, passing the object as the first parameter, and the string 'StackSummaries' as the second parameter 

If not, it will return a a Paws::CloudFormation::ListStacksOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

SEE ALSO

This service class forms part of Paws

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