Class: Gitlab::RSpecMetricsExporter::ConfigHelper
- Inherits:
-
Object
- Object
- Gitlab::RSpecMetricsExporter::ConfigHelper
- Extended by:
- Env
- Defined in:
- lib/gitlab/rspec_metrics_exporter/config_helper.rb
Overview
Optional convenience helper that wires up the formatter using GitLab CI environment variables.
Usage in spec_helper.rb:
require "gitlab/rspec_metrics_exporter/config_helper"
Gitlab::RSpecMetricsExporter::ConfigHelper.configure!("backend_unit")
Class Method Summary collapse
Methods included from Env
env_fetch, env_parse_int_or_nil, env_present?
Class Method Details
.configure!(run_type = nil) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/gitlab/rspec_metrics_exporter/config_helper.rb', line 21 def configure!(run_type = nil) return unless ENV.fetch("CI", nil) && ENV.fetch("GLCI_EXPORT_TEST_METRICS", "true") == "true" ::RSpec.configure do |rspec_config| next if rspec_config.dry_run? Config.configure do |exporter_config| self.logger = exporter_config.logger yield(exporter_config) if block_given? configure_exporter!(exporter_config, run_type) next if observer_not_fully_configured?(exporter_config) rspec_config.add_formatter Formatter logger.info("Test metrics export is enabled for run type: #{exporter_config.run_type}") end end end |