Class: AWSCDK::Codepipeline::GitConfiguration

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

Overview

Git configuration for trigger.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(source_action:, pull_request_filter: nil, push_filter: nil) ⇒ GitConfiguration

Returns a new instance of GitConfiguration.

Parameters:

  • source_action (AWSCDK::Codepipeline::IAction)

    The pipeline source action where the trigger configuration, such as Git tags.

  • pull_request_filter (Array<AWSCDK::Codepipeline::GitPullRequestFilter>, nil) (defaults to: nil)

    The field where the repository event that will start the pipeline is specified as pull requests.

  • push_filter (Array<AWSCDK::Codepipeline::GitPushFilter>, nil) (defaults to: nil)

    The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details.



10
11
12
13
14
15
16
17
# File 'codepipeline/git_configuration.rb', line 10

def initialize(source_action:, pull_request_filter: nil, push_filter: nil)
  @source_action = source_action
  Jsii::Type.check_type(@source_action, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZXBpcGVsaW5lLklBY3Rpb24ifQ==")), "sourceAction")
  @pull_request_filter = pull_request_filter.is_a?(Array) ? pull_request_filter.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::Codepipeline::GitPullRequestFilter.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : pull_request_filter
  Jsii::Type.check_type(@pull_request_filter, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb2RlcGlwZWxpbmUuR2l0UHVsbFJlcXVlc3RGaWx0ZXIifSwia2luZCI6ImFycmF5In19")), "pullRequestFilter") unless @pull_request_filter.nil?
  @push_filter = push_filter.is_a?(Array) ? push_filter.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::Codepipeline::GitPushFilter.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : push_filter
  Jsii::Type.check_type(@push_filter, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb2RlcGlwZWxpbmUuR2l0UHVzaEZpbHRlciJ9LCJraW5kIjoiYXJyYXkifX0=")), "pushFilter") unless @push_filter.nil?
end

Instance Attribute Details

#pull_request_filterArray<AWSCDK::Codepipeline::GitPullRequestFilter>? (readonly)

Note:

Default: - no filter.

The field where the repository event that will start the pipeline is specified as pull requests.

The length must be less than or equal to 3.



35
36
37
# File 'codepipeline/git_configuration.rb', line 35

def pull_request_filter
  @pull_request_filter
end

#push_filterArray<AWSCDK::Codepipeline::GitPushFilter>? (readonly)

Note:

Default: - no filter.

The field where the repository event that will start the pipeline, such as pushing Git tags, is specified with details.

Git tags, file paths and branches are supported event type.

The length must be less than or equal to 3.

Returns:



44
45
46
# File 'codepipeline/git_configuration.rb', line 44

def push_filter
  @push_filter
end

#source_actionAWSCDK::Codepipeline::IAction (readonly)

The pipeline source action where the trigger configuration, such as Git tags.

The trigger configuration will start the pipeline upon the specified change only. You can only specify one trigger configuration per source action.

Since the provider for source_action must be CodeStarSourceConnection, you can use CodeStarConnectionsSourceAction construct in aws-codepipeline-actions module.



28
29
30
# File 'codepipeline/git_configuration.rb', line 28

def source_action
  @source_action
end

Class Method Details

.jsii_propertiesObject



46
47
48
49
50
51
52
# File 'codepipeline/git_configuration.rb', line 46

def self.jsii_properties
  {
    :source_action => "sourceAction",
    :pull_request_filter => "pullRequestFilter",
    :push_filter => "pushFilter",
  }
end

Instance Method Details

#to_jsiiObject



54
55
56
57
58
59
60
61
62
# File 'codepipeline/git_configuration.rb', line 54

def to_jsii
  result = {}
  result.merge!({
    "sourceAction" => @source_action,
    "pullRequestFilter" => @pull_request_filter,
    "pushFilter" => @push_filter,
  })
  result.compact
end