Module: GrafanaAnnotations

Extended by:
Wrap
Defined in:
lib/grafana_annotations.rb,
lib/grafana_annotations/rake.rb,
lib/grafana_annotations/wrap.rb,
lib/grafana_annotations/types.rb,
lib/grafana_annotations/config.rb,
lib/grafana_annotations/version.rb,
lib/grafana_annotations/annotation.rb,
lib/grafana_annotations/api_client.rb,
lib/grafana_annotations/config/dsl.rb,
lib/grafana_annotations/utils/time.rb,
lib/grafana_annotations/patch_annotation_request.rb

Defined Under Namespace

Modules: Rake, Types, Utils, Wrap Classes: Annotation, ApiClient, Config, ConfigurationError, Error, PatchAnnotationRequest

Constant Summary collapse

VERSION =
'0.1.1'

Class Attribute Summary collapse

Class Method Summary collapse

Methods included from Wrap

wrap

Class Attribute Details

.configObject (readonly)

Returns the value of attribute config.



21
22
23
# File 'lib/grafana_annotations.rb', line 21

def config
  @config
end

Class Method Details

.configureObject



24
25
26
27
28
29
30
# File 'lib/grafana_annotations.rb', line 24

def configure
  dsl = GrafanaAnnotations::Config::Dsl.new
  yield dsl
  @config = GrafanaAnnotations::Config.new(dsl.config)
rescue StandardError => e
  raise ConfigurationError, e.message
end

.configured?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'lib/grafana_annotations.rb', line 32

def configured?
  config.is_a? GrafanaAnnotations::Config
end

.default_api_clientObject



36
37
38
39
40
41
42
43
44
# File 'lib/grafana_annotations.rb', line 36

def default_api_client
  @default_api_client ||= begin
    unless configured?
      raise ConfigurationError, 'Use GrafanaAnnotations.configure in initializer (see https://github.com/SberMarket-Tech/grafana_annotations#configuration)'
    end

    new_api_client({})
  end
end

.new_api_client(opts) ⇒ Object



46
47
48
49
50
51
52
53
54
55
56
# File 'lib/grafana_annotations.rb', line 46

def new_api_client(opts)
  return ApiClient.new(opts) unless configured?

  ApiClient.new(
    opts.merge(
      logger: config.logger,
      base_url: config.grafana_base_url,
      authorization: config.grafana_authorization
    )
  )
end