Sha256: 5f5b2064c27496cdfa5f390409d279db6b5b5b15c81388c6a2e98e75021d2cc4

Contents?: true

Size: 753 Bytes

Versions: 22

Compression:

Stored size: 753 Bytes

Contents

require "datadog/core/configuration/base"

module Datadog
  module CI
    module Contrib
      # Common settings for all integrations
      # @public_api
      class Settings
        include Core::Configuration::Base

        option :enabled, default: true
        option :service_name

        def configure(options = {})
          self.class.options.each do |name, _value|
            self[name] = options[name] if options.key?(name)
          end

          yield(self) if block_given?
        end

        def [](name)
          respond_to?(name) ? send(name) : get_option(name)
        end

        def []=(name, value)
          respond_to?(:"#{name}=") ? send(:"#{name}=", value) : set_option(name, value)
        end
      end
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
datadog-ci-1.14.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.13.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.12.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.11.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.10.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.9.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.8.1 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.8.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.7.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.6.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.5.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.4.1 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.4.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.3.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.2.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.1.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.0.1 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.0.0 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.0.0.beta6 lib/datadog/ci/contrib/settings.rb
datadog-ci-1.0.0.beta3 lib/datadog/ci/contrib/settings.rb