public interface AmazonCloudFormation
Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
AbstractAmazonCloudFormation
instead.
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. If you need additional technical information about a specific AWS product, you can find the product's technical documentation at http://docs.aws.amazon.com/.
Modifier and Type | Field and Description |
---|---|
static String |
ENDPOINT_PREFIX
The region metadata service name for computing region endpoints.
|
Modifier and Type | Method and Description |
---|---|
CancelUpdateStackResult |
cancelUpdateStack(CancelUpdateStackRequest cancelUpdateStackRequest)
Cancels an update on the specified stack.
|
ContinueUpdateRollbackResult |
continueUpdateRollback(ContinueUpdateRollbackRequest continueUpdateRollbackRequest)
For a specified stack that is in the
UPDATE_ROLLBACK_FAILED state, continues rolling it back to the
UPDATE_ROLLBACK_COMPLETE state. |
CreateChangeSetResult |
createChangeSet(CreateChangeSetRequest createChangeSetRequest)
Creates a list of changes for a stack.
|
CreateStackResult |
createStack(CreateStackRequest createStackRequest)
Creates a stack as specified in the template.
|
DeleteChangeSetResult |
deleteChangeSet(DeleteChangeSetRequest deleteChangeSetRequest)
Deletes the specified change set.
|
DeleteStackResult |
deleteStack(DeleteStackRequest deleteStackRequest)
Deletes a specified stack.
|
DescribeAccountLimitsResult |
describeAccountLimits(DescribeAccountLimitsRequest describeAccountLimitsRequest)
Retrieves your account's AWS CloudFormation limits, such as the maximum number of stacks that you can create in
your account.
|
DescribeChangeSetResult |
describeChangeSet(DescribeChangeSetRequest describeChangeSetRequest)
Returns the inputs for the change set and a list of changes that AWS CloudFormation will make if you execute the
change set.
|
DescribeStackEventsResult |
describeStackEvents(DescribeStackEventsRequest describeStackEventsRequest)
Returns all stack related events for a specified stack in reverse chronological order.
|
DescribeStackResourceResult |
describeStackResource(DescribeStackResourceRequest describeStackResourceRequest)
Returns a description of the specified resource in the specified stack.
|
DescribeStackResourcesResult |
describeStackResources(DescribeStackResourcesRequest describeStackResourcesRequest)
Returns AWS resource descriptions for running and deleted stacks.
|
DescribeStacksResult |
describeStacks()
Simplified method form for invoking the DescribeStacks operation.
|
DescribeStacksResult |
describeStacks(DescribeStacksRequest describeStacksRequest)
Returns the description for the specified stack; if no stack name was specified, then it returns the description
for all the stacks created.
|
EstimateTemplateCostResult |
estimateTemplateCost()
Simplified method form for invoking the EstimateTemplateCost operation.
|
EstimateTemplateCostResult |
estimateTemplateCost(EstimateTemplateCostRequest estimateTemplateCostRequest)
Returns the estimated monthly cost of a template.
|
ExecuteChangeSetResult |
executeChangeSet(ExecuteChangeSetRequest executeChangeSetRequest)
Updates a stack using the input information that was provided when the specified change set was created.
|
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful request, typically used for debugging issues
where a service isn't acting as expected.
|
GetStackPolicyResult |
getStackPolicy(GetStackPolicyRequest getStackPolicyRequest)
Returns the stack policy for a specified stack.
|
GetTemplateResult |
getTemplate(GetTemplateRequest getTemplateRequest)
Returns the template body for a specified stack.
|
GetTemplateSummaryResult |
getTemplateSummary()
Simplified method form for invoking the GetTemplateSummary operation.
|
GetTemplateSummaryResult |
getTemplateSummary(GetTemplateSummaryRequest getTemplateSummaryRequest)
Returns information about a new or existing template.
|
ListChangeSetsResult |
listChangeSets(ListChangeSetsRequest listChangeSetsRequest)
Returns the ID and status of each active change set for a stack.
|
ListExportsResult |
listExports(ListExportsRequest listExportsRequest)
Lists all exported output values in the account and region in which you call this action.
|
ListImportsResult |
listImports(ListImportsRequest listImportsRequest)
Lists all stacks that are importing an exported output value.
|
ListStackResourcesResult |
listStackResources(ListStackResourcesRequest listStackResourcesRequest)
Returns descriptions of all resources of the specified stack.
|
ListStacksResult |
listStacks()
Simplified method form for invoking the ListStacks operation.
|
ListStacksResult |
listStacks(ListStacksRequest listStacksRequest)
Returns the summary information for stacks whose status matches the specified StackStatusFilter.
|
void |
setEndpoint(String endpoint)
Overrides the default endpoint for this client ("https://cloudformation.us-east-1.amazonaws.com").
|
void |
setRegion(Region region)
An alternative to
setEndpoint(String) , sets the regional endpoint for this client's
service calls. |
SetStackPolicyResult |
setStackPolicy(SetStackPolicyRequest setStackPolicyRequest)
Sets a stack policy for a specified stack.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held open.
|
SignalResourceResult |
signalResource(SignalResourceRequest signalResourceRequest)
Sends a signal to the specified resource with a success or failure status.
|
UpdateStackResult |
updateStack(UpdateStackRequest updateStackRequest)
Updates a stack as specified in the template.
|
ValidateTemplateResult |
validateTemplate(ValidateTemplateRequest validateTemplateRequest)
Validates a specified template.
|
AmazonCloudFormationWaiters |
waiters() |
static final String ENDPOINT_PREFIX
void setEndpoint(String endpoint)
Callers can pass in just the endpoint (ex: "cloudformation.us-east-1.amazonaws.com") or a full URL, including the
protocol (ex: "https://cloudformation.us-east-1.amazonaws.com"). If the protocol is not specified here, the
default protocol from this client's ClientConfiguration
will be used, which by default is HTTPS.
For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3912
This method is not threadsafe. An endpoint should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
endpoint
- The endpoint (ex: "cloudformation.us-east-1.amazonaws.com") or a full URL, including the protocol (ex:
"https://cloudformation.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will
communicate with.void setRegion(Region region)
setEndpoint(String)
, sets the regional endpoint for this client's
service calls. Callers can use this method to control which AWS region they want to work with.
By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the
ClientConfiguration
supplied at construction.
This method is not threadsafe. A region should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
region
- The region this client will communicate with. See Region.getRegion(com.amazonaws.regions.Regions)
for accessing a given region. Must not be null and must be a region where the service is available.Region.getRegion(com.amazonaws.regions.Regions)
,
Region.createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)
,
Region.isServiceSupported(String)
CancelUpdateStackResult cancelUpdateStack(CancelUpdateStackRequest cancelUpdateStackRequest)
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.
cancelUpdateStackRequest
- The input for the CancelUpdateStack action.ContinueUpdateRollbackResult continueUpdateRollback(ContinueUpdateRollbackRequest continueUpdateRollbackRequest)
For a specified stack that is in the UPDATE_ROLLBACK_FAILED
state, continues rolling it back to the
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 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.
continueUpdateRollbackRequest
- The input for the ContinueUpdateRollback action.CreateChangeSetResult createChangeSet(CreateChangeSetRequest createChangeSetRequest)
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.
createChangeSetRequest
- The input for the CreateChangeSet action.AlreadyExistsException
- Resource with the name requested already exists.InsufficientCapabilitiesException
- The template contains resources with capabilities that were not specified in the Capabilities parameter.LimitExceededException
- Quota for the resource has already been reached.CreateStackResult createStack(CreateStackRequest createStackRequest)
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.
createStackRequest
- The input for CreateStack action.LimitExceededException
- Quota for the resource has already been reached.AlreadyExistsException
- Resource with the name requested already exists.InsufficientCapabilitiesException
- The template contains resources with capabilities that were not specified in the Capabilities parameter.DeleteChangeSetResult deleteChangeSet(DeleteChangeSetRequest deleteChangeSetRequest)
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.
deleteChangeSetRequest
- The input for the DeleteChangeSet action.InvalidChangeSetStatusException
- The specified change set cannot be used to update the stack. For example, the change set status might be
CREATE_IN_PROGRESS
or the stack status might be UPDATE_IN_PROGRESS
.DeleteStackResult deleteStack(DeleteStackRequest deleteStackRequest)
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.
deleteStackRequest
- The input for DeleteStack action.DescribeAccountLimitsResult describeAccountLimits(DescribeAccountLimitsRequest describeAccountLimitsRequest)
Retrieves your account's AWS CloudFormation limits, such as the maximum number of stacks that you can create in your account.
describeAccountLimitsRequest
- The input for the DescribeAccountLimits action.DescribeChangeSetResult describeChangeSet(DescribeChangeSetRequest describeChangeSetRequest)
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.
describeChangeSetRequest
- The input for the DescribeChangeSet action.ChangeSetNotFoundException
- The specified change set name or ID doesn't exit. To view valid change sets for a stack, use the
ListChangeSets
action.DescribeStackEventsResult describeStackEvents(DescribeStackEventsRequest describeStackEventsRequest)
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).
describeStackEventsRequest
- The input for DescribeStackEvents action.DescribeStackResourceResult describeStackResource(DescribeStackResourceRequest describeStackResourceRequest)
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.
describeStackResourceRequest
- The input for DescribeStackResource action.DescribeStackResourcesResult describeStackResources(DescribeStackResourcesRequest describeStackResourcesRequest)
Returns AWS resource descriptions for running and deleted stacks. If StackName
is specified, all the
associated resources that are part of the stack are returned. If 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.
describeStackResourcesRequest
- The input for DescribeStackResources action.DescribeStacksResult describeStacks(DescribeStacksRequest describeStacksRequest)
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.
describeStacksRequest
- The input for DescribeStacks action.DescribeStacksResult describeStacks()
describeStacks(DescribeStacksRequest)
EstimateTemplateCostResult estimateTemplateCost(EstimateTemplateCostRequest estimateTemplateCostRequest)
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.
estimateTemplateCostRequest
- The input for an EstimateTemplateCost action.EstimateTemplateCostResult estimateTemplateCost()
ExecuteChangeSetResult executeChangeSet(ExecuteChangeSetRequest executeChangeSetRequest)
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.
executeChangeSetRequest
- The input for the ExecuteChangeSet action.InvalidChangeSetStatusException
- The specified change set cannot be used to update the stack. For example, the change set status might be
CREATE_IN_PROGRESS
or the stack status might be UPDATE_IN_PROGRESS
.ChangeSetNotFoundException
- The specified change set name or ID doesn't exit. To view valid change sets for a stack, use the
ListChangeSets
action.InsufficientCapabilitiesException
- The template contains resources with capabilities that were not specified in the Capabilities parameter.GetStackPolicyResult getStackPolicy(GetStackPolicyRequest getStackPolicyRequest)
Returns the stack policy for a specified stack. If a stack doesn't have a policy, a null value is returned.
getStackPolicyRequest
- The input for the GetStackPolicy action.GetTemplateResult getTemplate(GetTemplateRequest getTemplateRequest)
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.
getTemplateRequest
- The input for a GetTemplate action.ChangeSetNotFoundException
- The specified change set name or ID doesn't exit. To view valid change sets for a stack, use the
ListChangeSets
action.GetTemplateSummaryResult getTemplateSummary(GetTemplateSummaryRequest getTemplateSummaryRequest)
Returns information about a new or existing template. The 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.
getTemplateSummaryRequest
- The input for the GetTemplateSummary action.GetTemplateSummaryResult getTemplateSummary()
ListChangeSetsResult listChangeSets(ListChangeSetsRequest listChangeSetsRequest)
Returns the ID and status of each active change set for a stack. For example, AWS CloudFormation lists change
sets that are in the CREATE_IN_PROGRESS
or CREATE_PENDING
state.
listChangeSetsRequest
- The input for the ListChangeSets action.ListExportsResult listExports(ListExportsRequest listExportsRequest)
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
Fn::ImportValue
function.
For more information, see AWS CloudFormation Export Stack Output Values.
listExportsRequest
- ListImportsResult listImports(ListImportsRequest listImportsRequest)
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.
listImportsRequest
- ListStackResourcesResult listStackResources(ListStackResourcesRequest listStackResourcesRequest)
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.
listStackResourcesRequest
- The input for the ListStackResource action.ListStacksResult listStacks(ListStacksRequest listStacksRequest)
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).
listStacksRequest
- The input for ListStacks action.ListStacksResult listStacks()
listStacks(ListStacksRequest)
SetStackPolicyResult setStackPolicy(SetStackPolicyRequest setStackPolicyRequest)
Sets a stack policy for a specified stack.
setStackPolicyRequest
- The input for the SetStackPolicy action.SignalResourceResult signalResource(SignalResourceRequest signalResourceRequest)
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.
signalResourceRequest
- The input for the SignalResource action.UpdateStackResult updateStack(UpdateStackRequest updateStackRequest)
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.
updateStackRequest
- The input for an UpdateStack action.InsufficientCapabilitiesException
- The template contains resources with capabilities that were not specified in the Capabilities parameter.ValidateTemplateResult validateTemplate(ValidateTemplateRequest validateTemplateRequest)
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.
validateTemplateRequest
- The input for ValidateTemplate action.void shutdown()
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing a request.
request
- The originally executed request.AmazonCloudFormationWaiters waiters()
Copyright © 2013 Amazon Web Services, Inc. All Rights Reserved.