Sha256: 78edbca23344e1b6c3ca8a985032b875ed7eb72ac6267e7687a6441d4d90af24

Contents?: true

Size: 1.38 KB

Versions: 11

Compression:

Stored size: 1.38 KB

Contents

module Pantograph
  module Actions
    module SharedValues
      GIT_BRANCH_ENV_VARS = %w(GIT_BRANCH BRANCH_NAME TRAVIS_BRANCH BITRISE_GIT_BRANCH CI_BUILD_REF_NAME CI_COMMIT_REF_NAME WERCKER_GIT_BRANCH BUILDKITE_BRANCH).freeze
    end

    class GitBranchAction < Action
      def self.run(params)
        env_name = SharedValues::GIT_BRANCH_ENV_VARS.find { |env_var| PantographCore::Env.truthy?(env_var) }
        ENV.fetch(env_name.to_s) { `git symbolic-ref HEAD --short 2>/dev/null`.strip }
      end

      #####################################################
      # @!group Documentation
      #####################################################

      def self.description
        "Returns the name of the current git branch, possibly as managed by CI ENV vars"
      end

      def self.details
        "If no branch could be found, this action will return an empty string"
      end

      def self.available_options
        []
      end

      def self.output
        [
          ['GIT_BRANCH_ENV_VARS', 'The git branch environment variables']
        ]
      end

      def self.authors
        ["KrauseFx"]
      end

      def self.is_supported?(platform)
        true
      end

      def self.example_code
        [
          'git_branch'
        ]
      end

      def self.return_type
        :string
      end

      def self.category
        :source_control
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
pantograph-0.1.14 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.13 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.12 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.10 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.8 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.7 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.6 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.4 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.3 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.1 pantograph/lib/pantograph/actions/git_branch.rb
pantograph-0.1.0 pantograph/lib/pantograph/actions/git_branch.rb