Documentation ¶
Index ¶
- func CfnCustomResource_CFN_RESOURCE_TYPE_NAME() *string
- func CfnCustomResource_IsCfnElement(x interface{}) *bool
- func CfnCustomResource_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnCustomResource_IsConstruct(x interface{}) *bool
- func CfnHookDefaultVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnHookDefaultVersion_IsCfnElement(x interface{}) *bool
- func CfnHookDefaultVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnHookDefaultVersion_IsConstruct(x interface{}) *bool
- func CfnHookTypeConfig_CFN_RESOURCE_TYPE_NAME() *string
- func CfnHookTypeConfig_IsCfnElement(x interface{}) *bool
- func CfnHookTypeConfig_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnHookTypeConfig_IsConstruct(x interface{}) *bool
- func CfnHookVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnHookVersion_IsCfnElement(x interface{}) *bool
- func CfnHookVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnHookVersion_IsConstruct(x interface{}) *bool
- func CfnMacro_CFN_RESOURCE_TYPE_NAME() *string
- func CfnMacro_IsCfnElement(x interface{}) *bool
- func CfnMacro_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnMacro_IsConstruct(x interface{}) *bool
- func CfnModuleDefaultVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnModuleDefaultVersion_IsCfnElement(x interface{}) *bool
- func CfnModuleDefaultVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnModuleDefaultVersion_IsConstruct(x interface{}) *bool
- func CfnModuleVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnModuleVersion_IsCfnElement(x interface{}) *bool
- func CfnModuleVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnModuleVersion_IsConstruct(x interface{}) *bool
- func CfnPublicTypeVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnPublicTypeVersion_IsCfnElement(x interface{}) *bool
- func CfnPublicTypeVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnPublicTypeVersion_IsConstruct(x interface{}) *bool
- func CfnPublisher_CFN_RESOURCE_TYPE_NAME() *string
- func CfnPublisher_IsCfnElement(x interface{}) *bool
- func CfnPublisher_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnPublisher_IsConstruct(x interface{}) *bool
- func CfnResourceDefaultVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnResourceDefaultVersion_IsCfnElement(x interface{}) *bool
- func CfnResourceDefaultVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnResourceDefaultVersion_IsConstruct(x interface{}) *bool
- func CfnResourceVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnResourceVersion_IsCfnElement(x interface{}) *bool
- func CfnResourceVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnResourceVersion_IsConstruct(x interface{}) *bool
- func CfnStackSet_CFN_RESOURCE_TYPE_NAME() *string
- func CfnStackSet_IsCfnElement(x interface{}) *bool
- func CfnStackSet_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnStackSet_IsConstruct(x interface{}) *bool
- func CfnStack_CFN_RESOURCE_TYPE_NAME() *string
- func CfnStack_IsCfnElement(x interface{}) *bool
- func CfnStack_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnStack_IsConstruct(x interface{}) *bool
- func CfnTypeActivation_CFN_RESOURCE_TYPE_NAME() *string
- func CfnTypeActivation_IsCfnElement(x interface{}) *bool
- func CfnTypeActivation_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnTypeActivation_IsConstruct(x interface{}) *bool
- func CfnWaitConditionHandle_CFN_RESOURCE_TYPE_NAME() *string
- func CfnWaitConditionHandle_IsCfnElement(x interface{}) *bool
- func CfnWaitConditionHandle_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnWaitConditionHandle_IsConstruct(x interface{}) *bool
- func CfnWaitCondition_CFN_RESOURCE_TYPE_NAME() *string
- func CfnWaitCondition_IsCfnElement(x interface{}) *bool
- func CfnWaitCondition_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnWaitCondition_IsConstruct(x interface{}) *bool
- func CustomResource_IsConstruct(x interface{}) *bool
- func CustomResource_IsResource(construct awscdk.IConstruct) *bool
- func NestedStack_IsConstruct(x interface{}) *bool
- func NestedStack_IsNestedStack(x interface{}) *bool
- func NestedStack_IsStack(x interface{}) *bool
- func NestedStack_Of(construct constructs.IConstruct) awscdk.Stack
- func NewCfnCustomResource_Override(c CfnCustomResource, scope awscdk.Construct, id *string, ...)
- func NewCfnHookDefaultVersion_Override(c CfnHookDefaultVersion, scope awscdk.Construct, id *string, ...)
- func NewCfnHookTypeConfig_Override(c CfnHookTypeConfig, scope awscdk.Construct, id *string, ...)
- func NewCfnHookVersion_Override(c CfnHookVersion, scope awscdk.Construct, id *string, ...)
- func NewCfnMacro_Override(c CfnMacro, scope awscdk.Construct, id *string, props *CfnMacroProps)
- func NewCfnModuleDefaultVersion_Override(c CfnModuleDefaultVersion, scope awscdk.Construct, id *string, ...)
- func NewCfnModuleVersion_Override(c CfnModuleVersion, scope awscdk.Construct, id *string, ...)
- func NewCfnPublicTypeVersion_Override(c CfnPublicTypeVersion, scope awscdk.Construct, id *string, ...)
- func NewCfnPublisher_Override(c CfnPublisher, scope awscdk.Construct, id *string, props *CfnPublisherProps)
- func NewCfnResourceDefaultVersion_Override(c CfnResourceDefaultVersion, scope awscdk.Construct, id *string, ...)
- func NewCfnResourceVersion_Override(c CfnResourceVersion, scope awscdk.Construct, id *string, ...)
- func NewCfnStackSet_Override(c CfnStackSet, scope awscdk.Construct, id *string, props *CfnStackSetProps)
- func NewCfnStack_Override(c CfnStack, scope awscdk.Construct, id *string, props *CfnStackProps)
- func NewCfnTypeActivation_Override(c CfnTypeActivation, scope awscdk.Construct, id *string, ...)
- func NewCfnWaitConditionHandle_Override(c CfnWaitConditionHandle, scope awscdk.Construct, id *string)
- func NewCfnWaitCondition_Override(c CfnWaitCondition, scope awscdk.Construct, id *string, ...)
- func NewCustomResource_Override(c CustomResource, scope awscdk.Construct, id *string, ...)deprecated
- func NewNestedStack_Override(n NestedStack, scope awscdk.Construct, id *string, props *NestedStackProps)deprecated
- type CfnCustomResource
- type CfnCustomResourceProps
- type CfnHookDefaultVersion
- type CfnHookDefaultVersionProps
- type CfnHookTypeConfig
- type CfnHookTypeConfigProps
- type CfnHookVersion
- type CfnHookVersionProps
- type CfnHookVersion_LoggingConfigProperty
- type CfnMacro
- type CfnMacroProps
- type CfnModuleDefaultVersion
- type CfnModuleDefaultVersionProps
- type CfnModuleVersion
- type CfnModuleVersionProps
- type CfnPublicTypeVersion
- type CfnPublicTypeVersionProps
- type CfnPublisher
- type CfnPublisherProps
- type CfnResourceDefaultVersion
- type CfnResourceDefaultVersionProps
- type CfnResourceVersion
- type CfnResourceVersionProps
- type CfnResourceVersion_LoggingConfigProperty
- type CfnStack
- type CfnStackProps
- type CfnStackSet
- type CfnStackSetProps
- type CfnStackSet_AutoDeploymentProperty
- type CfnStackSet_DeploymentTargetsProperty
- type CfnStackSet_ManagedExecutionProperty
- type CfnStackSet_OperationPreferencesProperty
- type CfnStackSet_ParameterProperty
- type CfnStackSet_StackInstancesProperty
- type CfnTypeActivation
- type CfnTypeActivationProps
- type CfnTypeActivation_LoggingConfigProperty
- type CfnWaitCondition
- type CfnWaitConditionHandle
- type CfnWaitConditionProps
- type CloudFormationCapabilities
- type CustomResourcedeprecated
- type CustomResourcePropsdeprecated
- type CustomResourceProviderdeprecated
- func CustomResourceProvider_FromLambda(handler awslambda.IFunction) CustomResourceProvider
- func CustomResourceProvider_FromTopic(topic awssns.ITopic) CustomResourceProvider
- func CustomResourceProvider_Lambda(handler awslambda.IFunction) CustomResourceProvider
- func CustomResourceProvider_Topic(topic awssns.ITopic) CustomResourceProvider
- type CustomResourceProviderConfigdeprecated
- type ICustomResourceProvider
- type NestedStackdeprecated
- type NestedStackPropsdeprecated
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnCustomResource_CFN_RESOURCE_TYPE_NAME ¶
func CfnCustomResource_CFN_RESOURCE_TYPE_NAME() *string
func CfnCustomResource_IsCfnElement ¶
func CfnCustomResource_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnCustomResource_IsCfnResource ¶
func CfnCustomResource_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnCustomResource_IsConstruct ¶
func CfnCustomResource_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnHookDefaultVersion_CFN_RESOURCE_TYPE_NAME ¶
func CfnHookDefaultVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnHookDefaultVersion_IsCfnElement ¶
func CfnHookDefaultVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnHookDefaultVersion_IsCfnResource ¶
func CfnHookDefaultVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnHookDefaultVersion_IsConstruct ¶
func CfnHookDefaultVersion_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnHookTypeConfig_CFN_RESOURCE_TYPE_NAME ¶
func CfnHookTypeConfig_CFN_RESOURCE_TYPE_NAME() *string
func CfnHookTypeConfig_IsCfnElement ¶
func CfnHookTypeConfig_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnHookTypeConfig_IsCfnResource ¶
func CfnHookTypeConfig_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnHookTypeConfig_IsConstruct ¶
func CfnHookTypeConfig_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnHookVersion_CFN_RESOURCE_TYPE_NAME ¶
func CfnHookVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnHookVersion_IsCfnElement ¶
func CfnHookVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnHookVersion_IsCfnResource ¶
func CfnHookVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnHookVersion_IsConstruct ¶
func CfnHookVersion_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnMacro_CFN_RESOURCE_TYPE_NAME ¶
func CfnMacro_CFN_RESOURCE_TYPE_NAME() *string
func CfnMacro_IsCfnElement ¶
func CfnMacro_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnMacro_IsCfnResource ¶
func CfnMacro_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnMacro_IsConstruct ¶
func CfnMacro_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnModuleDefaultVersion_CFN_RESOURCE_TYPE_NAME ¶
func CfnModuleDefaultVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnModuleDefaultVersion_IsCfnElement ¶
func CfnModuleDefaultVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnModuleDefaultVersion_IsCfnResource ¶
func CfnModuleDefaultVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnModuleDefaultVersion_IsConstruct ¶
func CfnModuleDefaultVersion_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnModuleVersion_CFN_RESOURCE_TYPE_NAME ¶
func CfnModuleVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnModuleVersion_IsCfnElement ¶
func CfnModuleVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnModuleVersion_IsCfnResource ¶
func CfnModuleVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnModuleVersion_IsConstruct ¶
func CfnModuleVersion_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnPublicTypeVersion_CFN_RESOURCE_TYPE_NAME ¶
func CfnPublicTypeVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnPublicTypeVersion_IsCfnElement ¶
func CfnPublicTypeVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnPublicTypeVersion_IsCfnResource ¶
func CfnPublicTypeVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnPublicTypeVersion_IsConstruct ¶
func CfnPublicTypeVersion_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnPublisher_CFN_RESOURCE_TYPE_NAME ¶
func CfnPublisher_CFN_RESOURCE_TYPE_NAME() *string
func CfnPublisher_IsCfnElement ¶
func CfnPublisher_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnPublisher_IsCfnResource ¶
func CfnPublisher_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnPublisher_IsConstruct ¶
func CfnPublisher_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnResourceDefaultVersion_CFN_RESOURCE_TYPE_NAME ¶
func CfnResourceDefaultVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnResourceDefaultVersion_IsCfnElement ¶
func CfnResourceDefaultVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnResourceDefaultVersion_IsCfnResource ¶
func CfnResourceDefaultVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnResourceDefaultVersion_IsConstruct ¶
func CfnResourceDefaultVersion_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnResourceVersion_CFN_RESOURCE_TYPE_NAME ¶
func CfnResourceVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnResourceVersion_IsCfnElement ¶
func CfnResourceVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnResourceVersion_IsCfnResource ¶
func CfnResourceVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnResourceVersion_IsConstruct ¶
func CfnResourceVersion_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnStackSet_CFN_RESOURCE_TYPE_NAME ¶
func CfnStackSet_CFN_RESOURCE_TYPE_NAME() *string
func CfnStackSet_IsCfnElement ¶
func CfnStackSet_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnStackSet_IsCfnResource ¶
func CfnStackSet_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnStackSet_IsConstruct ¶
func CfnStackSet_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnStack_CFN_RESOURCE_TYPE_NAME ¶
func CfnStack_CFN_RESOURCE_TYPE_NAME() *string
func CfnStack_IsCfnElement ¶
func CfnStack_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnStack_IsCfnResource ¶
func CfnStack_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnStack_IsConstruct ¶
func CfnStack_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnTypeActivation_CFN_RESOURCE_TYPE_NAME ¶
func CfnTypeActivation_CFN_RESOURCE_TYPE_NAME() *string
func CfnTypeActivation_IsCfnElement ¶
func CfnTypeActivation_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnTypeActivation_IsCfnResource ¶
func CfnTypeActivation_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnTypeActivation_IsConstruct ¶
func CfnTypeActivation_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnWaitConditionHandle_CFN_RESOURCE_TYPE_NAME ¶
func CfnWaitConditionHandle_CFN_RESOURCE_TYPE_NAME() *string
func CfnWaitConditionHandle_IsCfnElement ¶
func CfnWaitConditionHandle_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnWaitConditionHandle_IsCfnResource ¶
func CfnWaitConditionHandle_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnWaitConditionHandle_IsConstruct ¶
func CfnWaitConditionHandle_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnWaitCondition_CFN_RESOURCE_TYPE_NAME ¶
func CfnWaitCondition_CFN_RESOURCE_TYPE_NAME() *string
func CfnWaitCondition_IsCfnElement ¶
func CfnWaitCondition_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnWaitCondition_IsCfnResource ¶
func CfnWaitCondition_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnWaitCondition_IsConstruct ¶
func CfnWaitCondition_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CustomResource_IsConstruct ¶
func CustomResource_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Deprecated: use `core.CustomResource`
func CustomResource_IsResource ¶
func CustomResource_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Deprecated: use `core.CustomResource`
func NestedStack_IsConstruct ¶
func NestedStack_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Deprecated: use core.NestedStack instead
func NestedStack_IsNestedStack ¶
func NestedStack_IsNestedStack(x interface{}) *bool
Checks if `x` is an object of type `NestedStack`. Deprecated: use core.NestedStack instead
func NestedStack_IsStack ¶
func NestedStack_IsStack(x interface{}) *bool
Return whether the given object is a Stack.
We do attribute detection since we can't reliably use 'instanceof'. Deprecated: use core.NestedStack instead
func NestedStack_Of ¶
Looks up the first stack scope in which `construct` is defined.
Fails if there is no stack up the tree. Deprecated: use core.NestedStack instead
func NewCfnCustomResource_Override ¶
func NewCfnCustomResource_Override(c CfnCustomResource, scope awscdk.Construct, id *string, props *CfnCustomResourceProps)
Create a new `AWS::CloudFormation::CustomResource`.
func NewCfnHookDefaultVersion_Override ¶
func NewCfnHookDefaultVersion_Override(c CfnHookDefaultVersion, scope awscdk.Construct, id *string, props *CfnHookDefaultVersionProps)
Create a new `AWS::CloudFormation::HookDefaultVersion`.
func NewCfnHookTypeConfig_Override ¶
func NewCfnHookTypeConfig_Override(c CfnHookTypeConfig, scope awscdk.Construct, id *string, props *CfnHookTypeConfigProps)
Create a new `AWS::CloudFormation::HookTypeConfig`.
func NewCfnHookVersion_Override ¶
func NewCfnHookVersion_Override(c CfnHookVersion, scope awscdk.Construct, id *string, props *CfnHookVersionProps)
Create a new `AWS::CloudFormation::HookVersion`.
func NewCfnMacro_Override ¶
func NewCfnMacro_Override(c CfnMacro, scope awscdk.Construct, id *string, props *CfnMacroProps)
Create a new `AWS::CloudFormation::Macro`.
func NewCfnModuleDefaultVersion_Override ¶
func NewCfnModuleDefaultVersion_Override(c CfnModuleDefaultVersion, scope awscdk.Construct, id *string, props *CfnModuleDefaultVersionProps)
Create a new `AWS::CloudFormation::ModuleDefaultVersion`.
func NewCfnModuleVersion_Override ¶
func NewCfnModuleVersion_Override(c CfnModuleVersion, scope awscdk.Construct, id *string, props *CfnModuleVersionProps)
Create a new `AWS::CloudFormation::ModuleVersion`.
func NewCfnPublicTypeVersion_Override ¶
func NewCfnPublicTypeVersion_Override(c CfnPublicTypeVersion, scope awscdk.Construct, id *string, props *CfnPublicTypeVersionProps)
Create a new `AWS::CloudFormation::PublicTypeVersion`.
func NewCfnPublisher_Override ¶
func NewCfnPublisher_Override(c CfnPublisher, scope awscdk.Construct, id *string, props *CfnPublisherProps)
Create a new `AWS::CloudFormation::Publisher`.
func NewCfnResourceDefaultVersion_Override ¶
func NewCfnResourceDefaultVersion_Override(c CfnResourceDefaultVersion, scope awscdk.Construct, id *string, props *CfnResourceDefaultVersionProps)
Create a new `AWS::CloudFormation::ResourceDefaultVersion`.
func NewCfnResourceVersion_Override ¶
func NewCfnResourceVersion_Override(c CfnResourceVersion, scope awscdk.Construct, id *string, props *CfnResourceVersionProps)
Create a new `AWS::CloudFormation::ResourceVersion`.
func NewCfnStackSet_Override ¶
func NewCfnStackSet_Override(c CfnStackSet, scope awscdk.Construct, id *string, props *CfnStackSetProps)
Create a new `AWS::CloudFormation::StackSet`.
func NewCfnStack_Override ¶
func NewCfnStack_Override(c CfnStack, scope awscdk.Construct, id *string, props *CfnStackProps)
Create a new `AWS::CloudFormation::Stack`.
func NewCfnTypeActivation_Override ¶
func NewCfnTypeActivation_Override(c CfnTypeActivation, scope awscdk.Construct, id *string, props *CfnTypeActivationProps)
Create a new `AWS::CloudFormation::TypeActivation`.
func NewCfnWaitConditionHandle_Override ¶
func NewCfnWaitConditionHandle_Override(c CfnWaitConditionHandle, scope awscdk.Construct, id *string)
Create a new `AWS::CloudFormation::WaitConditionHandle`.
func NewCfnWaitCondition_Override ¶
func NewCfnWaitCondition_Override(c CfnWaitCondition, scope awscdk.Construct, id *string, props *CfnWaitConditionProps)
Create a new `AWS::CloudFormation::WaitCondition`.
func NewCustomResource_Override
deprecated
func NewCustomResource_Override(c CustomResource, scope awscdk.Construct, id *string, props *CustomResourceProps)
Deprecated: use `core.CustomResource`
func NewNestedStack_Override
deprecated
func NewNestedStack_Override(n NestedStack, scope awscdk.Construct, id *string, props *NestedStackProps)
Deprecated: use core.NestedStack instead
Types ¶
type CfnCustomResource ¶
type CfnCustomResource interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // > Only one property is defined by AWS for a custom resource: `ServiceToken` . // // All other properties are defined by the service provider. // // The service token that was given to the template developer by the service provider to access the service, such as an Amazon SNS topic ARN or Lambda function ARN. The service token must be from the same Region in which you are creating the stack. // // Updates aren't supported. ServiceToken() *string SetServiceToken(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::CustomResource`.
In a CloudFormation template, you use the `AWS::CloudFormation::CustomResource` or `Custom:: *String*` resource type to specify custom resources.
Custom resources provide a way for you to write custom provisioning logic in CloudFormation template and have CloudFormation run it during a stack operation, such as when you create, update or delete a stack. For more information, see [Custom resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html) .
> If you use the [VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) feature, custom resources in the VPC must have access to CloudFormation -specific Amazon Simple Storage Service ( Amazon S3 ) buckets. Custom resources must send responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see [Setting up VPC endpoints for AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-vpce-bucketnames.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCustomResource := awscdk.Aws_cloudformation.NewCfnCustomResource(this, jsii.String("MyCfnCustomResource"), &cfnCustomResourceProps{ serviceToken: jsii.String("serviceToken"), })
func NewCfnCustomResource ¶
func NewCfnCustomResource(scope awscdk.Construct, id *string, props *CfnCustomResourceProps) CfnCustomResource
Create a new `AWS::CloudFormation::CustomResource`.
type CfnCustomResourceProps ¶
type CfnCustomResourceProps struct { // > Only one property is defined by AWS for a custom resource: `ServiceToken` . // // All other properties are defined by the service provider. // // The service token that was given to the template developer by the service provider to access the service, such as an Amazon SNS topic ARN or Lambda function ARN. The service token must be from the same Region in which you are creating the stack. // // Updates aren't supported. ServiceToken *string `field:"required" json:"serviceToken" yaml:"serviceToken"` }
Properties for defining a `CfnCustomResource`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCustomResourceProps := &cfnCustomResourceProps{ serviceToken: jsii.String("serviceToken"), }
type CfnHookDefaultVersion ¶
type CfnHookDefaultVersion interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Number (ARN) of the activated extension, in this account and Region. AttrArn() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The name of the hook. // // You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . TypeName() *string SetTypeName(val *string) // The version ID of the type configuration. // // You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . TypeVersionArn() *string SetTypeVersionArn(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // The version ID of the type specified. // // You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . VersionId() *string SetVersionId(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::HookDefaultVersion`.
The `HookDefaultVersion` resource specifies the default version of the hook. The default version of the hook is used in CloudFormation operations for this AWS account and AWS Region .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnHookDefaultVersion := awscdk.Aws_cloudformation.NewCfnHookDefaultVersion(this, jsii.String("MyCfnHookDefaultVersion"), &cfnHookDefaultVersionProps{ typeName: jsii.String("typeName"), typeVersionArn: jsii.String("typeVersionArn"), versionId: jsii.String("versionId"), })
func NewCfnHookDefaultVersion ¶
func NewCfnHookDefaultVersion(scope awscdk.Construct, id *string, props *CfnHookDefaultVersionProps) CfnHookDefaultVersion
Create a new `AWS::CloudFormation::HookDefaultVersion`.
type CfnHookDefaultVersionProps ¶
type CfnHookDefaultVersionProps struct { // The name of the hook. // // You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . TypeName *string `field:"optional" json:"typeName" yaml:"typeName"` // The version ID of the type configuration. // // You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . TypeVersionArn *string `field:"optional" json:"typeVersionArn" yaml:"typeVersionArn"` // The version ID of the type specified. // // You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . VersionId *string `field:"optional" json:"versionId" yaml:"versionId"` }
Properties for defining a `CfnHookDefaultVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnHookDefaultVersionProps := &cfnHookDefaultVersionProps{ typeName: jsii.String("typeName"), typeVersionArn: jsii.String("typeVersionArn"), versionId: jsii.String("versionId"), }
type CfnHookTypeConfig ¶
type CfnHookTypeConfig interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Number (ARN) of the activated hook type configuration, in this account and Region. AttrConfigurationArn() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Specifies the activated hook type configuration, in this AWS account and AWS Region . // // You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` . Configuration() *string SetConfiguration(val *string) // Specifies the activated hook type configuration, in this AWS account and AWS Region . // // Defaults to `default` alias. Hook types currently support default configuration alias. ConfigurationAlias() *string SetConfigurationAlias(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The Amazon Resource Number (ARN) for the hook to set `Configuration` for. // // You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` . TypeArn() *string SetTypeArn(val *string) // The unique name for your hook. // // Specifies a three-part namespace for your hook, with a recommended pattern of `Organization::Service::Hook` . // // You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` . TypeName() *string SetTypeName(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::HookTypeConfig`.
The `HookTypeConfig` resource specifies the configuration of a hook.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnHookTypeConfig := awscdk.Aws_cloudformation.NewCfnHookTypeConfig(this, jsii.String("MyCfnHookTypeConfig"), &cfnHookTypeConfigProps{ configuration: jsii.String("configuration"), // the properties below are optional configurationAlias: jsii.String("configurationAlias"), typeArn: jsii.String("typeArn"), typeName: jsii.String("typeName"), })
func NewCfnHookTypeConfig ¶
func NewCfnHookTypeConfig(scope awscdk.Construct, id *string, props *CfnHookTypeConfigProps) CfnHookTypeConfig
Create a new `AWS::CloudFormation::HookTypeConfig`.
type CfnHookTypeConfigProps ¶
type CfnHookTypeConfigProps struct { // Specifies the activated hook type configuration, in this AWS account and AWS Region . // // You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` . Configuration *string `field:"required" json:"configuration" yaml:"configuration"` // Specifies the activated hook type configuration, in this AWS account and AWS Region . // // Defaults to `default` alias. Hook types currently support default configuration alias. ConfigurationAlias *string `field:"optional" json:"configurationAlias" yaml:"configurationAlias"` // The Amazon Resource Number (ARN) for the hook to set `Configuration` for. // // You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` . TypeArn *string `field:"optional" json:"typeArn" yaml:"typeArn"` // The unique name for your hook. // // Specifies a three-part namespace for your hook, with a recommended pattern of `Organization::Service::Hook` . // // You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` . TypeName *string `field:"optional" json:"typeName" yaml:"typeName"` }
Properties for defining a `CfnHookTypeConfig`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnHookTypeConfigProps := &cfnHookTypeConfigProps{ configuration: jsii.String("configuration"), // the properties below are optional configurationAlias: jsii.String("configurationAlias"), typeArn: jsii.String("typeArn"), typeName: jsii.String("typeName"), }
type CfnHookVersion ¶
type CfnHookVersion interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the hook. AttrArn() *string // Whether the specified hook version is set as the default version. AttrIsDefaultVersion() awscdk.IResolvable // The Amazon Resource Number (ARN) assigned to this version of the hook. AttrTypeArn() *string // The ID of this version of the hook. AttrVersionId() *string // The scope at which the resource is visible and usable in CloudFormation operations. // // Valid values include: // // - `PRIVATE` : The resource is only visible and usable within the account in which it's registered. CloudFormation marks any resources you register as `PRIVATE` . // - `PUBLIC` : The resource is publicly visible and usable within any Amazon account. AttrVisibility() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The Amazon Resource Name (ARN) of the task execution role that grants the hook permission. ExecutionRoleArn() *string SetExecutionRoleArn(val *string) // Contains logging configuration information for an extension. LoggingConfig() interface{} SetLoggingConfig(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // A URL to the Amazon S3 bucket containing the hook project package that contains the necessary files for the hook you want to register. // // For information on generating a schema handler package for the resource you want to register, see [submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) in the *CloudFormation CLI User Guide for Extension Development* . // // > The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the schema handler package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* . SchemaHandlerPackage() *string SetSchemaHandlerPackage(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The unique name for your hook. // // Specifies a three-part namespace for your hook, with a recommended pattern of `Organization::Service::Hook` . // // > The following organization namespaces are reserved and can't be used in your hook type names: // > // > - `Alexa` // > - `AMZN` // > - `Amazon` // > - `ASK` // > - `AWS` // > - `Custom` // > - `Dev`. TypeName() *string SetTypeName(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::HookVersion`.
The `HookVersion` resource publishes new or first hook version to the AWS CloudFormation registry.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnHookVersion := awscdk.Aws_cloudformation.NewCfnHookVersion(this, jsii.String("MyCfnHookVersion"), &cfnHookVersionProps{ schemaHandlerPackage: jsii.String("schemaHandlerPackage"), typeName: jsii.String("typeName"), // the properties below are optional executionRoleArn: jsii.String("executionRoleArn"), loggingConfig: &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }, })
func NewCfnHookVersion ¶
func NewCfnHookVersion(scope awscdk.Construct, id *string, props *CfnHookVersionProps) CfnHookVersion
Create a new `AWS::CloudFormation::HookVersion`.
type CfnHookVersionProps ¶
type CfnHookVersionProps struct { // A URL to the Amazon S3 bucket containing the hook project package that contains the necessary files for the hook you want to register. // // For information on generating a schema handler package for the resource you want to register, see [submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) in the *CloudFormation CLI User Guide for Extension Development* . // // > The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the schema handler package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* . SchemaHandlerPackage *string `field:"required" json:"schemaHandlerPackage" yaml:"schemaHandlerPackage"` // The unique name for your hook. // // Specifies a three-part namespace for your hook, with a recommended pattern of `Organization::Service::Hook` . // // > The following organization namespaces are reserved and can't be used in your hook type names: // > // > - `Alexa` // > - `AMZN` // > - `Amazon` // > - `ASK` // > - `AWS` // > - `Custom` // > - `Dev`. TypeName *string `field:"required" json:"typeName" yaml:"typeName"` // The Amazon Resource Name (ARN) of the task execution role that grants the hook permission. ExecutionRoleArn *string `field:"optional" json:"executionRoleArn" yaml:"executionRoleArn"` // Contains logging configuration information for an extension. LoggingConfig interface{} `field:"optional" json:"loggingConfig" yaml:"loggingConfig"` }
Properties for defining a `CfnHookVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnHookVersionProps := &cfnHookVersionProps{ schemaHandlerPackage: jsii.String("schemaHandlerPackage"), typeName: jsii.String("typeName"), // the properties below are optional executionRoleArn: jsii.String("executionRoleArn"), loggingConfig: &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }, }
type CfnHookVersion_LoggingConfigProperty ¶
type CfnHookVersion_LoggingConfigProperty struct { // The Amazon CloudWatch Logs group to which CloudFormation sends error logging information when invoking the extension's handlers. LogGroupName *string `field:"optional" json:"logGroupName" yaml:"logGroupName"` // The Amazon Resource Name (ARN) of the role that CloudFormation should assume when sending log entries to CloudWatch Logs. LogRoleArn *string `field:"optional" json:"logRoleArn" yaml:"logRoleArn"` }
The `LoggingConfig` property type specifies logging configuration information for an extension.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" loggingConfigProperty := &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }
type CfnMacro ¶
type CfnMacro interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A description of the macro. Description() *string SetDescription(val *string) // The Amazon Resource Name (ARN) of the underlying AWS Lambda function that you want AWS CloudFormation to invoke when the macro is run. FunctionName() *string SetFunctionName(val *string) // The CloudWatch Logs group to which AWS CloudFormation sends error logging information when invoking the macro's underlying AWS Lambda function. LogGroupName() *string SetLogGroupName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The ARN of the role AWS CloudFormation should assume when sending log entries to CloudWatch Logs . LogRoleArn() *string SetLogRoleArn(val *string) // The name of the macro. // // The name of the macro must be unique across all macros in the account. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::Macro`.
The `AWS::CloudFormation::Macro` resource is a CloudFormation resource type that creates a CloudFormation macro to perform custom processing on CloudFormation templates. For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnMacro := awscdk.Aws_cloudformation.NewCfnMacro(this, jsii.String("MyCfnMacro"), &cfnMacroProps{ functionName: jsii.String("functionName"), name: jsii.String("name"), // the properties below are optional description: jsii.String("description"), logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), })
func NewCfnMacro ¶
func NewCfnMacro(scope awscdk.Construct, id *string, props *CfnMacroProps) CfnMacro
Create a new `AWS::CloudFormation::Macro`.
type CfnMacroProps ¶
type CfnMacroProps struct { // The Amazon Resource Name (ARN) of the underlying AWS Lambda function that you want AWS CloudFormation to invoke when the macro is run. FunctionName *string `field:"required" json:"functionName" yaml:"functionName"` // The name of the macro. // // The name of the macro must be unique across all macros in the account. Name *string `field:"required" json:"name" yaml:"name"` // A description of the macro. Description *string `field:"optional" json:"description" yaml:"description"` // The CloudWatch Logs group to which AWS CloudFormation sends error logging information when invoking the macro's underlying AWS Lambda function. LogGroupName *string `field:"optional" json:"logGroupName" yaml:"logGroupName"` // The ARN of the role AWS CloudFormation should assume when sending log entries to CloudWatch Logs . LogRoleArn *string `field:"optional" json:"logRoleArn" yaml:"logRoleArn"` }
Properties for defining a `CfnMacro`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnMacroProps := &cfnMacroProps{ functionName: jsii.String("functionName"), name: jsii.String("name"), // the properties below are optional description: jsii.String("description"), logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }
type CfnModuleDefaultVersion ¶
type CfnModuleDefaultVersion interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the module version to set as the default version. // // Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` . Arn() *string SetArn(val *string) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The name of the module. // // Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` . ModuleName() *string SetModuleName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // The ID for the specific version of the module. // // Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` . VersionId() *string SetVersionId(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::ModuleDefaultVersion`.
Specifies the default version of a module. The default version of the module will be used in CloudFormation operations for this account and Region.
To register a module version, use the `[AWS::CloudFormation::ModuleVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html)` resource.
For more information using modules, see [Using modules to encapsulate and reuse resource configurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html) and [Registering extensions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register) in the *CloudFormation User Guide* . For information on developing modules, see [Developing modules](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules.html) in the *CloudFormation CLI User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnModuleDefaultVersion := awscdk.Aws_cloudformation.NewCfnModuleDefaultVersion(this, jsii.String("MyCfnModuleDefaultVersion"), &cfnModuleDefaultVersionProps{ arn: jsii.String("arn"), moduleName: jsii.String("moduleName"), versionId: jsii.String("versionId"), })
func NewCfnModuleDefaultVersion ¶
func NewCfnModuleDefaultVersion(scope awscdk.Construct, id *string, props *CfnModuleDefaultVersionProps) CfnModuleDefaultVersion
Create a new `AWS::CloudFormation::ModuleDefaultVersion`.
type CfnModuleDefaultVersionProps ¶
type CfnModuleDefaultVersionProps struct { // The Amazon Resource Name (ARN) of the module version to set as the default version. // // Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` . Arn *string `field:"optional" json:"arn" yaml:"arn"` // The name of the module. // // Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` . ModuleName *string `field:"optional" json:"moduleName" yaml:"moduleName"` // The ID for the specific version of the module. // // Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` . VersionId *string `field:"optional" json:"versionId" yaml:"versionId"` }
Properties for defining a `CfnModuleDefaultVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnModuleDefaultVersionProps := &cfnModuleDefaultVersionProps{ arn: jsii.String("arn"), moduleName: jsii.String("moduleName"), versionId: jsii.String("versionId"), }
type CfnModuleVersion ¶
type CfnModuleVersion interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the module. AttrArn() *string // The description of the module. AttrDescription() *string // The URL of a page providing detailed documentation for this module. AttrDocumentationUrl() *string // Whether the specified module version is set as the default version. AttrIsDefaultVersion() awscdk.IResolvable // The schema that defines the module. AttrSchema() *string // When the specified module version was registered. AttrTimeCreated() *string // The ID of this version of the module. AttrVersionId() *string // The scope at which the module is visible and usable in CloudFormation operations. // // Valid values include: // // - `PRIVATE` : The module is only visible and usable within the account in which it's registered. // - `PUBLIC` : The module is publicly visible and usable within any Amazon account. AttrVisibility() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The name of the module being registered. ModuleName() *string SetModuleName(val *string) // A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register. // // > The user registering the module version must be able to access the module package in the S3 bucket. That's, the user needs to have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* . ModulePackage() *string SetModulePackage(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::ModuleVersion`.
Registers the specified version of the module with the CloudFormation service. Registering a module makes it available for use in CloudFormation templates in your AWS account and Region.
To specify a module version as the default version, use the `[AWS::CloudFormation::ModuleDefaultVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html)` resource.
For more information using modules, see [Using modules to encapsulate and reuse resource configurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html) and [Registering extensions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register) in the *CloudFormation User Guide* . For information on developing modules, see [Developing modules](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules.html) in the *CloudFormation CLI User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnModuleVersion := awscdk.Aws_cloudformation.NewCfnModuleVersion(this, jsii.String("MyCfnModuleVersion"), &cfnModuleVersionProps{ moduleName: jsii.String("moduleName"), modulePackage: jsii.String("modulePackage"), })
func NewCfnModuleVersion ¶
func NewCfnModuleVersion(scope awscdk.Construct, id *string, props *CfnModuleVersionProps) CfnModuleVersion
Create a new `AWS::CloudFormation::ModuleVersion`.
type CfnModuleVersionProps ¶
type CfnModuleVersionProps struct { // The name of the module being registered. ModuleName *string `field:"required" json:"moduleName" yaml:"moduleName"` // A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register. // // > The user registering the module version must be able to access the module package in the S3 bucket. That's, the user needs to have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* . ModulePackage *string `field:"required" json:"modulePackage" yaml:"modulePackage"` }
Properties for defining a `CfnModuleVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnModuleVersionProps := &cfnModuleVersionProps{ moduleName: jsii.String("moduleName"), modulePackage: jsii.String("modulePackage"), }
type CfnPublicTypeVersion ¶
type CfnPublicTypeVersion interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Number (ARN) of the extension. // // Conditional: You must specify `Arn` , or `TypeName` and `Type` . Arn() *string SetArn(val *string) // The Amazon Resource Number (ARN) assigned to the public extension upon publication. AttrPublicTypeArn() *string // The publisher ID of the extension publisher. AttrPublisherId() *string // The Amazon Resource Number (ARN) assigned to this version of the extension. AttrTypeVersionArn() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The S3 bucket to which CloudFormation delivers the contract test execution logs. // // CloudFormation delivers the logs by the time contract testing has completed and the extension has been assigned a test type status of `PASSED` or `FAILED` . // // The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions: // // - GetObject // - PutObject // // For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html) in the *AWS Identity and Access Management User Guide* . LogDeliveryBucket() *string SetLogDeliveryBucket(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // The version number to assign to this version of the extension. // // Use the following format, and adhere to semantic versioning when assigning a version number to your extension: // // `MAJOR.MINOR.PATCH` // // For more information, see [Semantic Versioning 2.0.0](https://docs.aws.amazon.com/https://semver.org/) . // // If you don't specify a version number, CloudFormation increments the version number by one minor version release. // // You cannot specify a version number the first time you publish a type. AWS CloudFormation automatically sets the first version number to be `1.0.0` . PublicVersionNumber() *string SetPublicVersionNumber(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The type of the extension to test. // // Conditional: You must specify `Arn` , or `TypeName` and `Type` . Type() *string SetType(val *string) // The name of the extension to test. // // Conditional: You must specify `Arn` , or `TypeName` and `Type` . TypeName() *string SetTypeName(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::PublicTypeVersion`.
Tests and publishes a registered extension as a public, third-party extension.
CloudFormation first tests the extension to make sure it meets all necessary requirements for being published in the CloudFormation registry. If it does, CloudFormation then publishes it to the registry as a public third-party extension in this Region. Public extensions are available for use by all CloudFormation users.
- For resource types, testing includes passing all contracts tests defined for the type. - For modules, testing includes determining if the module's model meets all necessary requirements.
For more information, see [Testing your public extension prior to publishing](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-testing) in the *CloudFormation CLI User Guide* .
If you don't specify a version, CloudFormation uses the default version of the extension in your account and Region for testing.
To perform testing, CloudFormation assumes the execution role specified when the type was registered.
An extension must have a test status of `PASSED` before it can be published. For more information, see [Publishing extensions to make them available for public use](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-publish.html) in the *CloudFormation CLI User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnPublicTypeVersion := awscdk.Aws_cloudformation.NewCfnPublicTypeVersion(this, jsii.String("MyCfnPublicTypeVersion"), &cfnPublicTypeVersionProps{ arn: jsii.String("arn"), logDeliveryBucket: jsii.String("logDeliveryBucket"), publicVersionNumber: jsii.String("publicVersionNumber"), type: jsii.String("type"), typeName: jsii.String("typeName"), })
func NewCfnPublicTypeVersion ¶
func NewCfnPublicTypeVersion(scope awscdk.Construct, id *string, props *CfnPublicTypeVersionProps) CfnPublicTypeVersion
Create a new `AWS::CloudFormation::PublicTypeVersion`.
type CfnPublicTypeVersionProps ¶
type CfnPublicTypeVersionProps struct { // The Amazon Resource Number (ARN) of the extension. // // Conditional: You must specify `Arn` , or `TypeName` and `Type` . Arn *string `field:"optional" json:"arn" yaml:"arn"` // The S3 bucket to which CloudFormation delivers the contract test execution logs. // // CloudFormation delivers the logs by the time contract testing has completed and the extension has been assigned a test type status of `PASSED` or `FAILED` . // // The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions: // // - GetObject // - PutObject // // For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html) in the *AWS Identity and Access Management User Guide* . LogDeliveryBucket *string `field:"optional" json:"logDeliveryBucket" yaml:"logDeliveryBucket"` // The version number to assign to this version of the extension. // // Use the following format, and adhere to semantic versioning when assigning a version number to your extension: // // `MAJOR.MINOR.PATCH` // // For more information, see [Semantic Versioning 2.0.0](https://docs.aws.amazon.com/https://semver.org/) . // // If you don't specify a version number, CloudFormation increments the version number by one minor version release. // // You cannot specify a version number the first time you publish a type. AWS CloudFormation automatically sets the first version number to be `1.0.0` . PublicVersionNumber *string `field:"optional" json:"publicVersionNumber" yaml:"publicVersionNumber"` // The type of the extension to test. // // Conditional: You must specify `Arn` , or `TypeName` and `Type` . Type *string `field:"optional" json:"type" yaml:"type"` // The name of the extension to test. // // Conditional: You must specify `Arn` , or `TypeName` and `Type` . TypeName *string `field:"optional" json:"typeName" yaml:"typeName"` }
Properties for defining a `CfnPublicTypeVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnPublicTypeVersionProps := &cfnPublicTypeVersionProps{ arn: jsii.String("arn"), logDeliveryBucket: jsii.String("logDeliveryBucket"), publicVersionNumber: jsii.String("publicVersionNumber"), type: jsii.String("type"), typeName: jsii.String("typeName"), }
type CfnPublisher ¶
type CfnPublisher interface { awscdk.CfnResource awscdk.IInspectable // Whether you accept the [Terms and Conditions](https://docs.aws.amazon.com/https://cloudformation-registry-documents.s3.amazonaws.com/Terms_and_Conditions_for_AWS_CloudFormation_Registry_Publishers.pdf) for publishing extensions in the CloudFormation registry. You must accept the terms and conditions in order to register to publish public extensions to the CloudFormation registry. // // The default is `false` . AcceptTermsAndConditions() interface{} SetAcceptTermsAndConditions(val interface{}) // The type of account used as the identity provider when registering this publisher with CloudFormation . // // Values include: `AWS_Marketplace` | `Bitbucket` | `GitHub` . AttrIdentityProvider() *string // The ID of the extension publisher. // // This publisher ID applies to your account in all AWS Regions . AttrPublisherId() *string // The URL to the publisher's profile with the identity provider. AttrPublisherProfile() *string // Whether the publisher is verified. AttrPublisherStatus() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // If you are using a Bitbucket or GitHub account for identity verification, the Amazon Resource Name (ARN) for your connection to that account. // // For more information, see [Registering your account to publish CloudFormation extensions](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs) in the *CloudFormation CLI User Guide* . ConnectionArn() *string SetConnectionArn(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::Publisher`.
Registers your account as a publisher of public extensions in the CloudFormation registry. Public extensions are available for use by all CloudFormation users.
For information on requirements for registering as a public extension publisher, see [Registering your account to publish CloudFormation extensions](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs) in the *CloudFormation CLI User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnPublisher := awscdk.Aws_cloudformation.NewCfnPublisher(this, jsii.String("MyCfnPublisher"), &cfnPublisherProps{ acceptTermsAndConditions: jsii.Boolean(false), // the properties below are optional connectionArn: jsii.String("connectionArn"), })
func NewCfnPublisher ¶
func NewCfnPublisher(scope awscdk.Construct, id *string, props *CfnPublisherProps) CfnPublisher
Create a new `AWS::CloudFormation::Publisher`.
type CfnPublisherProps ¶
type CfnPublisherProps struct { // Whether you accept the [Terms and Conditions](https://docs.aws.amazon.com/https://cloudformation-registry-documents.s3.amazonaws.com/Terms_and_Conditions_for_AWS_CloudFormation_Registry_Publishers.pdf) for publishing extensions in the CloudFormation registry. You must accept the terms and conditions in order to register to publish public extensions to the CloudFormation registry. // // The default is `false` . AcceptTermsAndConditions interface{} `field:"required" json:"acceptTermsAndConditions" yaml:"acceptTermsAndConditions"` // If you are using a Bitbucket or GitHub account for identity verification, the Amazon Resource Name (ARN) for your connection to that account. // // For more information, see [Registering your account to publish CloudFormation extensions](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs) in the *CloudFormation CLI User Guide* . ConnectionArn *string `field:"optional" json:"connectionArn" yaml:"connectionArn"` }
Properties for defining a `CfnPublisher`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnPublisherProps := &cfnPublisherProps{ acceptTermsAndConditions: jsii.Boolean(false), // the properties below are optional connectionArn: jsii.String("connectionArn"), }
type CfnResourceDefaultVersion ¶
type CfnResourceDefaultVersion interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the resource. AttrArn() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The name of the resource. // // Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . TypeName() *string SetTypeName(val *string) // The Amazon Resource Name (ARN) of the resource version. // // Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . TypeVersionArn() *string SetTypeVersionArn(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // The ID of a specific version of the resource. // // The version ID is the value at the end of the Amazon Resource Name (ARN) assigned to the resource version when it's registered. // // Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . VersionId() *string SetVersionId(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::ResourceDefaultVersion`.
Specifies the default version of a resource. The default version of a resource will be used in CloudFormation operations.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnResourceDefaultVersion := awscdk.Aws_cloudformation.NewCfnResourceDefaultVersion(this, jsii.String("MyCfnResourceDefaultVersion"), &cfnResourceDefaultVersionProps{ typeName: jsii.String("typeName"), typeVersionArn: jsii.String("typeVersionArn"), versionId: jsii.String("versionId"), })
func NewCfnResourceDefaultVersion ¶
func NewCfnResourceDefaultVersion(scope awscdk.Construct, id *string, props *CfnResourceDefaultVersionProps) CfnResourceDefaultVersion
Create a new `AWS::CloudFormation::ResourceDefaultVersion`.
type CfnResourceDefaultVersionProps ¶
type CfnResourceDefaultVersionProps struct { // The name of the resource. // // Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . TypeName *string `field:"optional" json:"typeName" yaml:"typeName"` // The Amazon Resource Name (ARN) of the resource version. // // Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . TypeVersionArn *string `field:"optional" json:"typeVersionArn" yaml:"typeVersionArn"` // The ID of a specific version of the resource. // // The version ID is the value at the end of the Amazon Resource Name (ARN) assigned to the resource version when it's registered. // // Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` . VersionId *string `field:"optional" json:"versionId" yaml:"versionId"` }
Properties for defining a `CfnResourceDefaultVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnResourceDefaultVersionProps := &cfnResourceDefaultVersionProps{ typeName: jsii.String("typeName"), typeVersionArn: jsii.String("typeVersionArn"), versionId: jsii.String("versionId"), }
type CfnResourceVersion ¶
type CfnResourceVersion interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the resource version. AttrArn() *string // Whether the resource version is set as the default version. AttrIsDefaultVersion() awscdk.IResolvable // The provisioning behavior of the resource type. // // CloudFormation determines the provisioning type during registration, based on the types of handlers in the schema handler package submitted. // // Valid values include: // // - `FULLY_MUTABLE` : The resource type includes an update handler to process updates to the type during stack update operations. // - `IMMUTABLE` : The resource type doesn't include an update handler, so the type can't be updated and must instead be replaced during stack update operations. // - `NON_PROVISIONABLE` : The resource type doesn't include all the following handlers, and therefore can't actually be provisioned. // // - create // - read // - delete. AttrProvisioningType() *string // The Amazon Resource Name (ARN) of the resource. AttrTypeArn() *string // The ID of a specific version of the resource. // // The version ID is the value at the end of the Amazon Resource Name (ARN) assigned to the resource version when it is registered. AttrVersionId() *string // The scope at which the resource is visible and usable in CloudFormation operations. // // Valid values include: // // - `PRIVATE` : The resource is only visible and usable within the account in which it's registered. CloudFormation marks any resources you register as `PRIVATE` . // - `PUBLIC` : The resource is publicly visible and usable within any Amazon account. AttrVisibility() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. // // If your resource calls AWS APIs in any of its handlers, you must create an *[IAM execution role](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials. ExecutionRoleArn() *string SetExecutionRoleArn(val *string) // Logging configuration information for a resource. LoggingConfig() interface{} SetLoggingConfig(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register. // // For information on generating a schema handler package for the resource you want to register, see [submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) in the *CloudFormation CLI User Guide* . // // > The user registering the resource must be able to access the package in the S3 bucket. That is, the user needs to have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the schema handler package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* . SchemaHandlerPackage() *string SetSchemaHandlerPackage(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The name of the resource being registered. // // We recommend that resource names adhere to the following pattern: *company_or_organization* :: *service* :: *type* . // // > The following organization namespaces are reserved and can't be used in your resource names: // > // > - `Alexa` // > - `AMZN` // > - `Amazon` // > - `AWS` // > - `Custom` // > - `Dev`. TypeName() *string SetTypeName(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::ResourceVersion`.
Registers a resource version with the CloudFormation service. Registering a resource version makes it available for use in CloudFormation templates in your AWS account , and includes:
- Validating the resource schema. - Determining which handlers, if any, have been specified for the resource. - Making the resource available for use in your account.
For more information on how to develop resources and ready them for registration, see [Creating Resource Providers](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-types.html) in the *CloudFormation CLI User Guide* .
You can have a maximum of 50 resource versions registered at a time. This maximum is per account and per Region.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnResourceVersion := awscdk.Aws_cloudformation.NewCfnResourceVersion(this, jsii.String("MyCfnResourceVersion"), &cfnResourceVersionProps{ schemaHandlerPackage: jsii.String("schemaHandlerPackage"), typeName: jsii.String("typeName"), // the properties below are optional executionRoleArn: jsii.String("executionRoleArn"), loggingConfig: &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }, })
func NewCfnResourceVersion ¶
func NewCfnResourceVersion(scope awscdk.Construct, id *string, props *CfnResourceVersionProps) CfnResourceVersion
Create a new `AWS::CloudFormation::ResourceVersion`.
type CfnResourceVersionProps ¶
type CfnResourceVersionProps struct { // A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register. // // For information on generating a schema handler package for the resource you want to register, see [submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) in the *CloudFormation CLI User Guide* . // // > The user registering the resource must be able to access the package in the S3 bucket. That is, the user needs to have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the schema handler package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* . SchemaHandlerPackage *string `field:"required" json:"schemaHandlerPackage" yaml:"schemaHandlerPackage"` // The name of the resource being registered. // // We recommend that resource names adhere to the following pattern: *company_or_organization* :: *service* :: *type* . // // > The following organization namespaces are reserved and can't be used in your resource names: // > // > - `Alexa` // > - `AMZN` // > - `Amazon` // > - `AWS` // > - `Custom` // > - `Dev`. TypeName *string `field:"required" json:"typeName" yaml:"typeName"` // The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. // // If your resource calls AWS APIs in any of its handlers, you must create an *[IAM execution role](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials. ExecutionRoleArn *string `field:"optional" json:"executionRoleArn" yaml:"executionRoleArn"` // Logging configuration information for a resource. LoggingConfig interface{} `field:"optional" json:"loggingConfig" yaml:"loggingConfig"` }
Properties for defining a `CfnResourceVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnResourceVersionProps := &cfnResourceVersionProps{ schemaHandlerPackage: jsii.String("schemaHandlerPackage"), typeName: jsii.String("typeName"), // the properties below are optional executionRoleArn: jsii.String("executionRoleArn"), loggingConfig: &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }, }
type CfnResourceVersion_LoggingConfigProperty ¶
type CfnResourceVersion_LoggingConfigProperty struct { // The Amazon CloudWatch logs group to which CloudFormation sends error logging information when invoking the type's handlers. LogGroupName *string `field:"optional" json:"logGroupName" yaml:"logGroupName"` // The ARN of the role that CloudFormation should assume when sending log entries to CloudWatch logs. LogRoleArn *string `field:"optional" json:"logRoleArn" yaml:"logRoleArn"` }
Logging configuration information for a resource.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" loggingConfigProperty := &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }
type CfnStack ¶
type CfnStack interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // The Amazon Simple Notification Service (Amazon SNS) topic ARNs to publish stack related events. // // You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI). NotificationArns() *[]*string SetNotificationArns(val *[]*string) // The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. // // Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter. // // > If you use the `Ref` function to pass a parameter value to a nested stack, comma-delimited list parameters must be of type `String` . In other words, you can't pass values that are of type `CommaDelimitedList` to nested stacks. // // Conditional. Required if the nested stack requires input parameters. // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. Parameters() interface{} SetParameters(val interface{}) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Key-value pairs to associate with this stack. // // AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified. Tags() awscdk.TagManager // Location of file containing the template body. // // The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. TemplateUrl() *string SetTemplateUrl(val *string) // The length of time, in minutes, that CloudFormation waits for the nested stack to reach the `CREATE_COMPLETE` state. // // The default is no timeout. When CloudFormation detects that the nested stack has reached the `CREATE_COMPLETE` state, it marks the nested stack resource as `CREATE_COMPLETE` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches `CREATE_COMPLETE` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. // // Updates aren't supported. TimeoutInMinutes() *float64 SetTimeoutInMinutes(val *float64) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::Stack`.
The `AWS::CloudFormation::Stack` resource nests a stack as a resource in a top-level template.
You can add output values from a nested stack within the containing template. You use the [GetAtt](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) function with the nested stack's logical name and the name of the output value in the nested stack in the format `Outputs. *NestedStackOutputName*` .
> We strongly recommend that updates to nested stacks are run from the parent stack.
When you apply template changes to update a top-level stack, CloudFormation updates the top-level stack and initiates an update to its nested stacks. CloudFormation updates the resources of modified nested stacks, but doesn't update the resources of unmodified nested stacks. For more information, see [CloudFormation stack updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html) .
> You must acknowledge IAM capabilities for nested stacks that contain IAM resources. Also, verify that you have cancel update stack permissions, which is required if an update rolls back. For more information about IAM and CloudFormation , see [Controlling access with AWS Identity and Access Management](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnStack := awscdk.Aws_cloudformation.NewCfnStack(this, jsii.String("MyCfnStack"), &cfnStackProps{ templateUrl: jsii.String("templateUrl"), // the properties below are optional notificationArns: []*string{ jsii.String("notificationArns"), }, parameters: map[string]*string{ "parametersKey": jsii.String("parameters"), }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, timeoutInMinutes: jsii.Number(123), })
func NewCfnStack ¶
func NewCfnStack(scope awscdk.Construct, id *string, props *CfnStackProps) CfnStack
Create a new `AWS::CloudFormation::Stack`.
type CfnStackProps ¶
type CfnStackProps struct { // Location of file containing the template body. // // The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) . // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. TemplateUrl *string `field:"required" json:"templateUrl" yaml:"templateUrl"` // The Amazon Simple Notification Service (Amazon SNS) topic ARNs to publish stack related events. // // You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI). NotificationArns *[]*string `field:"optional" json:"notificationArns" yaml:"notificationArns"` // The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. // // Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter. // // > If you use the `Ref` function to pass a parameter value to a nested stack, comma-delimited list parameters must be of type `String` . In other words, you can't pass values that are of type `CommaDelimitedList` to nested stacks. // // Conditional. Required if the nested stack requires input parameters. // // Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // Key-value pairs to associate with this stack. // // AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified. Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The length of time, in minutes, that CloudFormation waits for the nested stack to reach the `CREATE_COMPLETE` state. // // The default is no timeout. When CloudFormation detects that the nested stack has reached the `CREATE_COMPLETE` state, it marks the nested stack resource as `CREATE_COMPLETE` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches `CREATE_COMPLETE` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. // // Updates aren't supported. TimeoutInMinutes *float64 `field:"optional" json:"timeoutInMinutes" yaml:"timeoutInMinutes"` }
Properties for defining a `CfnStack`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnStackProps := &cfnStackProps{ templateUrl: jsii.String("templateUrl"), // the properties below are optional notificationArns: []*string{ jsii.String("notificationArns"), }, parameters: map[string]*string{ "parametersKey": jsii.String("parameters"), }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, timeoutInMinutes: jsii.Number(123), }
type CfnStackSet ¶
type CfnStackSet interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. // // Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. // // Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see [Prerequisites: Granting Permissions for Stack Set Operations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html) in the *AWS CloudFormation User Guide* . // // *Minimum* : `20` // // *Maximum* : `2048`. AdministrationRoleArn() *string SetAdministrationRoleArn(val *string) // The ID of the stack that you're creating. AttrStackSetId() *string // [ `Service-managed` permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). AutoDeployment() interface{} SetAutoDeployment(val interface{}) // [Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account. // // By default, `SELF` is specified. Use `SELF` for stack sets with self-managed permissions. // // - To create a stack set with service-managed permissions while signed in to the management account, specify `SELF` . // - To create a stack set with service-managed permissions while signed in to a delegated administrator account, specify `DELEGATED_ADMIN` . // // Your AWS account must be registered as a delegated admin in the management account. For more information, see [Register a delegated administrator](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html) in the *AWS CloudFormation User Guide* . // // Stack sets with service-managed permissions are created in the management account, including stack sets that are created by delegated administrators. // // *Valid Values* : `SELF` | `DELEGATED_ADMIN`. CallAs() *string SetCallAs(val *string) // The capabilities that are allowed in the stack set. // // Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . Capabilities() *[]*string SetCapabilities(val *[]*string) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A description of the stack set. // // *Minimum* : `1` // // *Maximum* : `1024`. Description() *string SetDescription(val *string) // The name of the IAM execution role to use to create the stack set. // // If you don't specify an execution role, AWS CloudFormation uses the `AWSCloudFormationStackSetExecutionRole` role for the stack set operation. // // *Minimum* : `1` // // *Maximum* : `64` // // *Pattern* : `[a-zA-Z_0-9+=,.@-]+` ExecutionRoleName() *string SetExecutionRoleName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. // // When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order. // // > If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting. // > // > You can't modify your stack set's execution configuration while there are running or queued operations for that stack set. // // When inactive (default), StackSets performs one operation at a time in request order. ManagedExecution() interface{} SetManagedExecution(val interface{}) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // The user-specified preferences for how AWS CloudFormation performs a stack set operation. OperationPreferences() interface{} SetOperationPreferences(val interface{}) // The input parameters for the stack set template. Parameters() interface{} SetParameters(val interface{}) // Describes how the IAM roles required for stack set operations are created. // // - With `SELF_MANAGED` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see [Grant Self-Managed Stack Set Permissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html) . // - With `SERVICE_MANAGED` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see [Grant Service-Managed Stack Set Permissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html) . // // *Allowed Values* : `SERVICE_MANAGED` | `SELF_MANAGED` // // > The `PermissionModel` property is required. PermissionModel() *string SetPermissionModel(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // A group of stack instances with parameters in some specific accounts and Regions. StackInstancesGroup() interface{} SetStackInstancesGroup(val interface{}) // The name to associate with the stack set. // // The name must be unique in the Region where you create your stack set. // // *Maximum* : `128` // // *Pattern* : `^[a-zA-Z][a-zA-Z0-9-]{0,127}$` // // > The `StackSetName` property is required. StackSetName() *string SetStackSetName(val *string) // The key-value pairs 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() awscdk.TagManager // The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. // // You must include either `TemplateURL` or `TemplateBody` in a StackSet, but you can't use both. Dynamic references in the `TemplateBody` may not work correctly in all cases. It's recommended to pass templates containing dynamic references through `TemplateUrl` instead. // // *Minimum* : `1` // // *Maximum* : `51200`. TemplateBody() *string SetTemplateBody(val *string) // Location of file containing the template body. // // The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. // // You must include either `TemplateURL` or `TemplateBody` in a StackSet, but you can't use both. // // *Minimum* : `1` // // *Maximum* : `1024`. TemplateUrl() *string SetTemplateUrl(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::StackSet`.
The `AWS::CloudFormation::StackSet` enables you to provision stacks into AWS accounts and across Regions by using a single CloudFormation template. In the stack set, you specify the template to use, in addition to any parameters and capabilities that the template requires.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var managedExecution interface{} cfnStackSet := awscdk.Aws_cloudformation.NewCfnStackSet(this, jsii.String("MyCfnStackSet"), &cfnStackSetProps{ permissionModel: jsii.String("permissionModel"), stackSetName: jsii.String("stackSetName"), // the properties below are optional administrationRoleArn: jsii.String("administrationRoleArn"), autoDeployment: &autoDeploymentProperty{ enabled: jsii.Boolean(false), retainStacksOnAccountRemoval: jsii.Boolean(false), }, callAs: jsii.String("callAs"), capabilities: []*string{ jsii.String("capabilities"), }, description: jsii.String("description"), executionRoleName: jsii.String("executionRoleName"), managedExecution: managedExecution, operationPreferences: &operationPreferencesProperty{ failureToleranceCount: jsii.Number(123), failureTolerancePercentage: jsii.Number(123), maxConcurrentCount: jsii.Number(123), maxConcurrentPercentage: jsii.Number(123), regionConcurrencyType: jsii.String("regionConcurrencyType"), regionOrder: []*string{ jsii.String("regionOrder"), }, }, parameters: []interface{}{ ¶meterProperty{ parameterKey: jsii.String("parameterKey"), parameterValue: jsii.String("parameterValue"), }, }, stackInstancesGroup: []interface{}{ &stackInstancesProperty{ deploymentTargets: &deploymentTargetsProperty{ accountFilterType: jsii.String("accountFilterType"), accounts: []*string{ jsii.String("accounts"), }, organizationalUnitIds: []*string{ jsii.String("organizationalUnitIds"), }, }, regions: []*string{ jsii.String("regions"), }, // the properties below are optional parameterOverrides: []interface{}{ ¶meterProperty{ parameterKey: jsii.String("parameterKey"), parameterValue: jsii.String("parameterValue"), }, }, }, }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, templateBody: jsii.String("templateBody"), templateUrl: jsii.String("templateUrl"), })
func NewCfnStackSet ¶
func NewCfnStackSet(scope awscdk.Construct, id *string, props *CfnStackSetProps) CfnStackSet
Create a new `AWS::CloudFormation::StackSet`.
type CfnStackSetProps ¶
type CfnStackSetProps struct { // Describes how the IAM roles required for stack set operations are created. // // - With `SELF_MANAGED` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see [Grant Self-Managed Stack Set Permissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html) . // - With `SERVICE_MANAGED` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see [Grant Service-Managed Stack Set Permissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html) . // // *Allowed Values* : `SERVICE_MANAGED` | `SELF_MANAGED` // // > The `PermissionModel` property is required. PermissionModel *string `field:"required" json:"permissionModel" yaml:"permissionModel"` // The name to associate with the stack set. // // The name must be unique in the Region where you create your stack set. // // *Maximum* : `128` // // *Pattern* : `^[a-zA-Z][a-zA-Z0-9-]{0,127}$` // // > The `StackSetName` property is required. StackSetName *string `field:"required" json:"stackSetName" yaml:"stackSetName"` // The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. // // Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. // // Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see [Prerequisites: Granting Permissions for Stack Set Operations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html) in the *AWS CloudFormation User Guide* . // // *Minimum* : `20` // // *Maximum* : `2048`. AdministrationRoleArn *string `field:"optional" json:"administrationRoleArn" yaml:"administrationRoleArn"` // [ `Service-managed` permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). AutoDeployment interface{} `field:"optional" json:"autoDeployment" yaml:"autoDeployment"` // [Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account. // // By default, `SELF` is specified. Use `SELF` for stack sets with self-managed permissions. // // - To create a stack set with service-managed permissions while signed in to the management account, specify `SELF` . // - To create a stack set with service-managed permissions while signed in to a delegated administrator account, specify `DELEGATED_ADMIN` . // // Your AWS account must be registered as a delegated admin in the management account. For more information, see [Register a delegated administrator](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html) in the *AWS CloudFormation User Guide* . // // Stack sets with service-managed permissions are created in the management account, including stack sets that are created by delegated administrators. // // *Valid Values* : `SELF` | `DELEGATED_ADMIN`. CallAs *string `field:"optional" json:"callAs" yaml:"callAs"` // The capabilities that are allowed in the stack set. // // Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) . Capabilities *[]*string `field:"optional" json:"capabilities" yaml:"capabilities"` // A description of the stack set. // // *Minimum* : `1` // // *Maximum* : `1024`. Description *string `field:"optional" json:"description" yaml:"description"` // The name of the IAM execution role to use to create the stack set. // // If you don't specify an execution role, AWS CloudFormation uses the `AWSCloudFormationStackSetExecutionRole` role for the stack set operation. // // *Minimum* : `1` // // *Maximum* : `64` // // *Pattern* : `[a-zA-Z_0-9+=,.@-]+` ExecutionRoleName *string `field:"optional" json:"executionRoleName" yaml:"executionRoleName"` // Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. // // When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order. // // > If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting. // > // > You can't modify your stack set's execution configuration while there are running or queued operations for that stack set. // // When inactive (default), StackSets performs one operation at a time in request order. ManagedExecution interface{} `field:"optional" json:"managedExecution" yaml:"managedExecution"` // The user-specified preferences for how AWS CloudFormation performs a stack set operation. OperationPreferences interface{} `field:"optional" json:"operationPreferences" yaml:"operationPreferences"` // The input parameters for the stack set template. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // A group of stack instances with parameters in some specific accounts and Regions. StackInstancesGroup interface{} `field:"optional" json:"stackInstancesGroup" yaml:"stackInstancesGroup"` // The key-value pairs 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 *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. // // You must include either `TemplateURL` or `TemplateBody` in a StackSet, but you can't use both. Dynamic references in the `TemplateBody` may not work correctly in all cases. It's recommended to pass templates containing dynamic references through `TemplateUrl` instead. // // *Minimum* : `1` // // *Maximum* : `51200`. TemplateBody *string `field:"optional" json:"templateBody" yaml:"templateBody"` // Location of file containing the template body. // // The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. // // You must include either `TemplateURL` or `TemplateBody` in a StackSet, but you can't use both. // // *Minimum* : `1` // // *Maximum* : `1024`. TemplateUrl *string `field:"optional" json:"templateUrl" yaml:"templateUrl"` }
Properties for defining a `CfnStackSet`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var managedExecution interface{} cfnStackSetProps := &cfnStackSetProps{ permissionModel: jsii.String("permissionModel"), stackSetName: jsii.String("stackSetName"), // the properties below are optional administrationRoleArn: jsii.String("administrationRoleArn"), autoDeployment: &autoDeploymentProperty{ enabled: jsii.Boolean(false), retainStacksOnAccountRemoval: jsii.Boolean(false), }, callAs: jsii.String("callAs"), capabilities: []*string{ jsii.String("capabilities"), }, description: jsii.String("description"), executionRoleName: jsii.String("executionRoleName"), managedExecution: managedExecution, operationPreferences: &operationPreferencesProperty{ failureToleranceCount: jsii.Number(123), failureTolerancePercentage: jsii.Number(123), maxConcurrentCount: jsii.Number(123), maxConcurrentPercentage: jsii.Number(123), regionConcurrencyType: jsii.String("regionConcurrencyType"), regionOrder: []*string{ jsii.String("regionOrder"), }, }, parameters: []interface{}{ ¶meterProperty{ parameterKey: jsii.String("parameterKey"), parameterValue: jsii.String("parameterValue"), }, }, stackInstancesGroup: []interface{}{ &stackInstancesProperty{ deploymentTargets: &deploymentTargetsProperty{ accountFilterType: jsii.String("accountFilterType"), accounts: []*string{ jsii.String("accounts"), }, organizationalUnitIds: []*string{ jsii.String("organizationalUnitIds"), }, }, regions: []*string{ jsii.String("regions"), }, // the properties below are optional parameterOverrides: []interface{}{ ¶meterProperty{ parameterKey: jsii.String("parameterKey"), parameterValue: jsii.String("parameterValue"), }, }, }, }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, templateBody: jsii.String("templateBody"), templateUrl: jsii.String("templateUrl"), }
type CfnStackSet_AutoDeploymentProperty ¶
type CfnStackSet_AutoDeploymentProperty struct { // If set to `true` , StackSets automatically deploys additional stack instances to AWS Organizations accounts that are added to a target organization or organizational unit (OU) in the specified Regions. // // If an account is removed from a target organization or OU, StackSets deletes stack instances from the account in the specified Regions. Enabled interface{} `field:"optional" json:"enabled" yaml:"enabled"` // If set to `true` , stack resources are retained when an account is removed from a target organization or OU. // // If set to `false` , stack resources are deleted. Specify only if `Enabled` is set to `True` . RetainStacksOnAccountRemoval interface{} `field:"optional" json:"retainStacksOnAccountRemoval" yaml:"retainStacksOnAccountRemoval"` }
[ `Service-managed` permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organizational unit (OU).
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" autoDeploymentProperty := &autoDeploymentProperty{ enabled: jsii.Boolean(false), retainStacksOnAccountRemoval: jsii.Boolean(false), }
type CfnStackSet_DeploymentTargetsProperty ¶
type CfnStackSet_DeploymentTargetsProperty struct { // `CfnStackSet.DeploymentTargetsProperty.AccountFilterType`. AccountFilterType *string `field:"optional" json:"accountFilterType" yaml:"accountFilterType"` // The names of one or more AWS accounts for which you want to deploy stack set updates. // // *Pattern* : `^[0-9]{12}$`. Accounts *[]*string `field:"optional" json:"accounts" yaml:"accounts"` // The organization root ID or organizational unit (OU) IDs to which StackSets deploys. // // *Pattern* : `^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$`. OrganizationalUnitIds *[]*string `field:"optional" json:"organizationalUnitIds" yaml:"organizationalUnitIds"` }
The AWS OrganizationalUnitIds or Accounts for which to create stack instances in the specified Regions.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" deploymentTargetsProperty := &deploymentTargetsProperty{ accountFilterType: jsii.String("accountFilterType"), accounts: []*string{ jsii.String("accounts"), }, organizationalUnitIds: []*string{ jsii.String("organizationalUnitIds"), }, }
type CfnStackSet_ManagedExecutionProperty ¶
type CfnStackSet_ManagedExecutionProperty struct {
// `CfnStackSet.ManagedExecutionProperty.Active`.
Active interface{} `field:"optional" json:"active" yaml:"active"`
}
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" managedExecutionProperty := &managedExecutionProperty{ active: jsii.Boolean(false), }
type CfnStackSet_OperationPreferencesProperty ¶
type CfnStackSet_OperationPreferencesProperty struct { // The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. // // If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both). FailureToleranceCount *float64 `field:"optional" json:"failureToleranceCount" yaml:"failureToleranceCount"` // The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. // // If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions. // // When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number. // // Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both. FailureTolerancePercentage *float64 `field:"optional" json:"failureTolerancePercentage" yaml:"failureTolerancePercentage"` // The maximum number of accounts in which to perform this operation at one time. // // This is dependent on the value of `FailureToleranceCount` . `MaxConcurrentCount` is at most one more than the `FailureToleranceCount` . // // Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. // // Conditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both. MaxConcurrentCount *float64 `field:"optional" json:"maxConcurrentCount" yaml:"maxConcurrentCount"` // The maximum percentage of accounts in which to perform this operation at one time. // // When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. // // Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. // // Conditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both. MaxConcurrentPercentage *float64 `field:"optional" json:"maxConcurrentPercentage" yaml:"maxConcurrentPercentage"` // The concurrency type of deploying StackSets operations in Regions, could be in parallel or one Region at a time. // // *Allowed values* : `SEQUENTIAL` | `PARALLEL`. RegionConcurrencyType *string `field:"optional" json:"regionConcurrencyType" yaml:"regionConcurrencyType"` // The order of the Regions where you want to perform the stack operation. RegionOrder *[]*string `field:"optional" json:"regionOrder" yaml:"regionOrder"` }
The user-specified preferences for how AWS CloudFormation performs a stack set operation.
For more information on maximum concurrent accounts and failure tolerance, see [Stack set operation options](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" operationPreferencesProperty := &operationPreferencesProperty{ failureToleranceCount: jsii.Number(123), failureTolerancePercentage: jsii.Number(123), maxConcurrentCount: jsii.Number(123), maxConcurrentPercentage: jsii.Number(123), regionConcurrencyType: jsii.String("regionConcurrencyType"), regionOrder: []*string{ jsii.String("regionOrder"), }, }
type CfnStackSet_ParameterProperty ¶
type CfnStackSet_ParameterProperty struct { // The key associated with the parameter. // // If you don't specify a key and value for a particular parameter, AWS CloudFormation uses the default value that's specified in your template. ParameterKey *string `field:"required" json:"parameterKey" yaml:"parameterKey"` // The input value associated with the parameter. ParameterValue *string `field:"required" json:"parameterValue" yaml:"parameterValue"` }
The Parameter data type.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" parameterProperty := ¶meterProperty{ parameterKey: jsii.String("parameterKey"), parameterValue: jsii.String("parameterValue"), }
type CfnStackSet_StackInstancesProperty ¶
type CfnStackSet_StackInstancesProperty struct { // The AWS `OrganizationalUnitIds` or `Accounts` for which to create stack instances in the specified Regions. DeploymentTargets interface{} `field:"required" json:"deploymentTargets" yaml:"deploymentTargets"` // The names of one or more Regions where you want to create stack instances using the specified AWS accounts . Regions *[]*string `field:"required" json:"regions" yaml:"regions"` // A list of stack set parameters whose values you want to override in the selected stack instances. ParameterOverrides interface{} `field:"optional" json:"parameterOverrides" yaml:"parameterOverrides"` }
Stack instances in some specific accounts and Regions.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" stackInstancesProperty := &stackInstancesProperty{ deploymentTargets: &deploymentTargetsProperty{ accountFilterType: jsii.String("accountFilterType"), accounts: []*string{ jsii.String("accounts"), }, organizationalUnitIds: []*string{ jsii.String("organizationalUnitIds"), }, }, regions: []*string{ jsii.String("regions"), }, // the properties below are optional parameterOverrides: []interface{}{ ¶meterProperty{ parameterKey: jsii.String("parameterKey"), parameterValue: jsii.String("parameterValue"), }, }, }
type CfnTypeActivation ¶
type CfnTypeActivation interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Number (ARN) of the activated extension, in this account and Region. AttrArn() *string // Whether to automatically update the extension in this account and region when a new *minor* version is published by the extension publisher. // // Major versions released by the publisher must be manually updated. // // The default is `true` . AutoUpdate() interface{} SetAutoUpdate(val interface{}) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The name of the IAM execution role to use to activate the extension. ExecutionRoleArn() *string SetExecutionRoleArn(val *string) // Specifies logging configuration information for an extension. LoggingConfig() interface{} SetLoggingConfig(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The major version of this extension you want to activate, if multiple major versions are available. // // The default is the latest major version. CloudFormation uses the latest available *minor* version of the major version selected. // // You can specify `MajorVersion` or `VersionBump` , but not both. MajorVersion() *string SetMajorVersion(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // The Amazon Resource Number (ARN) of the public extension. // // Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` . PublicTypeArn() *string SetPublicTypeArn(val *string) // The ID of the extension publisher. // // Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` . PublisherId() *string SetPublisherId(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The extension type. // // Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` . Type() *string SetType(val *string) // The name of the extension. // // Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` . TypeName() *string SetTypeName(val *string) // An alias to assign to the public extension, in this account and region. // // If you specify an alias for the extension, CloudFormation treats the alias as the extension type name within this account and region. You must use the alias to refer to the extension in your templates, API calls, and CloudFormation console. // // An extension alias must be unique within a given account and region. You can activate the same public resource multiple times in the same account and region, using different type name aliases. TypeNameAlias() *string SetTypeNameAlias(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Manually updates a previously-activated type to a new major or minor version, if available. // // You can also use this parameter to update the value of `AutoUpdate` . // // - `MAJOR` : CloudFormation updates the extension to the newest major version, if one is available. // - `MINOR` : CloudFormation updates the extension to the newest minor version, if one is available. VersionBump() *string SetVersionBump(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::TypeActivation`.
Activates a public third-party extension, making it available for use in stack templates. For more information, see [Using public extensions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html) in the *AWS CloudFormation User Guide* .
Once you have activated a public third-party extension in your account and region, use [SetTypeConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_SetTypeConfiguration.html) to specify configuration properties for the extension. For more information, see [Configuring extensions at the account level](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-register.html#registry-set-configuration) in the *CloudFormation User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnTypeActivation := awscdk.Aws_cloudformation.NewCfnTypeActivation(this, jsii.String("MyCfnTypeActivation"), &cfnTypeActivationProps{ autoUpdate: jsii.Boolean(false), executionRoleArn: jsii.String("executionRoleArn"), loggingConfig: &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }, majorVersion: jsii.String("majorVersion"), publicTypeArn: jsii.String("publicTypeArn"), publisherId: jsii.String("publisherId"), type: jsii.String("type"), typeName: jsii.String("typeName"), typeNameAlias: jsii.String("typeNameAlias"), versionBump: jsii.String("versionBump"), })
func NewCfnTypeActivation ¶
func NewCfnTypeActivation(scope awscdk.Construct, id *string, props *CfnTypeActivationProps) CfnTypeActivation
Create a new `AWS::CloudFormation::TypeActivation`.
type CfnTypeActivationProps ¶
type CfnTypeActivationProps struct { // Whether to automatically update the extension in this account and region when a new *minor* version is published by the extension publisher. // // Major versions released by the publisher must be manually updated. // // The default is `true` . AutoUpdate interface{} `field:"optional" json:"autoUpdate" yaml:"autoUpdate"` // The name of the IAM execution role to use to activate the extension. ExecutionRoleArn *string `field:"optional" json:"executionRoleArn" yaml:"executionRoleArn"` // Specifies logging configuration information for an extension. LoggingConfig interface{} `field:"optional" json:"loggingConfig" yaml:"loggingConfig"` // The major version of this extension you want to activate, if multiple major versions are available. // // The default is the latest major version. CloudFormation uses the latest available *minor* version of the major version selected. // // You can specify `MajorVersion` or `VersionBump` , but not both. MajorVersion *string `field:"optional" json:"majorVersion" yaml:"majorVersion"` // The Amazon Resource Number (ARN) of the public extension. // // Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` . PublicTypeArn *string `field:"optional" json:"publicTypeArn" yaml:"publicTypeArn"` // The ID of the extension publisher. // // Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` . PublisherId *string `field:"optional" json:"publisherId" yaml:"publisherId"` // The extension type. // // Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` . Type *string `field:"optional" json:"type" yaml:"type"` // The name of the extension. // // Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` . TypeName *string `field:"optional" json:"typeName" yaml:"typeName"` // An alias to assign to the public extension, in this account and region. // // If you specify an alias for the extension, CloudFormation treats the alias as the extension type name within this account and region. You must use the alias to refer to the extension in your templates, API calls, and CloudFormation console. // // An extension alias must be unique within a given account and region. You can activate the same public resource multiple times in the same account and region, using different type name aliases. TypeNameAlias *string `field:"optional" json:"typeNameAlias" yaml:"typeNameAlias"` // Manually updates a previously-activated type to a new major or minor version, if available. // // You can also use this parameter to update the value of `AutoUpdate` . // // - `MAJOR` : CloudFormation updates the extension to the newest major version, if one is available. // - `MINOR` : CloudFormation updates the extension to the newest minor version, if one is available. VersionBump *string `field:"optional" json:"versionBump" yaml:"versionBump"` }
Properties for defining a `CfnTypeActivation`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnTypeActivationProps := &cfnTypeActivationProps{ autoUpdate: jsii.Boolean(false), executionRoleArn: jsii.String("executionRoleArn"), loggingConfig: &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }, majorVersion: jsii.String("majorVersion"), publicTypeArn: jsii.String("publicTypeArn"), publisherId: jsii.String("publisherId"), type: jsii.String("type"), typeName: jsii.String("typeName"), typeNameAlias: jsii.String("typeNameAlias"), versionBump: jsii.String("versionBump"), }
type CfnTypeActivation_LoggingConfigProperty ¶
type CfnTypeActivation_LoggingConfigProperty struct { // The Amazon CloudWatch Logs group to which CloudFormation sends error logging information when invoking the extension's handlers. LogGroupName *string `field:"optional" json:"logGroupName" yaml:"logGroupName"` // The Amazon Resource Name (ARN) of the role that CloudFormation should assume when sending log entries to CloudWatch Logs. LogRoleArn *string `field:"optional" json:"logRoleArn" yaml:"logRoleArn"` }
Contains logging configuration information for an extension.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" loggingConfigProperty := &loggingConfigProperty{ logGroupName: jsii.String("logGroupName"), logRoleArn: jsii.String("logRoleArn"), }
type CfnWaitCondition ¶
type CfnWaitCondition interface { awscdk.CfnResource awscdk.IInspectable // A JSON object that contains the `UniqueId` and `Data` values from the wait condition signal(s) for the specified wait condition. // // For more information about wait condition signals, see [Wait condition signal JSON format](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-waitcondition.html#using-cfn-waitcondition-signaljson) . // // Example return value for a wait condition with 2 signals: // // `{ "Signal1" : "Step 1 complete." , "Signal2" : "Step 2 complete." }` AttrData() awscdk.IResolvable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // The number of success signals that CloudFormation must receive before it continues the stack creation process. // // When the wait condition receives the requisite number of success signals, CloudFormation resumes the creation of the stack. If the wait condition doesn't receive the specified number of success signals before the Timeout period expires, CloudFormation assumes that the wait condition has failed and rolls the stack back. // // Updates aren't supported. Count() *float64 SetCount(val *float64) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A reference to the wait condition handle used to signal this wait condition. // // Use the `Ref` intrinsic function to specify an [AWS::CloudFormation::WaitConditionHandle](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html) resource. // // Anytime you add a WaitCondition resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. // // Updates aren't supported. Handle() *string SetHandle(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The length of time (in seconds) to wait for the number of signals that the `Count` property specifies. // // `Timeout` is a minimum-bound property, meaning the timeout occurs no sooner than the time you specify, but can occur shortly thereafter. The maximum time that can be specified for this property is 12 hours (43200 seconds). // // Updates aren't supported. Timeout() *string SetTimeout(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::WaitCondition`.
> For Amazon EC2 and Auto Scaling resources, we recommend that you use a `CreationPolicy` attribute instead of wait conditions. Add a CreationPolicy attribute to those resources, and use the cfn-signal helper script to signal when an instance creation process has completed successfully.
You can use a wait condition for situations like the following:
- To coordinate stack resource creation with configuration actions that are external to the stack creation. - To track the status of a configuration process.
For these situations, we recommend that you associate a [CreationPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html) attribute with the wait condition so that you don't have to use a wait condition handle. For more information and an example, see [Creating wait conditions in a template](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-waitcondition.html) . If you use a CreationPolicy with a wait condition, don't specify any of the wait condition's properties.
> If you use the [VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) feature, resources in the VPC that respond to wait conditions must have access to CloudFormation , specific Amazon Simple Storage Service ( Amazon S3 ) buckets. Resources must send wait condition responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see [Setting up VPC endpoints for AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-vpce-bucketnames.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnWaitCondition := awscdk.Aws_cloudformation.NewCfnWaitCondition(this, jsii.String("MyCfnWaitCondition"), &cfnWaitConditionProps{ count: jsii.Number(123), handle: jsii.String("handle"), timeout: jsii.String("timeout"), })
func NewCfnWaitCondition ¶
func NewCfnWaitCondition(scope awscdk.Construct, id *string, props *CfnWaitConditionProps) CfnWaitCondition
Create a new `AWS::CloudFormation::WaitCondition`.
type CfnWaitConditionHandle ¶
type CfnWaitConditionHandle interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions // Experimental. CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() // Experimental. RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::CloudFormation::WaitConditionHandle`.
> For Amazon EC2 and Auto Scaling resources, we recommend that you use a `CreationPolicy` attribute instead of wait conditions. Add a `CreationPolicy` attribute to those resources, and use the cfn-signal helper script to signal when an instance creation process has completed successfully. > > For more information, see [Deploying applications on Amazon EC2 with AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/deploying.applications.html) .
The `AWS::CloudFormation::WaitConditionHandle` type has no properties. When you reference the `WaitConditionHandle` resource by using the Ref function, AWS CloudFormation returns a presigned URL. You pass this URL to applications or scripts that are running on your Amazon EC2 instances to send signals to that URL. An associated `AWS::CloudFormation::WaitCondition` resource checks the URL for the required number of success signals or for a failure signal.
> Anytime you add a `WaitCondition` resource during a stack update or update a resource with a wait condition, you must associate the wait condition with a new `WaitConditionHandle` resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. > Updates aren't supported for this resource.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnWaitConditionHandle := awscdk.Aws_cloudformation.NewCfnWaitConditionHandle(this, jsii.String("MyCfnWaitConditionHandle"))
func NewCfnWaitConditionHandle ¶
func NewCfnWaitConditionHandle(scope awscdk.Construct, id *string) CfnWaitConditionHandle
Create a new `AWS::CloudFormation::WaitConditionHandle`.
type CfnWaitConditionProps ¶
type CfnWaitConditionProps struct { // The number of success signals that CloudFormation must receive before it continues the stack creation process. // // When the wait condition receives the requisite number of success signals, CloudFormation resumes the creation of the stack. If the wait condition doesn't receive the specified number of success signals before the Timeout period expires, CloudFormation assumes that the wait condition has failed and rolls the stack back. // // Updates aren't supported. Count *float64 `field:"optional" json:"count" yaml:"count"` // A reference to the wait condition handle used to signal this wait condition. // // Use the `Ref` intrinsic function to specify an [AWS::CloudFormation::WaitConditionHandle](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html) resource. // // Anytime you add a WaitCondition resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. // // Updates aren't supported. Handle *string `field:"optional" json:"handle" yaml:"handle"` // The length of time (in seconds) to wait for the number of signals that the `Count` property specifies. // // `Timeout` is a minimum-bound property, meaning the timeout occurs no sooner than the time you specify, but can occur shortly thereafter. The maximum time that can be specified for this property is 12 hours (43200 seconds). // // Updates aren't supported. Timeout *string `field:"optional" json:"timeout" yaml:"timeout"` }
Properties for defining a `CfnWaitCondition`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnWaitConditionProps := &cfnWaitConditionProps{ count: jsii.Number(123), handle: jsii.String("handle"), timeout: jsii.String("timeout"), }
type CloudFormationCapabilities ¶
type CloudFormationCapabilities string
Capabilities that affect whether CloudFormation is allowed to change IAM resources. Deprecated: use `core.CfnCapabilities`
const ( // No IAM Capabilities. // // Pass this capability if you wish to block the creation IAM resources. // Deprecated: use `core.CfnCapabilities` CloudFormationCapabilities_NONE CloudFormationCapabilities = "NONE" // Capability to create anonymous IAM resources. // // Pass this capability if you're only creating anonymous resources. // Deprecated: use `core.CfnCapabilities` CloudFormationCapabilities_ANONYMOUS_IAM CloudFormationCapabilities = "ANONYMOUS_IAM" // Capability to create named IAM resources. // // Pass this capability if you're creating IAM resources that have physical // names. // // `CloudFormationCapabilities.NamedIAM` implies `CloudFormationCapabilities.IAM`; you don't have to pass both. // Deprecated: use `core.CfnCapabilities` CloudFormationCapabilities_NAMED_IAM CloudFormationCapabilities = "NAMED_IAM" // Capability to run CloudFormation macros. // // Pass this capability if your template includes macros, for example AWS::Include or AWS::Serverless. // Deprecated: use `core.CfnCapabilities` CloudFormationCapabilities_AUTO_EXPAND CloudFormationCapabilities = "AUTO_EXPAND" )
type CustomResource
deprecated
type CustomResource interface { awscdk.CustomResource // The environment this resource belongs to. // // For resources that are created and managed by the CDK // (generally, those created by creating new class instances like Role, Bucket, etc.), // this is always the same as the environment of the stack they belong to; // however, for imported resources // (those obtained from static methods like fromRoleArn, fromBucketName, etc.), // that might be different than the stack they were imported into. // Deprecated: use `core.CustomResource` Env() *awscdk.ResourceEnvironment // The construct tree node associated with this construct. // Deprecated: use `core.CustomResource` Node() awscdk.ConstructNode // Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource. // // This value will resolve to one of the following: // - a concrete value (e.g. `"my-awesome-bucket"`) // - `undefined`, when a name should be generated by CloudFormation // - a concrete name generated automatically during synthesis, in // cross-environment scenarios. // Deprecated: use `core.CustomResource` PhysicalName() *string // The physical name of this custom resource. // Deprecated: use `core.CustomResource` Ref() *string // The stack in which this resource is defined. // Deprecated: use `core.CustomResource` Stack() awscdk.Stack // Apply the given removal policy to this resource. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). // Deprecated: use `core.CustomResource` ApplyRemovalPolicy(policy awscdk.RemovalPolicy) // Deprecated: use `core.CustomResource` GeneratePhysicalName() *string // Returns the value of an attribute of the custom resource of an arbitrary type. // // Attributes are returned from the custom resource provider through the // `Data` map where the key is the attribute name. // // Returns: a token for `Fn::GetAtt`. Use `Token.asXxx` to encode the returned `Reference` as a specific type or // use the convenience `getAttString` for string attributes. // Deprecated: use `core.CustomResource` GetAtt(attributeName *string) awscdk.Reference // Returns the value of an attribute of the custom resource of type string. // // Attributes are returned from the custom resource provider through the // `Data` map where the key is the attribute name. // // Returns: a token for `Fn::GetAtt` encoded as a string. // Deprecated: use `core.CustomResource` GetAttString(attributeName *string) *string // Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`). // // Normally, this token will resolve to `arnAttr`, but if the resource is // referenced across environments, `arnComponents` will be used to synthesize // a concrete ARN with the resource's physical name. Make sure to reference // `this.physicalName` in `arnComponents`. // Deprecated: use `core.CustomResource` GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string // Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`). // // Normally, this token will resolve to `nameAttr`, but if the resource is // referenced across environments, it will be resolved to `this.physicalName`, // which will be a concrete name. // Deprecated: use `core.CustomResource` GetResourceNameAttribute(nameAttr *string) *string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Deprecated: use `core.CustomResource` OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Deprecated: use `core.CustomResource` OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Deprecated: use `core.CustomResource` OnValidate() *[]*string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Deprecated: use `core.CustomResource` Prepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Deprecated: use `core.CustomResource` Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // Deprecated: use `core.CustomResource` ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Deprecated: use `core.CustomResource` Validate() *[]*string }
Deprecated.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import monocdk "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var customResourceProvider customResourceProvider var properties interface{} customResource := awscdk.Aws_cloudformation.NewCustomResource(this, jsii.String("MyCustomResource"), &customResourceProps{ provider: customResourceProvider, // the properties below are optional properties: map[string]interface{}{ "propertiesKey": properties, }, removalPolicy: monocdk.removalPolicy_DESTROY, resourceType: jsii.String("resourceType"), })
Deprecated: use `core.CustomResource`
func NewCustomResource
deprecated
func NewCustomResource(scope awscdk.Construct, id *string, props *CustomResourceProps) CustomResource
Deprecated: use `core.CustomResource`
type CustomResourceProps
deprecated
type CustomResourceProps struct { // The provider which implements the custom resource. // // You can implement a provider by listening to raw AWS CloudFormation events // through an SNS topic or an AWS Lambda function or use the CDK's custom // [resource provider framework] which makes it easier to implement robust // providers. // // [resource provider framework]: https://docs.aws.amazon.com/cdk/api/latest/docs/custom-resources-readme.html // // “`ts // import * as custom_resources from '@aws-cdk/custom-resources'; // import * as lambda from '@aws-cdk/aws-lambda'; // import { Stack } from '@aws-cdk/core'; // declare const myOnEventLambda: lambda.Function; // declare const myIsCompleteLambda: lambda.Function; // const stack = new Stack(); // // const provider = new custom_resources.Provider(stack, 'myProvider', { // onEventHandler: myOnEventLambda, // isCompleteHandler: myIsCompleteLambda, // optional // }); // “` // // “`ts // import * as cloudformation from '@aws-cdk/aws-cloudformation'; // import * as lambda from '@aws-cdk/aws-lambda'; // declare const myFunction: lambda.Function; // // // invoke an AWS Lambda function when a lifecycle event occurs: // const provider = cloudformation.CustomResourceProvider.fromLambda(myFunction); // “` // // “`ts // import * as cloudformation from '@aws-cdk/aws-cloudformation'; // import * as sns from '@aws-cdk/aws-sns'; // declare const myTopic: sns.Topic; // // // publish lifecycle events to an SNS topic: // const provider = cloudformation.CustomResourceProvider.fromTopic(myTopic); // “`. // Deprecated: use `core.CustomResourceProps` Provider ICustomResourceProvider `field:"required" json:"provider" yaml:"provider"` // Properties to pass to the Lambda. // Deprecated: use `core.CustomResourceProps` Properties *map[string]interface{} `field:"optional" json:"properties" yaml:"properties"` // The policy to apply when this resource is removed from the application. // Deprecated: use `core.CustomResourceProps` RemovalPolicy awscdk.RemovalPolicy `field:"optional" json:"removalPolicy" yaml:"removalPolicy"` // For custom resources, you can specify AWS::CloudFormation::CustomResource (the default) as the resource type, or you can specify your own resource type name. // // For example, you can use "Custom::MyCustomResourceTypeName". // // Custom resource type names must begin with "Custom::" and can include // alphanumeric characters and the following characters: _@-. You can specify // a custom resource type name up to a maximum length of 60 characters. You // cannot change the type during an update. // // Using your own resource type names helps you quickly differentiate the // types of custom resources in your stack. For example, if you had two custom // resources that conduct two different ping tests, you could name their type // as Custom::PingTester to make them easily identifiable as ping testers // (instead of using AWS::CloudFormation::CustomResource). // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html#aws-cfn-resource-type-name // // Deprecated: use `core.CustomResourceProps` ResourceType *string `field:"optional" json:"resourceType" yaml:"resourceType"` }
Properties to provide a Lambda-backed custom resource.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import monocdk "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var customResourceProvider customResourceProvider var properties interface{} customResourceProps := &customResourceProps{ provider: customResourceProvider, // the properties below are optional properties: map[string]interface{}{ "propertiesKey": properties, }, removalPolicy: monocdk.removalPolicy_DESTROY, resourceType: jsii.String("resourceType"), }
Deprecated: use `core.CustomResourceProps`
type CustomResourceProvider
deprecated
type CustomResourceProvider interface { ICustomResourceProvider // the ServiceToken which contains the ARN for this provider. // Deprecated: use core.CustomResource instead ServiceToken() *string // Called when this provider is used by a `CustomResource`. // Deprecated: use core.CustomResource instead Bind(_arg awscdk.Construct) *CustomResourceProviderConfig }
Represents a provider for an AWS CloudFormation custom resources.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var function_ function customResourceProvider := awscdk.Aws_cloudformation.customResourceProvider.fromLambda(function_)
Deprecated: use core.CustomResource instead
func CustomResourceProvider_FromLambda ¶
func CustomResourceProvider_FromLambda(handler awslambda.IFunction) CustomResourceProvider
The Lambda provider that implements this custom resource.
We recommend using a lambda.SingletonFunction for this. Deprecated: use core.CustomResource instead
func CustomResourceProvider_FromTopic ¶
func CustomResourceProvider_FromTopic(topic awssns.ITopic) CustomResourceProvider
The SNS Topic for the provider that implements this custom resource. Deprecated: use core.CustomResource instead
func CustomResourceProvider_Lambda ¶
func CustomResourceProvider_Lambda(handler awslambda.IFunction) CustomResourceProvider
Use AWS Lambda as a provider. Deprecated: use `fromLambda`.
func CustomResourceProvider_Topic ¶
func CustomResourceProvider_Topic(topic awssns.ITopic) CustomResourceProvider
Use an SNS topic as the provider. Deprecated: use `fromTopic`.
type CustomResourceProviderConfig
deprecated
type CustomResourceProviderConfig struct { // The ARN of the SNS topic or the AWS Lambda function which implements this provider. // Deprecated: used in {@link ICustomResourceProvider} which is now deprecated. ServiceToken *string `field:"required" json:"serviceToken" yaml:"serviceToken"` }
Configuration options for custom resource providers.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" customResourceProviderConfig := &customResourceProviderConfig{ serviceToken: jsii.String("serviceToken"), }
Deprecated: used in {@link ICustomResourceProvider} which is now deprecated.
type ICustomResourceProvider ¶
type ICustomResourceProvider interface { // Called when this provider is used by a `CustomResource`. // // Returns: provider configuration. // Deprecated: use `core.ICustomResourceProvider` Bind(scope awscdk.Construct) *CustomResourceProviderConfig }
Represents a provider for an AWS CloudFormation custom resources. Deprecated: use `core.ICustomResourceProvider`
type NestedStack
deprecated
type NestedStack interface { awscdk.NestedStack // The AWS account into which this stack will be deployed. // // This value is resolved according to the following rules: // // 1. The value provided to `env.account` when the stack is defined. This can // either be a concerete account (e.g. `585695031111`) or the // `Aws.accountId` token. // 3. `Aws.accountId`, which represents the CloudFormation intrinsic reference // `{ "Ref": "AWS::AccountId" }` encoded as a string token. // // Preferably, you should use the return value as an opaque string and not // attempt to parse it to implement your logic. If you do, you must first // check that it is a concerete value an not an unresolved token. If this // value is an unresolved token (`Token.isUnresolved(stack.account)` returns // `true`), this implies that the user wishes that this stack will synthesize // into a **account-agnostic template**. In this case, your code should either // fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or // implement some other region-agnostic behavior. // Deprecated: use core.NestedStack instead Account() *string // The ID of the cloud assembly artifact for this stack. // Deprecated: use core.NestedStack instead ArtifactId() *string // Returns the list of AZs that are available in the AWS environment (account/region) associated with this stack. // // If the stack is environment-agnostic (either account and/or region are // tokens), this property will return an array with 2 tokens that will resolve // at deploy-time to the first two availability zones returned from CloudFormation's // `Fn::GetAZs` intrinsic function. // // If they are not available in the context, returns a set of dummy values and // reports them as missing, and let the CLI resolve them by calling EC2 // `DescribeAvailabilityZones` on the target environment. // // To specify a different strategy for selecting availability zones override this method. // Deprecated: use core.NestedStack instead AvailabilityZones() *[]*string // Indicates whether the stack requires bundling or not. // Deprecated: use core.NestedStack instead BundlingRequired() *bool // Return the stacks this stack depends on. // Deprecated: use core.NestedStack instead Dependencies() *[]awscdk.Stack // The environment coordinates in which this stack is deployed. // // In the form // `aws://account/region`. Use `stack.account` and `stack.region` to obtain // the specific values, no need to parse. // // You can use this value to determine if two stacks are targeting the same // environment. // // If either `stack.account` or `stack.region` are not concrete values (e.g. // `Aws.account` or `Aws.region`) the special strings `unknown-account` and/or // `unknown-region` will be used respectively to indicate this stack is // region/account-agnostic. // Deprecated: use core.NestedStack instead Environment() *string // Indicates if this is a nested stack, in which case `parentStack` will include a reference to it's parent. // Deprecated: use core.NestedStack instead Nested() *bool // If this is a nested stack, returns it's parent stack. // Deprecated: use core.NestedStack instead NestedStackParent() awscdk.Stack // If this is a nested stack, this represents its `AWS::CloudFormation::Stack` resource. // // `undefined` for top-level (non-nested) stacks. // Deprecated: use core.NestedStack instead NestedStackResource() awscdk.CfnResource // The construct tree node associated with this construct. // Deprecated: use core.NestedStack instead Node() awscdk.ConstructNode // Returns the list of notification Amazon Resource Names (ARNs) for the current stack. // Deprecated: use core.NestedStack instead NotificationArns() *[]*string // Returns the parent of a nested stack. // Deprecated: use `nestedStackParent`. ParentStack() awscdk.Stack // The partition in which this stack is defined. // Deprecated: use core.NestedStack instead Partition() *string // The AWS region into which this stack will be deployed (e.g. `us-west-2`). // // This value is resolved according to the following rules: // // 1. The value provided to `env.region` when the stack is defined. This can // either be a concerete region (e.g. `us-west-2`) or the `Aws.region` // token. // 3. `Aws.region`, which is represents the CloudFormation intrinsic reference // `{ "Ref": "AWS::Region" }` encoded as a string token. // // Preferably, you should use the return value as an opaque string and not // attempt to parse it to implement your logic. If you do, you must first // check that it is a concerete value an not an unresolved token. If this // value is an unresolved token (`Token.isUnresolved(stack.region)` returns // `true`), this implies that the user wishes that this stack will synthesize // into a **region-agnostic template**. In this case, your code should either // fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or // implement some other region-agnostic behavior. // Deprecated: use core.NestedStack instead Region() *string // An attribute that represents the ID of the stack. // // This is a context aware attribute: // - If this is referenced from the parent stack, it will return `{ "Ref": "LogicalIdOfNestedStackResource" }`. // - If this is referenced from the context of the nested stack, it will return `{ "Ref": "AWS::StackId" }` // // Example value: `arn:aws:cloudformation:us-east-2:123456789012:stack/mystack-mynestedstack-sggfrhxhum7w/f449b250-b969-11e0-a185-5081d0136786`. // Deprecated: use core.NestedStack instead StackId() *string // An attribute that represents the name of the nested stack. // // This is a context aware attribute: // - If this is referenced from the parent stack, it will return a token that parses the name from the stack ID. // - If this is referenced from the context of the nested stack, it will return `{ "Ref": "AWS::StackName" }` // // Example value: `mystack-mynestedstack-sggfrhxhum7w`. // Deprecated: use core.NestedStack instead StackName() *string // Synthesis method for this stack. // Deprecated: use core.NestedStack instead Synthesizer() awscdk.IStackSynthesizer // Tags to be applied to the stack. // Deprecated: use core.NestedStack instead Tags() awscdk.TagManager // The name of the CloudFormation template file emitted to the output directory during synthesis. // // Example value: `MyStack.template.json` // Deprecated: use core.NestedStack instead TemplateFile() *string // Options for CloudFormation template (like version, transform, description). // Deprecated: use core.NestedStack instead TemplateOptions() awscdk.ITemplateOptions // Whether termination protection is enabled for this stack. // Deprecated: use core.NestedStack instead TerminationProtection() *bool // The Amazon domain suffix for the region in which this stack is defined. // Deprecated: use core.NestedStack instead UrlSuffix() *string // Add a dependency between this stack and another stack. // // This can be used to define dependencies between any two stacks within an // app, and also supports nested stacks. // Deprecated: use core.NestedStack instead AddDependency(target awscdk.Stack, reason *string) // Register a docker image asset on this Stack. // Deprecated: Use `stack.synthesizer.addDockerImageAsset()` if you are calling, // and a different `IStackSynthesizer` class if you are implementing. AddDockerImageAsset(asset *awscdk.DockerImageAssetSource) *awscdk.DockerImageAssetLocation // Register a file asset on this Stack. // Deprecated: Use `stack.synthesizer.addFileAsset()` if you are calling, // and a different IStackSynthesizer class if you are implementing. AddFileAsset(asset *awscdk.FileAssetSource) *awscdk.FileAssetLocation // Add a Transform to this stack. A Transform is a macro that AWS CloudFormation uses to process your template. // // Duplicate values are removed when stack is synthesized. // // Example: // declare const stack: Stack; // // stack.addTransform('AWS::Serverless-2016-10-31') // // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html // // Deprecated: use core.NestedStack instead AddTransform(transform *string) // Returns the naming scheme used to allocate logical IDs. // // By default, uses // the `HashedAddressingScheme` but this method can be overridden to customize // this behavior. // // In order to make sure logical IDs are unique and stable, we hash the resource // construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as // a suffix to the path components joined without a separator (CloudFormation // IDs only allow alphanumeric characters). // // The result will be: // // <path.join(”)><md5(path.join('/')> // "human" "hash" // // If the "human" part of the ID exceeds 240 characters, we simply trim it so // the total ID doesn't exceed CloudFormation's 255 character limit. // // We only take 8 characters from the md5 hash (0.000005 chance of collision). // // Special cases: // // - If the path only contains a single component (i.e. it's a top-level // resource), we won't add the hash to it. The hash is not needed for // disamiguation and also, it allows for a more straightforward migration an // existing CloudFormation template to a CDK stack without logical ID changes // (or renames). // - For aesthetic reasons, if the last components of the path are the same // (i.e. `L1/L2/Pipeline/Pipeline`), they will be de-duplicated to make the // resulting human portion of the ID more pleasing: `L1L2Pipeline<HASH>` // instead of `L1L2PipelinePipeline<HASH>` // - If a component is named "Default" it will be omitted from the path. This // allows refactoring higher level abstractions around constructs without affecting // the IDs of already deployed resources. // - If a component is named "Resource" it will be omitted from the user-visible // path, but included in the hash. This reduces visual noise in the human readable // part of the identifier. // Deprecated: use core.NestedStack instead AllocateLogicalId(cfnElement awscdk.CfnElement) *string // Create a CloudFormation Export for a value. // // Returns a string representing the corresponding `Fn.importValue()` // expression for this Export. You can control the name for the export by // passing the `name` option. // // If you don't supply a value for `name`, the value you're exporting must be // a Resource attribute (for example: `bucket.bucketName`) and it will be // given the same name as the automatic cross-stack reference that would be created // if you used the attribute in another Stack. // // One of the uses for this method is to *remove* the relationship between // two Stacks established by automatic cross-stack references. It will // temporarily ensure that the CloudFormation Export still exists while you // remove the reference from the consuming stack. After that, you can remove // the resource and the manual export. // // ## Example // // Here is how the process works. Let's say there are two stacks, // `producerStack` and `consumerStack`, and `producerStack` has a bucket // called `bucket`, which is referenced by `consumerStack` (perhaps because // an AWS Lambda Function writes into it, or something like that). // // It is not safe to remove `producerStack.bucket` because as the bucket is being // deleted, `consumerStack` might still be using it. // // Instead, the process takes two deployments: // // ### Deployment 1: break the relationship // // - Make sure `consumerStack` no longer references `bucket.bucketName` (maybe the consumer // stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just // remove the Lambda Function altogether). // - In the `ProducerStack` class, call `this.exportValue(this.bucket.bucketName)`. This // will make sure the CloudFormation Export continues to exist while the relationship // between the two stacks is being broken. // - Deploy (this will effectively only change the `consumerStack`, but it's safe to deploy both). // // ### Deployment 2: remove the bucket resource // // - You are now free to remove the `bucket` resource from `producerStack`. // - Don't forget to remove the `exportValue()` call as well. // - Deploy again (this time only the `producerStack` will be changed -- the bucket will be deleted). // Deprecated: use core.NestedStack instead ExportValue(exportedValue interface{}, options *awscdk.ExportValueOptions) *string // Creates an ARN from components. // // If `partition`, `region` or `account` are not specified, the stack's // partition, region and account will be used. // // If any component is the empty string, an empty string will be inserted // into the generated ARN at the location that component corresponds to. // // The ARN will be formatted as follows: // // arn:{partition}:{service}:{region}:{account}:{resource}{sep}}{resource-name} // // The required ARN pieces that are omitted will be taken from the stack that // the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope // can be 'undefined'. // Deprecated: use core.NestedStack instead FormatArn(components *awscdk.ArnComponents) *string // Allocates a stack-unique CloudFormation-compatible logical identity for a specific resource. // // This method is called when a `CfnElement` is created and used to render the // initial logical identity of resources. Logical ID renames are applied at // this stage. // // This method uses the protected method `allocateLogicalId` to render the // logical ID for an element. To modify the naming scheme, extend the `Stack` // class and override this method. // Deprecated: use core.NestedStack instead GetLogicalId(element awscdk.CfnElement) *string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Deprecated: use core.NestedStack instead OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Deprecated: use core.NestedStack instead OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Deprecated: use core.NestedStack instead OnValidate() *[]*string // Given an ARN, parses it and returns components. // // IF THE ARN IS A CONCRETE STRING... // // ...it will be parsed and validated. The separator (`sep`) will be set to '/' // if the 6th component includes a '/', in which case, `resource` will be set // to the value before the '/' and `resourceName` will be the rest. In case // there is no '/', `resource` will be set to the 6th components and // `resourceName` will be set to the rest of the string. // // IF THE ARN IS A TOKEN... // // ...it cannot be validated, since we don't have the actual value yet at the // time of this function call. You will have to supply `sepIfToken` and // whether or not ARNs of the expected format usually have resource names // in order to parse it properly. The resulting `ArnComponents` object will // contain tokens for the subexpressions of the ARN, not string literals. // // If the resource name could possibly contain the separator char, the actual // resource name cannot be properly parsed. This only occurs if the separator // char is '/', and happens for example for S3 object ARNs, IAM Role ARNs, // IAM OIDC Provider ARNs, etc. To properly extract the resource name from a // Tokenized ARN, you must know the resource type and call // `Arn.extractResourceName`. // // Returns: an ArnComponents object which allows access to the various // components of the ARN. // Deprecated: use splitArn instead. ParseArn(arn *string, sepIfToken *string, hasName *bool) *awscdk.ArnComponents // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Deprecated: use core.NestedStack instead Prepare() // Deprecated. // // Returns: reference itself without any change. // See: https://github.com/aws/aws-cdk/pull/7187 // // Deprecated: cross reference handling has been moved to `App.prepare()`. PrepareCrossReference(_sourceStack awscdk.Stack, reference awscdk.Reference) awscdk.IResolvable // Look up a fact value for the given fact for the region of this stack. // // Will return a definite value only if the region of the current stack is resolved. // If not, a lookup map will be added to the stack and the lookup will be done at // CDK deployment time. // // What regions will be included in the lookup map is controlled by the // `@aws-cdk/core:target-partitions` context value: it must be set to a list // of partitions, and only regions from the given partitions will be included. // If no such context key is set, all regions will be included. // // This function is intended to be used by construct library authors. Application // builders can rely on the abstractions offered by construct libraries and do // not have to worry about regional facts. // // If `defaultValue` is not given, it is an error if the fact is unknown for // the given region. // Deprecated: use core.NestedStack instead RegionalFact(factName *string, defaultValue *string) *string // Rename a generated logical identities. // // To modify the naming scheme strategy, extend the `Stack` class and // override the `allocateLogicalId` method. // Deprecated: use core.NestedStack instead RenameLogicalId(oldId *string, newId *string) // DEPRECATED. // Deprecated: use `reportMissingContextKey()`. ReportMissingContext(report *cxapi.MissingContext) // Indicate that a context key was expected. // // Contains instructions which will be emitted into the cloud assembly on how // the key should be supplied. // Deprecated: use core.NestedStack instead ReportMissingContextKey(report *cloudassemblyschema.MissingContext) // Resolve a tokenized value in the context of the current stack. // Deprecated: use core.NestedStack instead Resolve(obj interface{}) interface{} // Assign a value to one of the nested stack parameters. // Deprecated: use core.NestedStack instead SetParameter(name *string, value *string) // Splits the provided ARN into its components. // // Works both if 'arn' is a string like 'arn:aws:s3:::bucket', // and a Token representing a dynamic CloudFormation expression // (in which case the returned components will also be dynamic CloudFormation expressions, // encoded as Tokens). // Deprecated: use core.NestedStack instead SplitArn(arn *string, arnFormat awscdk.ArnFormat) *awscdk.ArnComponents // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Deprecated: use core.NestedStack instead Synthesize(session awscdk.ISynthesisSession) // Convert an object, potentially containing tokens, to a JSON string. // Deprecated: use core.NestedStack instead ToJsonString(obj interface{}, space *float64) *string // Returns a string representation of this construct. // Deprecated: use core.NestedStack instead ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Deprecated: use core.NestedStack instead Validate() *[]*string }
A CloudFormation nested stack.
When you apply template changes to update a top-level stack, CloudFormation updates the top-level stack and initiates an update to its nested stacks. CloudFormation updates the resources of modified nested stacks, but does not update the resources of unmodified nested stacks.
Furthermore, this stack will not be treated as an independent deployment artifact (won't be listed in "cdk list" or deployable through "cdk deploy"), but rather only synthesized as a template and uploaded as an asset to S3.
Cross references of resource attributes between the parent stack and the nested stack will automatically be translated to stack parameters and outputs.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import monocdk "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var duration duration var topic topic nestedStack := awscdk.Aws_cloudformation.NewNestedStack(this, jsii.String("MyNestedStack"), &nestedStackProps{ notifications: []iTopic{ topic, }, parameters: map[string]*string{ "parametersKey": jsii.String("parameters"), }, timeout: duration, })
Deprecated: use core.NestedStack instead
func NewNestedStack
deprecated
func NewNestedStack(scope awscdk.Construct, id *string, props *NestedStackProps) NestedStack
Deprecated: use core.NestedStack instead
type NestedStackProps
deprecated
type NestedStackProps struct { // The Simple Notification Service (SNS) topics to publish stack related events. // Deprecated: use core.NestedStackProps instead Notifications *[]awssns.ITopic `field:"optional" json:"notifications" yaml:"notifications"` // The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. // // Each parameter has a name corresponding // to a parameter defined in the embedded template and a value representing // the value that you want to set for the parameter. // // The nested stack construct will automatically synthesize parameters in order // to bind references from the parent stack(s) into the nested stack. // Deprecated: use core.NestedStackProps instead Parameters *map[string]*string `field:"optional" json:"parameters" yaml:"parameters"` // The length of time that CloudFormation waits for the nested stack to reach the CREATE_COMPLETE state. // // When CloudFormation detects that the nested stack has reached the // CREATE_COMPLETE state, it marks the nested stack resource as // CREATE_COMPLETE in the parent stack and resumes creating the parent stack. // If the timeout period expires before the nested stack reaches // CREATE_COMPLETE, CloudFormation marks the nested stack as failed and rolls // back both the nested stack and parent stack. // Deprecated: use core.NestedStackProps instead Timeout awscdk.Duration `field:"optional" json:"timeout" yaml:"timeout"` }
Initialization props for the `NestedStack` construct.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import monocdk "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var duration duration var topic topic nestedStackProps := &nestedStackProps{ notifications: []iTopic{ topic, }, parameters: map[string]*string{ "parametersKey": jsii.String("parameters"), }, timeout: duration, }
Deprecated: use core.NestedStackProps instead
Source Files ¶
- awscloudformation.go
- awscloudformation_CfnCustomResource.go
- awscloudformation_CfnCustomResourceProps.go
- awscloudformation_CfnCustomResource__runtime_type_checks.go
- awscloudformation_CfnHookDefaultVersion.go
- awscloudformation_CfnHookDefaultVersionProps.go
- awscloudformation_CfnHookDefaultVersion__runtime_type_checks.go
- awscloudformation_CfnHookTypeConfig.go
- awscloudformation_CfnHookTypeConfigProps.go
- awscloudformation_CfnHookTypeConfig__runtime_type_checks.go
- awscloudformation_CfnHookVersion.go
- awscloudformation_CfnHookVersionProps.go
- awscloudformation_CfnHookVersion_LoggingConfigProperty.go
- awscloudformation_CfnHookVersion__runtime_type_checks.go
- awscloudformation_CfnMacro.go
- awscloudformation_CfnMacroProps.go
- awscloudformation_CfnMacro__runtime_type_checks.go
- awscloudformation_CfnModuleDefaultVersion.go
- awscloudformation_CfnModuleDefaultVersionProps.go
- awscloudformation_CfnModuleDefaultVersion__runtime_type_checks.go
- awscloudformation_CfnModuleVersion.go
- awscloudformation_CfnModuleVersionProps.go
- awscloudformation_CfnModuleVersion__runtime_type_checks.go
- awscloudformation_CfnPublicTypeVersion.go
- awscloudformation_CfnPublicTypeVersionProps.go
- awscloudformation_CfnPublicTypeVersion__runtime_type_checks.go
- awscloudformation_CfnPublisher.go
- awscloudformation_CfnPublisherProps.go
- awscloudformation_CfnPublisher__runtime_type_checks.go
- awscloudformation_CfnResourceDefaultVersion.go
- awscloudformation_CfnResourceDefaultVersionProps.go
- awscloudformation_CfnResourceDefaultVersion__runtime_type_checks.go
- awscloudformation_CfnResourceVersion.go
- awscloudformation_CfnResourceVersionProps.go
- awscloudformation_CfnResourceVersion_LoggingConfigProperty.go
- awscloudformation_CfnResourceVersion__runtime_type_checks.go
- awscloudformation_CfnStack.go
- awscloudformation_CfnStackProps.go
- awscloudformation_CfnStackSet.go
- awscloudformation_CfnStackSetProps.go
- awscloudformation_CfnStackSet_AutoDeploymentProperty.go
- awscloudformation_CfnStackSet_DeploymentTargetsProperty.go
- awscloudformation_CfnStackSet_ManagedExecutionProperty.go
- awscloudformation_CfnStackSet_OperationPreferencesProperty.go
- awscloudformation_CfnStackSet_ParameterProperty.go
- awscloudformation_CfnStackSet_StackInstancesProperty.go
- awscloudformation_CfnStackSet__runtime_type_checks.go
- awscloudformation_CfnStack__runtime_type_checks.go
- awscloudformation_CfnTypeActivation.go
- awscloudformation_CfnTypeActivationProps.go
- awscloudformation_CfnTypeActivation_LoggingConfigProperty.go
- awscloudformation_CfnTypeActivation__runtime_type_checks.go
- awscloudformation_CfnWaitCondition.go
- awscloudformation_CfnWaitConditionHandle.go
- awscloudformation_CfnWaitConditionHandle__runtime_type_checks.go
- awscloudformation_CfnWaitConditionProps.go
- awscloudformation_CfnWaitCondition__runtime_type_checks.go
- awscloudformation_CloudFormationCapabilities.go
- awscloudformation_CustomResource.go
- awscloudformation_CustomResourceProps.go
- awscloudformation_CustomResourceProvider.go
- awscloudformation_CustomResourceProviderConfig.go
- awscloudformation_CustomResourceProvider__runtime_type_checks.go
- awscloudformation_CustomResource__runtime_type_checks.go
- awscloudformation_ICustomResourceProvider.go
- awscloudformation_ICustomResourceProvider__runtime_type_checks.go
- awscloudformation_NestedStack.go
- awscloudformation_NestedStackProps.go
- awscloudformation_NestedStack__runtime_type_checks.go