Sha256: 9ec1335e16fe6559a0f5f46adac9e7a8c36caebe1908c2603910f8b88bda6235
Contents?: true
Size: 1.67 KB
Versions: 3
Compression:
Stored size: 1.67 KB
Contents
# frozen_string_literal: true require_relative '../ext/settings' module Datadog module CI module Configuration # Adds CI behavior to Datadog trace settings module Settings def self.extended(base) base = base.singleton_class unless base.is_a?(Class) add_settings!(base) end def self.add_settings!(base) base.class_eval do settings :ci do option :enabled do |o| o.type :bool o.env CI::Ext::Settings::ENV_MODE_ENABLED o.default false end # DEV: Alias to Datadog::Tracing::Contrib::Extensions::Configuration::Settings#instrument. # DEV: Should be removed when CI implement its own `c.ci.instrument`. define_method(:instrument) do |integration_name, options = {}, &block| Datadog.configuration.tracing.instrument(integration_name, options, &block) end # DEV: Alias to Datadog::Tracing::Contrib::Extensions::Configuration::Settings#instrument. # DEV: Should be removed when CI implement its own `c.ci[]`. define_method(:[]) do |integration_name, key = :default| Datadog.configuration.tracing[integration_name, key] end # TODO: Deprecate in the next major version, as `instrument` better describes this method's purpose alias_method :use, :instrument option :trace_flush option :writer_options do |o| o.type :hash o.default({}) end end end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ddtrace-1.14.0 | lib/datadog/ci/configuration/settings.rb |
ddtrace-1.13.1 | lib/datadog/ci/configuration/settings.rb |
ddtrace-1.13.0 | lib/datadog/ci/configuration/settings.rb |