Sha256: 9d3d93cd7f8e313d7b5b26f9180fdfa6d7c9a5952ad89d05befa809096f3c7cb

Contents?: true

Size: 1.25 KB

Versions: 8

Compression:

Stored size: 1.25 KB

Contents

module Pipedream::Dsl::Pipeline
  module Github
    def github(props)
      # nice shorthands
      source = props.delete(:source)
      source = extract_repo_source(source)
      owner,repo = source.split("/")

      # cli option can override this in codepipe/pipeline.rb set_source!
      # so cli option always gets the highest precendence
      branch = props.delete(:branch) || "master" # always delete branch prop

      o_auth_token = props.delete(:auth_token)
      poll_for_source_changes = props.delete(:poll_for_source_changes) || "false"

      default = {
        name: "Source",
        action_type_id: {
          category: "Source",
          owner: "ThirdParty",
          provider: "GitHub",
          version: "1",
        },
        run_order: @run_order,
        configuration: {
          branch: branch,
          o_auth_token: o_auth_token,
          owner: owner,
          poll_for_source_changes: poll_for_source_changes,
          repo: repo,
        },
        output_artifacts: [name: "SourceArtifact"]
      }
      action(props.reverse_merge(default))
    end

    def extract_repo_source(url)
      url.sub('git@github.com:','').sub('https://github.com/','').sub(/\.git$/,'')
    end
    extend self # mainly for extract_repo_source
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
pipedream-0.4.7 lib/pipedream/dsl/pipeline/github.rb
pipedream-0.4.6 lib/pipedream/dsl/pipeline/github.rb
pipedream-0.4.5 lib/pipedream/dsl/pipeline/github.rb
pipedream-0.4.4 lib/pipedream/dsl/pipeline/github.rb
pipedream-0.4.3 lib/pipedream/dsl/pipeline/github.rb
pipedream-0.4.2 lib/pipedream/dsl/pipeline/github.rb
pipedream-0.4.1 lib/pipedream/dsl/pipeline/github.rb
pipedream-0.4.0 lib/pipedream/dsl/pipeline/github.rb