Module: Mergify::RSpec::Resources::Git

Defined in:
lib/mergify/rspec/resources/git.rb

Overview

Detects OpenTelemetry Resource attributes from git.

Constant Summary collapse

GIT_MAPPING =
{
  'vcs.ref.head.name' => [:to_s, -> { Utils.git('rev-parse', '--abbrev-ref', 'HEAD') }],
  'vcs.ref.head.revision' => [:to_s, -> { Utils.git('rev-parse', 'HEAD') }],
  'vcs.repository.url.full' => [:to_s, -> { Utils.git('config', '--get', 'remote.origin.url') }],
  'vcs.repository.name' => [
    :to_s,
    lambda {
      url = Utils.git('config', '--get', 'remote.origin.url')
      Utils.repository_name_from_url(url) if url
    }
  ]
}.freeze

Class Method Summary collapse

Class Method Details

.detectObject



26
27
28
29
30
31
# File 'lib/mergify/rspec/resources/git.rb', line 26

def detect
  return OpenTelemetry::SDK::Resources::Resource.create({}) if Utils.ci_provider.nil?

  attributes = Utils.get_attributes(GIT_MAPPING)
  OpenTelemetry::SDK::Resources::Resource.create(attributes)
end