From b99cf2024d1b518d876bc4f1f4aac8549b4dd993 Mon Sep 17 00:00:00 2001 From: rpereira2 Date: Mon, 26 Aug 2019 12:41:25 +0530 Subject: [PATCH] Add nil check for Gitlab.config.prometheus --- .../self_monitoring/project/create_service.rb | 4 ++-- .../self_monitoring/project/create_service_spec.rb | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/lib/gitlab/database_importers/self_monitoring/project/create_service.rb b/lib/gitlab/database_importers/self_monitoring/project/create_service.rb index 164854e1e1a..6badacc2fc9 100644 --- a/lib/gitlab/database_importers/self_monitoring/project/create_service.rb +++ b/lib/gitlab/database_importers/self_monitoring/project/create_service.rb @@ -175,7 +175,7 @@ module Gitlab end def prometheus_enabled? - Gitlab.config.prometheus.enable + Gitlab.config.prometheus.enable if Gitlab.config.prometheus rescue Settingslogic::MissingSetting log_error(_('prometheus.enable is not present in gitlab.yml')) @@ -183,7 +183,7 @@ module Gitlab end def prometheus_listen_address - Gitlab.config.prometheus.listen_address + Gitlab.config.prometheus.listen_address if Gitlab.config.prometheus rescue Settingslogic::MissingSetting log_error(_('prometheus.listen_address is not present in gitlab.yml')) diff --git a/spec/lib/gitlab/database_importers/self_monitoring/project/create_service_spec.rb b/spec/lib/gitlab/database_importers/self_monitoring/project/create_service_spec.rb index 9bd0d800086..b25f0f6b887 100644 --- a/spec/lib/gitlab/database_importers/self_monitoring/project/create_service_spec.rb +++ b/spec/lib/gitlab/database_importers/self_monitoring/project/create_service_spec.rb @@ -197,6 +197,17 @@ describe Gitlab::DatabaseImporters::SelfMonitoring::Project::CreateService do end end + context 'when prometheus setting is nil' do + before do + stub_config(prometheus: nil) + end + + it 'does not fail' do + expect(result).to include(status: :success) + expect(project.prometheus_service).to be_nil + end + end + context 'when prometheus setting is disabled in gitlab.yml' do let(:prometheus_settings) do {