Class: AWSCDK::Codepipeline::CfnPipeline::RuleDeclarationProperty

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

Overview

Represents information about the rule to be created for an associated condition.

An example would be creating a new rule for an entry condition, such as a rule that checks for a test result before allowing the run to enter the deployment stage. For more information about conditions, see Stage conditions and How do stage conditions work? . For more information about rules, see the AWS CodePipeline rule reference .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(commands: nil, configuration: nil, input_artifacts: nil, name: nil, region: nil, role_arn: nil, rule_type_id: nil) ⇒ RuleDeclarationProperty

Returns a new instance of RuleDeclarationProperty.

Parameters:

  • commands (Array<String>, nil) (defaults to: nil)

    The shell commands to run with your commands rule in CodePipeline.

  • configuration (Object, nil) (defaults to: nil)

    The action configuration fields for the rule.

  • input_artifacts (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Codepipeline::CfnPipeline::InputArtifactProperty>, nil) (defaults to: nil)

    The input artifacts fields for the rule, such as specifying an input file for the rule.

  • name (String, nil) (defaults to: nil)

    The name of the rule that is created for the condition, such as VariableCheck .

  • region (String, nil) (defaults to: nil)

    The Region for the condition associated with the rule.

  • role_arn (String, nil) (defaults to: nil)

    The pipeline role ARN associated with the rule.

  • rule_type_id (AWSCDK::IResolvable, AWSCDK::Codepipeline::CfnPipeline::RuleTypeIdProperty, nil) (defaults to: nil)

    The ID for the rule type, which is made up of the combined values for category, owner, provider, and version.



1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
# File 'codepipeline/cfn_pipeline.rb', line 1802

def initialize(commands: nil, configuration: nil, input_artifacts: nil, name: nil, region: nil, role_arn: nil, rule_type_id: nil)
  @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?
  @input_artifacts = input_artifacts
  Jsii::Type.check_type(@input_artifacts, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZXBpcGVsaW5lLkNmblBpcGVsaW5lLklucHV0QXJ0aWZhY3RQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "inputArtifacts") unless @input_artifacts.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.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?
  @rule_type_id = rule_type_id.is_a?(Hash) ? ::AWSCDK::Codepipeline::CfnPipeline::RuleTypeIdProperty.new(**rule_type_id.transform_keys(&:to_sym)) : rule_type_id
  Jsii::Type.check_type(@rule_type_id, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb2RlcGlwZWxpbmUuQ2ZuUGlwZWxpbmUuUnVsZVR5cGVJZFByb3BlcnR5In1dfX0=")), "ruleTypeId") unless @rule_type_id.nil?
end

Instance Attribute Details

#commandsArray<String>? (readonly)

The shell commands to run with your commands rule 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 .



1827
1828
1829
# File 'codepipeline/cfn_pipeline.rb', line 1827

def commands
  @commands
end

#configurationObject? (readonly)

The action configuration fields for the rule.



1832
1833
1834
# File 'codepipeline/cfn_pipeline.rb', line 1832

def configuration
  @configuration
end

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

The input artifacts fields for the rule, such as specifying an input file for the rule.



1837
1838
1839
# File 'codepipeline/cfn_pipeline.rb', line 1837

def input_artifacts
  @input_artifacts
end

#nameString? (readonly)

The name of the rule that is created for the condition, such as VariableCheck .



1842
1843
1844
# File 'codepipeline/cfn_pipeline.rb', line 1842

def name
  @name
end

#regionString? (readonly)

The Region for the condition associated with the rule.



1847
1848
1849
# File 'codepipeline/cfn_pipeline.rb', line 1847

def region
  @region
end

#role_arnString? (readonly)

The pipeline role ARN associated with the rule.



1852
1853
1854
# File 'codepipeline/cfn_pipeline.rb', line 1852

def role_arn
  @role_arn
end

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

The ID for the rule type, which is made up of the combined values for category, owner, provider, and version.



1857
1858
1859
# File 'codepipeline/cfn_pipeline.rb', line 1857

def rule_type_id
  @rule_type_id
end

Class Method Details

.jsii_propertiesObject



1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
# File 'codepipeline/cfn_pipeline.rb', line 1859

def self.jsii_properties
  {
    :commands => "commands",
    :configuration => "configuration",
    :input_artifacts => "inputArtifacts",
    :name => "name",
    :region => "region",
    :role_arn => "roleArn",
    :rule_type_id => "ruleTypeId",
  }
end

Instance Method Details

#to_jsiiObject



1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
# File 'codepipeline/cfn_pipeline.rb', line 1871

def to_jsii
  result = {}
  result.merge!({
    "commands" => @commands,
    "configuration" => @configuration,
    "inputArtifacts" => @input_artifacts,
    "name" => @name,
    "region" => @region,
    "roleArn" => @role_arn,
    "ruleTypeId" => @rule_type_id,
  })
  result.compact
end