Class: AWSCDK::Codepipeline::CfnPipeline::ActionDeclarationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
codepipeline/cfn_pipeline.rb

Overview

Represents information about an action declaration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(action_type_id:, name:, commands: nil, configuration: nil, environment_variables: nil, input_artifacts: nil, namespace: nil, output_artifacts: nil, output_variables: nil, region: nil, role_arn: nil, run_order: nil, timeout_in_minutes: nil) ⇒ ActionDeclarationProperty

Returns a new instance of ActionDeclarationProperty.

Parameters:



692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
# File 'codepipeline/cfn_pipeline.rb', line 692

def initialize(action_type_id:, name:, commands: nil, configuration: nil, environment_variables: nil, input_artifacts: nil, namespace: nil, output_artifacts: nil, output_variables: nil, region: nil, role_arn: nil, run_order: nil, timeout_in_minutes: nil)
  @action_type_id = action_type_id.is_a?(Hash) ? ::AWSCDK::Codepipeline::CfnPipeline::ActionTypeIdProperty.new(**action_type_id.transform_keys(&:to_sym)) : action_type_id
  Jsii::Type.check_type(@action_type_id, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb2RlcGlwZWxpbmUuQ2ZuUGlwZWxpbmUuQWN0aW9uVHlwZUlkUHJvcGVydHkifV19fQ==")), "actionTypeId")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @commands = commands
  Jsii::Type.check_type(@commands, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "commands") unless @commands.nil?
  @configuration = configuration
  Jsii::Type.check_type(@configuration, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "configuration") unless @configuration.nil?
  @environment_variables = environment_variables
  Jsii::Type.check_type(@environment_variables, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZXBpcGVsaW5lLkNmblBpcGVsaW5lLkVudmlyb25tZW50VmFyaWFibGVQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "environmentVariables") unless @environment_variables.nil?
  @input_artifacts = input_artifacts
  Jsii::Type.check_type(@input_artifacts, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZXBpcGVsaW5lLkNmblBpcGVsaW5lLklucHV0QXJ0aWZhY3RQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "inputArtifacts") unless @input_artifacts.nil?
  @namespace = namespace
  Jsii::Type.check_type(@namespace, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "namespace") unless @namespace.nil?
  @output_artifacts = output_artifacts
  Jsii::Type.check_type(@output_artifacts, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZXBpcGVsaW5lLkNmblBpcGVsaW5lLk91dHB1dEFydGlmYWN0UHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "outputArtifacts") unless @output_artifacts.nil?
  @output_variables = output_variables
  Jsii::Type.check_type(@output_variables, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "outputVariables") unless @output_variables.nil?
  @region = region
  Jsii::Type.check_type(@region, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "region") unless @region.nil?
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") unless @role_arn.nil?
  @run_order = run_order
  Jsii::Type.check_type(@run_order, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "runOrder") unless @run_order.nil?
  @timeout_in_minutes = timeout_in_minutes
  Jsii::Type.check_type(@timeout_in_minutes, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "timeoutInMinutes") unless @timeout_in_minutes.nil?
end

Instance Attribute Details

#commandsArray<String>? (readonly)

The shell commands to run with your compute action in CodePipeline.

All commands are supported except multi-line formats. While CodeBuild logs and permissions are used, you do not need to create any resources in CodeBuild.

Using compute time for this action will incur separate charges in AWS CodeBuild .



739
740
741
# File 'codepipeline/cfn_pipeline.rb', line 739

def commands
  @commands
end

#configurationObject? (readonly)

The action's configuration.

These are key-value pairs that specify input values for an action. For more information, see Action Structure Requirements in CodePipeline . For the list of configuration properties for the AWS CloudFormation action type in CodePipeline, see Configuration Properties Reference in the AWS CloudFormation User Guide . For template snippets with examples, see Using Parameter Override Functions with CodePipeline Pipelines in the AWS CloudFormation User Guide .

The values can be represented in either JSON or YAML format. For example, the JSON configuration item format is as follows:

JSON:

"Configuration" : { Key : Value },



752
753
754
# File 'codepipeline/cfn_pipeline.rb', line 752

def configuration
  @configuration
end

#environment_variablesAWSCDK::IResolvable, ... (readonly)

The environment variables for the action.



757
758
759
# File 'codepipeline/cfn_pipeline.rb', line 757

def environment_variables
  @environment_variables
end

#input_artifactsAWSCDK::IResolvable, ... (readonly)

The name or ID of the artifact consumed by the action, such as a test or build artifact.

While the field is not a required parameter, most actions have an action configuration that requires a specified quantity of input artifacts. To refer to the action configuration specification by action provider, see the Action structure reference in the AWS CodePipeline User Guide .

For a CodeBuild action with multiple input artifacts, one of your input sources must be designated the PrimarySource. For more information, see the CodeBuild action reference page in the AWS CodePipeline User Guide .



766
767
768
# File 'codepipeline/cfn_pipeline.rb', line 766

def input_artifacts
  @input_artifacts
end

#nameString (readonly)

The action declaration's name.



730
731
732
# File 'codepipeline/cfn_pipeline.rb', line 730

def name
  @name
end

#namespaceString? (readonly)

The variable namespace associated with the action.

All variables produced as output by this action fall under this namespace.



773
774
775
# File 'codepipeline/cfn_pipeline.rb', line 773

def namespace
  @namespace
end

#output_artifactsAWSCDK::IResolvable, ... (readonly)

The name or ID of the result of the action declaration, such as a test or build artifact.

While the field is not a required parameter, most actions have an action configuration that requires a specified quantity of output artifacts. To refer to the action configuration specification by action provider, see the Action structure reference in the AWS CodePipeline User Guide .



780
781
782
# File 'codepipeline/cfn_pipeline.rb', line 780

def output_artifacts
  @output_artifacts
end

#output_variablesArray<String>? (readonly)

The list of variables that are to be exported from the compute action.

This is specifically CodeBuild environment variables as used for that action.



787
788
789
# File 'codepipeline/cfn_pipeline.rb', line 787

def output_variables
  @output_variables
end

#regionString? (readonly)

The action declaration's AWS Region, such as us-east-1.



792
793
794
# File 'codepipeline/cfn_pipeline.rb', line 792

def region
  @region
end

#role_arnString? (readonly)

The ARN of the IAM service role that performs the declared action.

This is assumed through the roleArn for the pipeline.



799
800
801
# File 'codepipeline/cfn_pipeline.rb', line 799

def role_arn
  @role_arn
end

#run_orderNumeric? (readonly)

The order in which actions are run.



804
805
806
# File 'codepipeline/cfn_pipeline.rb', line 804

def run_order
  @run_order
end

#timeout_in_minutesNumeric? (readonly)

A timeout duration in minutes that can be applied against the ActionType’s default timeout value specified in Quotas for AWS CodePipeline . This attribute is available only to the manual approval ActionType.



809
810
811
# File 'codepipeline/cfn_pipeline.rb', line 809

def timeout_in_minutes
  @timeout_in_minutes
end

Class Method Details

.jsii_propertiesObject



811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
# File 'codepipeline/cfn_pipeline.rb', line 811

def self.jsii_properties
  {
    :action_type_id => "actionTypeId",
    :name => "name",
    :commands => "commands",
    :configuration => "configuration",
    :environment_variables => "environmentVariables",
    :input_artifacts => "inputArtifacts",
    :namespace => "namespace",
    :output_artifacts => "outputArtifacts",
    :output_variables => "outputVariables",
    :region => "region",
    :role_arn => "roleArn",
    :run_order => "runOrder",
    :timeout_in_minutes => "timeoutInMinutes",
  }
end

Instance Method Details

#to_jsiiObject



829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
# File 'codepipeline/cfn_pipeline.rb', line 829

def to_jsii
  result = {}
  result.merge!({
    "actionTypeId" => @action_type_id,
    "name" => @name,
    "commands" => @commands,
    "configuration" => @configuration,
    "environmentVariables" => @environment_variables,
    "inputArtifacts" => @input_artifacts,
    "namespace" => @namespace,
    "outputArtifacts" => @output_artifacts,
    "outputVariables" => @output_variables,
    "region" => @region,
    "roleArn" => @role_arn,
    "runOrder" => @run_order,
    "timeoutInMinutes" => @timeout_in_minutes,
  })
  result.compact
end