Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-12-21 15:14:15 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2021-12-21 15:14:15 +0300
commit55e3b0c9100c453fa32055dc2c76bd7ebfa23a17 (patch)
treebe205a5fe067983f154884f724511ba6fdb2620e /spec/metrics_server
parent3442b76bbd896c85c06feaa56e3d9355a3945523 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/metrics_server')
-rw-r--r--spec/metrics_server/metrics_server_spec.rb15
1 files changed, 8 insertions, 7 deletions
diff --git a/spec/metrics_server/metrics_server_spec.rb b/spec/metrics_server/metrics_server_spec.rb
index 4f0d5bc5bb2..1120fab2de3 100644
--- a/spec/metrics_server/metrics_server_spec.rb
+++ b/spec/metrics_server/metrics_server_spec.rb
@@ -8,14 +8,22 @@ require_relative '../support/helpers/next_instance_of'
RSpec.describe MetricsServer do # rubocop:disable RSpec/FilePath
include NextInstanceOf
+ let(:prometheus_config) { ::Prometheus::Client.configuration }
let(:metrics_dir) { Dir.mktmpdir }
+ # Prometheus::Client is a singleton, i.e. shared global state, so
+ # we need to reset it after testing.
+ let!(:old_multiprocess_files_dir) { prometheus_config.multiprocess_files_dir }
+
before do
# We do not want this to have knock-on effects on the test process.
allow(Gitlab::ProcessManagement).to receive(:modify_signals)
end
after do
+ Gitlab::Metrics.reset_registry!
+ prometheus_config.multiprocess_files_dir = old_multiprocess_files_dir
+
FileUtils.rm_rf(metrics_dir, secure: true)
end
@@ -55,9 +63,7 @@ RSpec.describe MetricsServer do # rubocop:disable RSpec/FilePath
describe '#start' do
let(:exporter_class) { Class.new(Gitlab::Metrics::Exporter::BaseExporter) }
let(:exporter_double) { double('fake_exporter', start: true) }
- let(:prometheus_config) { ::Prometheus::Client.configuration }
let(:settings) { { "fake_exporter" => { "enabled" => true } } }
- let!(:old_metrics_dir) { prometheus_config.multiprocess_files_dir }
let(:ruby_sampler_double) { double(Gitlab::Metrics::Samplers::RubySampler) }
subject(:metrics_server) { described_class.new('fake', metrics_dir, true)}
@@ -71,11 +77,6 @@ RSpec.describe MetricsServer do # rubocop:disable RSpec/FilePath
allow(ruby_sampler_double).to receive(:start)
end
- after do
- Gitlab::Metrics.reset_registry!
- prometheus_config.multiprocess_files_dir = old_metrics_dir
- end
-
it 'configures ::Prometheus::Client' do
metrics_server.start