summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-12-24 03:07:52 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2019-12-24 03:07:52 +0000
commitf12dba53d96f9ba995726257353bf6df374e5aee (patch)
tree67fc609f26825f347cc79d10108cb4844eb33a23
parent3888bc4261500c275759683076e07baaf352e5ec (diff)
downloadgitlab-ce-f12dba53d96f9ba995726257353bf6df374e5aee.tar.gz
Add latest changes from gitlab-org/gitlab@master
-rw-r--r--app/models/environment.rb6
-rw-r--r--changelogs/unreleased/sample-metrics-without-prometheus.yml5
-rw-r--r--doc/development/i18n/proofreader.md2
-rw-r--r--spec/models/environment_spec.rb47
4 files changed, 58 insertions, 2 deletions
diff --git a/app/models/environment.rb b/app/models/environment.rb
index 7ef38ab4cf4..d54050cd156 100644
--- a/app/models/environment.rb
+++ b/app/models/environment.rb
@@ -204,7 +204,11 @@ class Environment < ApplicationRecord
end
def has_metrics?
- available? && prometheus_adapter&.configured?
+ available? && (prometheus_adapter&.configured? || has_sample_metrics?)
+ end
+
+ def has_sample_metrics?
+ !!ENV['USE_SAMPLE_METRICS']
end
def metrics
diff --git a/changelogs/unreleased/sample-metrics-without-prometheus.yml b/changelogs/unreleased/sample-metrics-without-prometheus.yml
new file mode 100644
index 00000000000..471af0a909a
--- /dev/null
+++ b/changelogs/unreleased/sample-metrics-without-prometheus.yml
@@ -0,0 +1,5 @@
+---
+title: Show sample metrics for an environment without prometheus configured
+merge_request: 22133
+author:
+type: added
diff --git a/doc/development/i18n/proofreader.md b/doc/development/i18n/proofreader.md
index 29b8471689f..a475f854ab0 100644
--- a/doc/development/i18n/proofreader.md
+++ b/doc/development/i18n/proofreader.md
@@ -25,7 +25,7 @@ are very appreciative of the work done by translators and proofreaders!
- Victor Wu - [GitLab](https://gitlab.com/victorwuky), [Crowdin](https://crowdin.com/profile/victorwu)
- Ivan Ip - [GitLab](https://gitlab.com/lifehome), [Crowdin](https://crowdin.com/profile/lifehome)
- Czech
- - Proofreaders needed.
+ - Jan Urbanec - [GitLab](https://gitlab.com/TatranskyMedved), [Crowdin](https://crowdin.com/profile/Tatranskymedved)
- Danish
- Saederup92 - [GitLab](https://gitlab.com/Saederup92), [Crowdin](https://crowdin.com/profile/Saederup92)
- Dutch
diff --git a/spec/models/environment_spec.rb b/spec/models/environment_spec.rb
index fe1517e76d3..462e9a56f5c 100644
--- a/spec/models/environment_spec.rb
+++ b/spec/models/environment_spec.rb
@@ -6,6 +6,7 @@ describe Environment, :use_clean_rails_memory_store_caching do
include ReactiveCachingHelpers
using RSpec::Parameterized::TableSyntax
include RepoHelpers
+ include StubENV
let(:project) { create(:project, :repository) }
@@ -851,6 +852,52 @@ describe Environment, :use_clean_rails_memory_store_caching do
context 'without a monitoring service' do
it { is_expected.to be_falsy }
end
+
+ context 'when sample metrics are enabled' do
+ before do
+ stub_env('USE_SAMPLE_METRICS', 'true')
+ end
+
+ context 'with no prometheus adapter configured' do
+ before do
+ allow(environment.prometheus_adapter).to receive(:configured?).and_return(false)
+ end
+
+ it { is_expected.to be_truthy }
+ end
+ end
+ end
+
+ describe '#has_sample_metrics?' do
+ subject { environment.has_metrics? }
+
+ let(:project) { create(:project) }
+
+ context 'when sample metrics are enabled' do
+ before do
+ stub_env('USE_SAMPLE_METRICS', 'true')
+ end
+
+ context 'with no prometheus adapter configured' do
+ before do
+ allow(environment.prometheus_adapter).to receive(:configured?).and_return(false)
+ end
+
+ it { is_expected.to be_truthy }
+ end
+
+ context 'with the environment stopped' do
+ before do
+ environment.stop
+ end
+
+ it { is_expected.to be_falsy }
+ end
+ end
+
+ context 'when sample metrics are not enabled' do
+ it { is_expected.to be_falsy }
+ end
end
context 'when the environment is unavailable' do