cloudformation

package
v0.18.17 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 5, 2019 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GetExportArgs added in v0.14.2

type GetExportArgs struct {
	// The name of the export as it appears in the console or from [list-exports](http://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-exports.html)
	Name interface{}
}

A collection of arguments for invoking getExport.

type GetExportResult added in v0.14.2

type GetExportResult struct {
	// The exporting_stack_id (AWS ARNs) equivalent `ExportingStackId` from [list-exports](http://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-exports.html)
	ExportingStackId interface{}
	Name             interface{}
	// The value from Cloudformation export identified by the export name found from [list-exports](http://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-exports.html)
	Value interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getExport.

func LookupExport added in v0.14.2

func LookupExport(ctx *pulumi.Context, args *GetExportArgs) (*GetExportResult, error)

The CloudFormation Export data source allows access to stack exports specified in the [Output](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/outputs-section-structure.html) section of the Cloudformation Template using the optional Export Property.

> Note: If you are trying to use a value from a Cloudformation Stack in the same Terraform run please use normal interpolation or Cloudformation Outputs.

type GetStackArgs

type GetStackArgs struct {
	// The name of the stack
	Name interface{}
}

A collection of arguments for invoking getStack.

type GetStackResult

type GetStackResult struct {
	// A list of capabilities
	Capabilities interface{}
	// Description of the stack
	Description interface{}
	// Whether the rollback of the stack is disabled when stack creation fails
	DisableRollback interface{}
	// The ARN of the IAM role used to create the stack.
	IamRoleArn interface{}
	Name       interface{}
	// A list of SNS topic ARNs to publish stack related events
	NotificationArns interface{}
	// A map of outputs from the stack.
	Outputs interface{}
	// A map of parameters that specify input parameters for the stack.
	Parameters interface{}
	// A map of tags associated with this stack.
	Tags interface{}
	// Structure containing the template body.
	TemplateBody interface{}
	// The amount of time that can pass before the stack status becomes `CREATE_FAILED`
	TimeoutInMinutes interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getStack.

func LookupStack

func LookupStack(ctx *pulumi.Context, args *GetStackArgs) (*GetStackResult, error)

The CloudFormation Stack data source allows access to stack outputs and other useful data including the template body.

type Stack

type Stack struct {
	// contains filtered or unexported fields
}

Provides a CloudFormation Stack resource.

func GetStack

func GetStack(ctx *pulumi.Context,
	name string, id pulumi.ID, state *StackState, opts ...pulumi.ResourceOpt) (*Stack, error)

GetStack gets an existing Stack resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewStack

func NewStack(ctx *pulumi.Context,
	name string, args *StackArgs, opts ...pulumi.ResourceOpt) (*Stack, error)

NewStack registers a new resource with the given unique name, arguments, and options.

func (*Stack) Capabilities

func (r *Stack) Capabilities() *pulumi.ArrayOutput

A list of capabilities. Valid values: `CAPABILITY_IAM`, `CAPABILITY_NAMED_IAM`, or `CAPABILITY_AUTO_EXPAND`

func (*Stack) DisableRollback

func (r *Stack) DisableRollback() *pulumi.BoolOutput

Set to true to disable rollback of the stack if stack creation failed. Conflicts with `on_failure`.

func (*Stack) ID

func (r *Stack) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Stack) IamRoleArn

func (r *Stack) IamRoleArn() *pulumi.StringOutput

The ARN of an IAM role that AWS CloudFormation assumes to create the stack. If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.

func (*Stack) Name

func (r *Stack) Name() *pulumi.StringOutput

Stack name.

func (*Stack) NotificationArns

func (r *Stack) NotificationArns() *pulumi.ArrayOutput

A list of SNS topic ARNs to publish stack related events.

func (*Stack) OnFailure

func (r *Stack) OnFailure() *pulumi.StringOutput

Action to be taken if stack creation fails. This must be one of: `DO_NOTHING`, `ROLLBACK`, or `DELETE`. Conflicts with `disable_rollback`.

func (*Stack) Outputs

func (r *Stack) Outputs() *pulumi.MapOutput

A map of outputs from the stack.

func (*Stack) Parameters

func (r *Stack) Parameters() *pulumi.MapOutput

A map of Parameter structures that specify input parameters for the stack.

func (*Stack) PolicyBody

func (r *Stack) PolicyBody() *pulumi.StringOutput

Structure containing the stack policy body. Conflicts w/ `policy_url`.

func (*Stack) PolicyUrl

func (r *Stack) PolicyUrl() *pulumi.StringOutput

Location of a file containing the stack policy. Conflicts w/ `policy_body`.

func (*Stack) Tags

func (r *Stack) Tags() *pulumi.MapOutput

A list of tags to associate with this stack.

func (*Stack) TemplateBody

func (r *Stack) TemplateBody() *pulumi.StringOutput

Structure containing the template body (max size: 51,200 bytes).

func (*Stack) TemplateUrl

func (r *Stack) TemplateUrl() *pulumi.StringOutput

Location of a file containing the template body (max size: 460,800 bytes).

func (*Stack) TimeoutInMinutes

func (r *Stack) TimeoutInMinutes() *pulumi.IntOutput

The amount of time that can pass before the stack status becomes `CREATE_FAILED`.

func (*Stack) URN

func (r *Stack) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type StackArgs

type StackArgs struct {
	// A list of capabilities.
	// Valid values: `CAPABILITY_IAM`, `CAPABILITY_NAMED_IAM`, or `CAPABILITY_AUTO_EXPAND`
	Capabilities interface{}
	// Set to true to disable rollback of the stack if stack creation failed.
	// Conflicts with `on_failure`.
	DisableRollback interface{}
	// The ARN of an IAM role that AWS CloudFormation assumes to create the stack. If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.
	IamRoleArn interface{}
	// Stack name.
	Name interface{}
	// A list of SNS topic ARNs to publish stack related events.
	NotificationArns interface{}
	// Action to be taken if stack creation fails. This must be
	// one of: `DO_NOTHING`, `ROLLBACK`, or `DELETE`. Conflicts with `disable_rollback`.
	OnFailure interface{}
	// A map of Parameter structures that specify input parameters for the stack.
	Parameters interface{}
	// Structure containing the stack policy body.
	// Conflicts w/ `policy_url`.
	PolicyBody interface{}
	// Location of a file containing the stack policy.
	// Conflicts w/ `policy_body`.
	PolicyUrl interface{}
	// A list of tags to associate with this stack.
	Tags interface{}
	// Structure containing the template body (max size: 51,200 bytes).
	TemplateBody interface{}
	// Location of a file containing the template body (max size: 460,800 bytes).
	TemplateUrl interface{}
	// The amount of time that can pass before the stack status becomes `CREATE_FAILED`.
	TimeoutInMinutes interface{}
}

The set of arguments for constructing a Stack resource.

type StackSet added in v0.18.1

type StackSet struct {
	// contains filtered or unexported fields
}

Manages a CloudFormation Stack Set. Stack Sets allow CloudFormation templates to be easily deployed across multiple accounts and regions via Stack Set Instances ([`aws_cloudformation_stack_set_instance` resource](https://www.terraform.io/docs/providers/aws/r/cloudformation_stack_set_instance.html)). Additional information about Stack Sets can be found in the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html).

> **NOTE:** All template parameters, including those with a `Default`, must be configured or ignored with the `lifecycle` configuration block `ignore_changes` argument.

> **NOTE:** All `NoEcho` template parameters must be ignored with the `lifecycle` configuration block `ignore_changes` argument.

func GetStackSet added in v0.18.1

func GetStackSet(ctx *pulumi.Context,
	name string, id pulumi.ID, state *StackSetState, opts ...pulumi.ResourceOpt) (*StackSet, error)

GetStackSet gets an existing StackSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewStackSet added in v0.18.1

func NewStackSet(ctx *pulumi.Context,
	name string, args *StackSetArgs, opts ...pulumi.ResourceOpt) (*StackSet, error)

NewStackSet registers a new resource with the given unique name, arguments, and options.

func (*StackSet) AdministrationRoleArn added in v0.18.1

func (r *StackSet) AdministrationRoleArn() *pulumi.StringOutput

Amazon Resource Number (ARN) of the IAM Role in the administrator account.

func (*StackSet) Arn added in v0.18.1

func (r *StackSet) Arn() *pulumi.StringOutput

Amazon Resource Name (ARN) of the Stack Set.

func (*StackSet) Capabilities added in v0.18.1

func (r *StackSet) Capabilities() *pulumi.ArrayOutput

A list of capabilities. Valid values: `CAPABILITY_IAM`, `CAPABILITY_NAMED_IAM`, `CAPABILITY_AUTO_EXPAND`.

func (*StackSet) Description added in v0.18.1

func (r *StackSet) Description() *pulumi.StringOutput

Description of the Stack Set.

func (*StackSet) ExecutionRoleName added in v0.18.1

func (r *StackSet) ExecutionRoleName() *pulumi.StringOutput

Name of the IAM Role in all target accounts for Stack Set operations. Defaults to `AWSCloudFormationStackSetExecutionRole`.

func (*StackSet) ID added in v0.18.1

func (r *StackSet) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*StackSet) Name added in v0.18.1

func (r *StackSet) Name() *pulumi.StringOutput

Name of the Stack Set. The name must be unique in the region where you create your Stack Set. The name can contain only alphanumeric characters (case-sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.

func (*StackSet) Parameters added in v0.18.1

func (r *StackSet) Parameters() *pulumi.MapOutput

Key-value map of input parameters for the Stack Set template. All template parameters, including those with a `Default`, must be configured or ignored with `lifecycle` configuration block `ignore_changes` argument. All `NoEcho` template parameters must be ignored with the `lifecycle` configuration block `ignore_changes` argument.

func (*StackSet) StackSetId added in v0.18.1

func (r *StackSet) StackSetId() *pulumi.StringOutput

Unique identifier of the Stack Set.

func (*StackSet) Tags added in v0.18.1

func (r *StackSet) Tags() *pulumi.MapOutput

Key-value map of tags to associate with this Stack Set and the Stacks created from it. AWS CloudFormation also propagates these tags to supported resources that are created in the Stacks. A maximum number of 50 tags can be specified.

func (*StackSet) TemplateBody added in v0.18.1

func (r *StackSet) TemplateBody() *pulumi.StringOutput

String containing the CloudFormation template body. Maximum size: 51,200 bytes. Conflicts with `template_url`.

func (*StackSet) TemplateUrl added in v0.18.1

func (r *StackSet) TemplateUrl() *pulumi.StringOutput

String containing the location of a file containing the CloudFormation template body. The URL must point to a template that is located in an Amazon S3 bucket. Maximum location file size: 460,800 bytes. Conflicts with `template_body`.

func (*StackSet) URN added in v0.18.1

func (r *StackSet) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type StackSetArgs added in v0.18.1

type StackSetArgs struct {
	// Amazon Resource Number (ARN) of the IAM Role in the administrator account.
	AdministrationRoleArn interface{}
	// A list of capabilities. Valid values: `CAPABILITY_IAM`, `CAPABILITY_NAMED_IAM`, `CAPABILITY_AUTO_EXPAND`.
	Capabilities interface{}
	// Description of the Stack Set.
	Description interface{}
	// Name of the IAM Role in all target accounts for Stack Set operations. Defaults to `AWSCloudFormationStackSetExecutionRole`.
	ExecutionRoleName interface{}
	// Name of the Stack Set. The name must be unique in the region where you create your Stack Set. The name can contain only alphanumeric characters (case-sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.
	Name interface{}
	// Key-value map of input parameters for the Stack Set template. All template parameters, including those with a `Default`, must be configured or ignored with `lifecycle` configuration block `ignore_changes` argument. All `NoEcho` template parameters must be ignored with the `lifecycle` configuration block `ignore_changes` argument.
	Parameters interface{}
	// Key-value map of tags to associate with this Stack Set and the Stacks created from it. AWS CloudFormation also propagates these tags to supported resources that are created in the Stacks. A maximum number of 50 tags can be specified.
	Tags interface{}
	// String containing the CloudFormation template body. Maximum size: 51,200 bytes. Conflicts with `template_url`.
	TemplateBody interface{}
	// String containing the location of a file containing the CloudFormation template body. The URL must point to a template that is located in an Amazon S3 bucket. Maximum location file size: 460,800 bytes. Conflicts with `template_body`.
	TemplateUrl interface{}
}

The set of arguments for constructing a StackSet resource.

type StackSetInstance added in v0.18.1

type StackSetInstance struct {
	// contains filtered or unexported fields
}

Manages a CloudFormation Stack Set Instance. Instances are managed in the account and region of the Stack Set after the target account permissions have been configured. Additional information about Stack Sets can be found in the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html).

> **NOTE:** All target accounts must have an IAM Role created that matches the name of the execution role configured in the Stack Set (the `execution_role_name` argument in the `aws_cloudformation_stack_set` resource) in a trust relationship with the administrative account or administration IAM Role. The execution role must have appropriate permissions to manage resources defined in the template along with those required for Stack Sets to operate. See the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html) for more details.

> **NOTE:** To retain the Stack during Terraform resource destroy, ensure `retain_stack = true` has been successfully applied into the Terraform state first. This must be completed _before_ an apply that would destroy the resource.

func GetStackSetInstance added in v0.18.1

func GetStackSetInstance(ctx *pulumi.Context,
	name string, id pulumi.ID, state *StackSetInstanceState, opts ...pulumi.ResourceOpt) (*StackSetInstance, error)

GetStackSetInstance gets an existing StackSetInstance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewStackSetInstance added in v0.18.1

func NewStackSetInstance(ctx *pulumi.Context,
	name string, args *StackSetInstanceArgs, opts ...pulumi.ResourceOpt) (*StackSetInstance, error)

NewStackSetInstance registers a new resource with the given unique name, arguments, and options.

func (*StackSetInstance) AccountId added in v0.18.1

func (r *StackSetInstance) AccountId() *pulumi.StringOutput

Target AWS Account ID to create a Stack based on the Stack Set. Defaults to current account.

func (*StackSetInstance) ID added in v0.18.1

func (r *StackSetInstance) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*StackSetInstance) ParameterOverrides added in v0.18.1

func (r *StackSetInstance) ParameterOverrides() *pulumi.MapOutput

Key-value map of input parameters to override from the Stack Set for this Instance.

func (*StackSetInstance) Region added in v0.18.1

func (r *StackSetInstance) Region() *pulumi.StringOutput

Target AWS Region to create a Stack based on the Stack Set. Defaults to current region.

func (*StackSetInstance) RetainStack added in v0.18.1

func (r *StackSetInstance) RetainStack() *pulumi.BoolOutput

During Terraform resource destroy, remove Instance from Stack Set while keeping the Stack and its associated resources. Must be enabled in Terraform state _before_ destroy operation to take effect. You cannot reassociate a retained Stack or add an existing, saved Stack to a new Stack Set. Defaults to `false`.

func (*StackSetInstance) StackId added in v0.18.1

func (r *StackSetInstance) StackId() *pulumi.StringOutput

Stack identifier

func (*StackSetInstance) StackSetName added in v0.18.1

func (r *StackSetInstance) StackSetName() *pulumi.StringOutput

Name of the Stack Set.

func (*StackSetInstance) URN added in v0.18.1

func (r *StackSetInstance) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type StackSetInstanceArgs added in v0.18.1

type StackSetInstanceArgs struct {
	// Target AWS Account ID to create a Stack based on the Stack Set. Defaults to current account.
	AccountId interface{}
	// Key-value map of input parameters to override from the Stack Set for this Instance.
	ParameterOverrides interface{}
	// Target AWS Region to create a Stack based on the Stack Set. Defaults to current region.
	Region interface{}
	// During Terraform resource destroy, remove Instance from Stack Set while keeping the Stack and its associated resources. Must be enabled in Terraform state _before_ destroy operation to take effect. You cannot reassociate a retained Stack or add an existing, saved Stack to a new Stack Set. Defaults to `false`.
	RetainStack interface{}
	// Name of the Stack Set.
	StackSetName interface{}
}

The set of arguments for constructing a StackSetInstance resource.

type StackSetInstanceState added in v0.18.1

type StackSetInstanceState struct {
	// Target AWS Account ID to create a Stack based on the Stack Set. Defaults to current account.
	AccountId interface{}
	// Key-value map of input parameters to override from the Stack Set for this Instance.
	ParameterOverrides interface{}
	// Target AWS Region to create a Stack based on the Stack Set. Defaults to current region.
	Region interface{}
	// During Terraform resource destroy, remove Instance from Stack Set while keeping the Stack and its associated resources. Must be enabled in Terraform state _before_ destroy operation to take effect. You cannot reassociate a retained Stack or add an existing, saved Stack to a new Stack Set. Defaults to `false`.
	RetainStack interface{}
	// Stack identifier
	StackId interface{}
	// Name of the Stack Set.
	StackSetName interface{}
}

Input properties used for looking up and filtering StackSetInstance resources.

type StackSetState added in v0.18.1

type StackSetState struct {
	// Amazon Resource Number (ARN) of the IAM Role in the administrator account.
	AdministrationRoleArn interface{}
	// Amazon Resource Name (ARN) of the Stack Set.
	Arn interface{}
	// A list of capabilities. Valid values: `CAPABILITY_IAM`, `CAPABILITY_NAMED_IAM`, `CAPABILITY_AUTO_EXPAND`.
	Capabilities interface{}
	// Description of the Stack Set.
	Description interface{}
	// Name of the IAM Role in all target accounts for Stack Set operations. Defaults to `AWSCloudFormationStackSetExecutionRole`.
	ExecutionRoleName interface{}
	// Name of the Stack Set. The name must be unique in the region where you create your Stack Set. The name can contain only alphanumeric characters (case-sensitive) and hyphens. It must start with an alphabetic character and cannot be longer than 128 characters.
	Name interface{}
	// Key-value map of input parameters for the Stack Set template. All template parameters, including those with a `Default`, must be configured or ignored with `lifecycle` configuration block `ignore_changes` argument. All `NoEcho` template parameters must be ignored with the `lifecycle` configuration block `ignore_changes` argument.
	Parameters interface{}
	// Unique identifier of the Stack Set.
	StackSetId interface{}
	// Key-value map of tags to associate with this Stack Set and the Stacks created from it. AWS CloudFormation also propagates these tags to supported resources that are created in the Stacks. A maximum number of 50 tags can be specified.
	Tags interface{}
	// String containing the CloudFormation template body. Maximum size: 51,200 bytes. Conflicts with `template_url`.
	TemplateBody interface{}
	// String containing the location of a file containing the CloudFormation template body. The URL must point to a template that is located in an Amazon S3 bucket. Maximum location file size: 460,800 bytes. Conflicts with `template_body`.
	TemplateUrl interface{}
}

Input properties used for looking up and filtering StackSet resources.

type StackState

type StackState struct {
	// A list of capabilities.
	// Valid values: `CAPABILITY_IAM`, `CAPABILITY_NAMED_IAM`, or `CAPABILITY_AUTO_EXPAND`
	Capabilities interface{}
	// Set to true to disable rollback of the stack if stack creation failed.
	// Conflicts with `on_failure`.
	DisableRollback interface{}
	// The ARN of an IAM role that AWS CloudFormation assumes to create the stack. If you don't specify a value, AWS CloudFormation uses the role that was previously associated with the stack. If no role is available, AWS CloudFormation uses a temporary session that is generated from your user credentials.
	IamRoleArn interface{}
	// Stack name.
	Name interface{}
	// A list of SNS topic ARNs to publish stack related events.
	NotificationArns interface{}
	// Action to be taken if stack creation fails. This must be
	// one of: `DO_NOTHING`, `ROLLBACK`, or `DELETE`. Conflicts with `disable_rollback`.
	OnFailure interface{}
	// A map of outputs from the stack.
	Outputs interface{}
	// A map of Parameter structures that specify input parameters for the stack.
	Parameters interface{}
	// Structure containing the stack policy body.
	// Conflicts w/ `policy_url`.
	PolicyBody interface{}
	// Location of a file containing the stack policy.
	// Conflicts w/ `policy_body`.
	PolicyUrl interface{}
	// A list of tags to associate with this stack.
	Tags interface{}
	// Structure containing the template body (max size: 51,200 bytes).
	TemplateBody interface{}
	// Location of a file containing the template body (max size: 460,800 bytes).
	TemplateUrl interface{}
	// The amount of time that can pass before the stack status becomes `CREATE_FAILED`.
	TimeoutInMinutes interface{}
}

Input properties used for looking up and filtering Stack resources.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL