Class: AWSCDK::CodePipelineActions::CloudFormationDeleteStackActionProps
- Inherits:
-
AWSCDK::Codepipeline::CommonAWSActionProps
- Object
- AWSCDK::Codepipeline::CommonAWSActionProps
- AWSCDK::CodePipelineActions::CloudFormationDeleteStackActionProps
- Defined in:
- code_pipeline_actions/cloud_formation_delete_stack_action_props.rb
Overview
Properties for the CloudFormationDeleteStackAction.
Instance Attribute Summary collapse
-
#account ⇒ String?
readonly
The AWS account this Action is supposed to operate in.
-
#action_name ⇒ String
readonly
The physical, human-readable name of the Action.
-
#admin_permissions ⇒ Boolean
readonly
Whether to grant full permissions to CloudFormation while deploying this template.
-
#cfn_capabilities ⇒ Array<AWSCDK::CfnCapabilities>?
readonly
Acknowledge certain changes made as part of deployment.
-
#deployment_role ⇒ AWSCDK::IAM::IRole?
readonly
IAM role to assume when deploying changes.
-
#extra_inputs ⇒ Array<AWSCDK::Codepipeline::Artifact>?
readonly
The list of additional input Artifacts for this Action.
-
#output ⇒ AWSCDK::Codepipeline::Artifact?
readonly
The name of the output artifact to generate.
-
#output_file_name ⇒ String?
readonly
A name for the filename in the output artifact to store the AWS CloudFormation call's result.
-
#parameter_overrides ⇒ Hash{String => Object}?
readonly
Additional template parameters.
-
#region ⇒ String?
readonly
The AWS region the given Action resides in.
-
#role ⇒ AWSCDK::IAM::IRole?
readonly
The Role in which context's this Action will be executing in.
-
#run_order ⇒ Numeric?
readonly
The runOrder property for this Action.
-
#stack_name ⇒ String
readonly
The name of the stack to apply this action to.
-
#template_configuration ⇒ AWSCDK::Codepipeline::ArtifactPath?
readonly
Input artifact to use for template parameters values and stack policy.
-
#variables_namespace ⇒ String?
readonly
The name of the namespace to use for variables emitted by this action.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(action_name:, run_order: nil, variables_namespace: nil, role: nil, admin_permissions:, stack_name:, account: nil, cfn_capabilities: nil, deployment_role: nil, extra_inputs: nil, output: nil, output_file_name: nil, parameter_overrides: nil, region: nil, template_configuration: nil) ⇒ CloudFormationDeleteStackActionProps
constructor
A new instance of CloudFormationDeleteStackActionProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(action_name:, run_order: nil, variables_namespace: nil, role: nil, admin_permissions:, stack_name:, account: nil, cfn_capabilities: nil, deployment_role: nil, extra_inputs: nil, output: nil, output_file_name: nil, parameter_overrides: nil, region: nil, template_configuration: nil) ⇒ CloudFormationDeleteStackActionProps
Returns a new instance of CloudFormationDeleteStackActionProps.
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 22 def initialize(action_name:, run_order: nil, variables_namespace: nil, role: nil, admin_permissions:, stack_name:, account: nil, cfn_capabilities: nil, deployment_role: nil, extra_inputs: nil, output: nil, output_file_name: nil, parameter_overrides: nil, region: nil, template_configuration: nil) @action_name = action_name Jsii::Type.check_type(@action_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "actionName") @run_order = run_order Jsii::Type.check_type(@run_order, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "runOrder") unless @run_order.nil? @variables_namespace = variables_namespace Jsii::Type.check_type(@variables_namespace, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "variablesNamespace") unless @variables_namespace.nil? @role = role Jsii::Type.check_type(@role, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklSb2xlIn0=")), "role") unless @role.nil? @admin_permissions = Jsii::Type.check_type(@admin_permissions, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "adminPermissions") @stack_name = stack_name Jsii::Type.check_type(@stack_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "stackName") @account = account Jsii::Type.check_type(@account, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "account") unless @account.nil? @cfn_capabilities = cfn_capabilities Jsii::Type.check_type(@cfn_capabilities, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmbkNhcGFiaWxpdGllcyJ9LCJraW5kIjoiYXJyYXkifX0=")), "cfnCapabilities") unless @cfn_capabilities.nil? @deployment_role = deployment_role Jsii::Type.check_type(@deployment_role, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklSb2xlIn0=")), "deploymentRole") unless @deployment_role.nil? @extra_inputs = extra_inputs Jsii::Type.check_type(@extra_inputs, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb2RlcGlwZWxpbmUuQXJ0aWZhY3QifSwia2luZCI6ImFycmF5In19")), "extraInputs") unless @extra_inputs.nil? @output = output Jsii::Type.check_type(@output, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZXBpcGVsaW5lLkFydGlmYWN0In0=")), "output") unless @output.nil? @output_file_name = output_file_name Jsii::Type.check_type(@output_file_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "outputFileName") unless @output_file_name.nil? @parameter_overrides = parameter_overrides Jsii::Type.check_type(@parameter_overrides, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "parameterOverrides") unless @parameter_overrides.nil? @region = region Jsii::Type.check_type(@region, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "region") unless @region.nil? @template_configuration = template_configuration Jsii::Type.check_type(@template_configuration, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZXBpcGVsaW5lLkFydGlmYWN0UGF0aCJ9")), "templateConfiguration") unless @template_configuration.nil? end |
Instance Attribute Details
#account ⇒ String? (readonly)
Default: - action resides in the same account as the pipeline
The AWS account this Action is supposed to operate in.
Note: if you specify the role property,
this is ignored - the action will operate in the same region the passed role does.
112 113 114 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 112 def account @account end |
#action_name ⇒ String (readonly)
The physical, human-readable name of the Action.
Note that Action names must be unique within a single Stage.
60 61 62 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 60 def action_name @action_name end |
#admin_permissions ⇒ Boolean (readonly)
Whether to grant full permissions to CloudFormation while deploying this template.
Setting this to true affects the defaults for role and capabilities, if you
don't specify any alternatives.
The default role that will be created for you will have full (i.e., *)
permissions on all resources, and the deployment will have named IAM
capabilities (i.e., able to create all IAM resources).
This is a shorthand that you can use if you fully trust the templates that
are deployed in this pipeline. If you want more fine-grained permissions,
use add_to_role_policy and capabilities to control what the CloudFormation
deployment is allowed to do.
100 101 102 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 100 def @admin_permissions end |
#cfn_capabilities ⇒ Array<AWSCDK::CfnCapabilities>? (readonly)
Default: None, unless adminPermissions is true
Acknowledge certain changes made as part of deployment.
For stacks that contain certain resources,
explicit acknowledgement is required that AWS CloudFormation might create or update those resources.
For example, you must specify ANONYMOUS_IAM or NAMED_IAM if your stack template contains AWS
Identity and Access Management (IAM) resources.
For more information, see the link below.
124 125 126 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 124 def cfn_capabilities @cfn_capabilities end |
#deployment_role ⇒ AWSCDK::IAM::IRole? (readonly)
Default: A fresh role with full or no permissions (depending on the value of adminPermissions).
IAM role to assume when deploying changes.
If not specified, a fresh role is created. The role is created with zero
permissions unless admin_permissions is true, in which case the role will have
full permissions.
133 134 135 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 133 def deployment_role @deployment_role end |
#extra_inputs ⇒ Array<AWSCDK::Codepipeline::Artifact>? (readonly)
The list of additional input Artifacts for this Action.
This is especially useful when used in conjunction with the parameter_overrides property.
For example, if you have:
parameterOverrides: { 'Param1': action1.outputArtifact.bucketName, 'Param2': action2.outputArtifact.objectKey, }
, if the output Artifacts of action1 and action2 were not used to
set either the template_configuration or the template_path properties,
you need to make sure to include them in the extra_inputs -
otherwise, you'll get an "unrecognized Artifact" error during your Pipeline's execution.
150 151 152 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 150 def extra_inputs @extra_inputs end |
#output ⇒ AWSCDK::Codepipeline::Artifact? (readonly)
Default: Automatically generated artifact name.
The name of the output artifact to generate.
Only applied if output_file_name is set as well.
157 158 159 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 157 def output @output end |
#output_file_name ⇒ String? (readonly)
Default: No output artifact generated
A name for the filename in the output artifact to store the AWS CloudFormation call's result.
The file will contain the result of the call to AWS CloudFormation (for example the call to UpdateStack or CreateChangeSet).
AWS CodePipeline adds the file to the output artifact after performing the specified action.
168 169 170 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 168 def output_file_name @output_file_name end |
#parameter_overrides ⇒ Hash{String => Object}? (readonly)
Default: No overrides
Additional template parameters.
Template parameters specified here take precedence over template parameters
found in the artifact specified by the template_configuration property.
We recommend that you use the template configuration file to specify most of your parameter values. Use parameter overrides to specify only dynamic parameter values (values that are unknown until you run the pipeline).
All parameter names must be present in the stack template.
Note: the entire object cannot be more than 1kB.
185 186 187 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 185 def parameter_overrides @parameter_overrides end |
#region ⇒ String? (readonly)
Default: the Action resides in the same region as the Pipeline
The AWS region the given Action resides in.
Note that a cross-region Pipeline requires replication buckets to function correctly.
You can provide their names with the PipelineProps#crossRegionReplicationBuckets property.
If you don't, the CodePipeline Construct will create new Stacks in your CDK app containing those buckets,
that you will need to cdk deploy before deploying the main, Pipeline-containing Stack.
195 196 197 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 195 def region @region end |
#role ⇒ AWSCDK::IAM::IRole? (readonly)
Default: a new Role will be generated
The Role in which context's this Action will be executing in.
The Pipeline's Role will assume this Role
(the required permissions for that will be granted automatically)
right before executing this Action.
This Action will be passed into your IAction.bind
method in the ActionBindOptions.role property.
84 85 86 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 84 def role @role end |
#run_order ⇒ Numeric? (readonly)
Default: 1
The runOrder property for this Action.
RunOrder determines the relative order in which multiple Actions in the same Stage execute.
68 69 70 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 68 def run_order @run_order end |
#stack_name ⇒ String (readonly)
The name of the stack to apply this action to.
104 105 106 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 104 def stack_name @stack_name end |
#template_configuration ⇒ AWSCDK::Codepipeline::ArtifactPath? (readonly)
Default: No template configuration based on input artifacts
Input artifact to use for template parameters values and stack policy.
The template configuration file should contain a JSON object that should look like this:
{ "Parameters": {...}, "Tags": {...}, "StackPolicy": {... }}. For more information,
see AWS CloudFormation Artifacts.
Note that if you include sensitive information, such as passwords, restrict access to this file.
207 208 209 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 207 def template_configuration @template_configuration end |
#variables_namespace ⇒ String? (readonly)
Default: - a name will be generated, based on the stage and action names, if any of the action's variables were referenced - otherwise, no namespace will be set
The name of the namespace to use for variables emitted by this action.
73 74 75 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 73 def variables_namespace @variables_namespace end |
Class Method Details
.jsii_properties ⇒ Object
209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 209 def self.jsii_properties { :action_name => "actionName", :run_order => "runOrder", :variables_namespace => "variablesNamespace", :role => "role", :admin_permissions => "adminPermissions", :stack_name => "stackName", :account => "account", :cfn_capabilities => "cfnCapabilities", :deployment_role => "deploymentRole", :extra_inputs => "extraInputs", :output => "output", :output_file_name => "outputFileName", :parameter_overrides => "parameterOverrides", :region => "region", :template_configuration => "templateConfiguration", } end |
Instance Method Details
#to_jsii ⇒ Object
229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 |
# File 'code_pipeline_actions/cloud_formation_delete_stack_action_props.rb', line 229 def to_jsii result = {} result.merge!(super) result.merge!({ "actionName" => @action_name, "runOrder" => @run_order, "variablesNamespace" => @variables_namespace, "role" => @role, "adminPermissions" => @admin_permissions, "stackName" => @stack_name, "account" => @account, "cfnCapabilities" => @cfn_capabilities, "deploymentRole" => @deployment_role, "extraInputs" => @extra_inputs, "output" => @output, "outputFileName" => @output_file_name, "parameterOverrides" => @parameter_overrides, "region" => @region, "templateConfiguration" => @template_configuration, }) result.compact end |