Sha256: 2265d48484eaf2599465894241073a905c02bc2dee6144d3dc00b0b7670255a3

Contents?: true

Size: 1.16 KB

Versions: 2

Compression:

Stored size: 1.16 KB

Contents

# https://docs.gitlab.com/ce/ci/variables/
module KnapsackPro
  module Config
    module CI
      class GitlabCI < Base
        def node_total
          ENV['CI_NODE_TOTAL']
        end

        def node_index
          return unless ENV['GITLAB_CI']
          # GitLab 11.5
          index = ENV['CI_NODE_INDEX']
          index.to_i - 1 if index
        end

        def node_build_id
          ENV['CI_PIPELINE_ID'] || # Gitlab Release 9.0+
          ENV['CI_BUILD_ID'] # Gitlab Release 8.x
        end

        def commit_hash
          ENV['CI_COMMIT_SHA'] || # Gitlab Release 9.0+
          ENV['CI_BUILD_REF'] # Gitlab Release 8.x
        end

        def branch
          ENV['CI_COMMIT_REF_NAME'] || # Gitlab Release 9.0+
          ENV['CI_BUILD_REF_NAME'] # Gitlab Release 8.x
        end

        def project_dir
          ENV['CI_PROJECT_DIR']
        end

        def user_seat
          ENV['GITLAB_USER_NAME'] || # Gitlab Release 10.0
          ENV['GITLAB_USER_EMAIL'] # Gitlab Release 8.12
        end

        def detected
          ENV.key?('GITLAB_CI') ? self.class : nil
        end

        def fixed_queue_split
          false
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
knapsack_pro-5.1.0 lib/knapsack_pro/config/ci/gitlab_ci.rb
knapsack_pro-5.0.0 lib/knapsack_pro/config/ci/gitlab_ci.rb