Merge branch '39985-enable-prometheus-metrics-for-deployed-ingresses' into 'master'
Enable Prometheus metrics for deployed Ingresses Closes #39985 See merge request gitlab-org/gitlab-ce!16866
This commit is contained in:
commit
bedfc7b103
|
@ -17,8 +17,12 @@ module Clusters
|
||||||
'stable/nginx-ingress'
|
'stable/nginx-ingress'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def chart_values_file
|
||||||
|
"#{Rails.root}/vendor/#{name}/values.yaml"
|
||||||
|
end
|
||||||
|
|
||||||
def install_command
|
def install_command
|
||||||
Gitlab::Kubernetes::Helm::InstallCommand.new(name, chart: chart)
|
Gitlab::Kubernetes::Helm::InstallCommand.new(name, chart: chart, chart_values_file: chart_values_file)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
title: Enable Prometheus metrics for deployed Ingresses
|
||||||
|
merge_request: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/16866
|
||||||
|
author: joshlambert
|
||||||
|
type: changed
|
|
@ -64,7 +64,7 @@ module Gitlab
|
||||||
{
|
{
|
||||||
name: 'configuration-volume',
|
name: 'configuration-volume',
|
||||||
configMap: {
|
configMap: {
|
||||||
name: 'values-content-configuration',
|
name: "values-content-configuration-#{command.name}",
|
||||||
items: [{ key: 'values', path: 'values.yaml' }]
|
items: [{ key: 'values', path: 'values.yaml' }]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -81,7 +81,11 @@ module Gitlab
|
||||||
|
|
||||||
def create_config_map
|
def create_config_map
|
||||||
resource = ::Kubeclient::Resource.new
|
resource = ::Kubeclient::Resource.new
|
||||||
resource.metadata = { name: 'values-content-configuration', namespace: namespace_name, labels: { name: 'values-content-configuration' } }
|
resource.metadata = {
|
||||||
|
name: "values-content-configuration-#{command.name}",
|
||||||
|
namespace: namespace_name,
|
||||||
|
labels: { name: "values-content-configuration-#{command.name}" }
|
||||||
|
}
|
||||||
resource.data = { values: File.read(command.chart_values_file) }
|
resource.data = { values: File.read(command.chart_values_file) }
|
||||||
kubeclient.create_config_map(resource)
|
kubeclient.create_config_map(resource)
|
||||||
end
|
end
|
||||||
|
|
|
@ -63,14 +63,14 @@ describe Gitlab::Kubernetes::Helm::Pod do
|
||||||
|
|
||||||
it 'should mount configMap specification in the volume' do
|
it 'should mount configMap specification in the volume' do
|
||||||
spec = subject.generate.spec
|
spec = subject.generate.spec
|
||||||
expect(spec.volumes.first.configMap['name']).to eq('values-content-configuration')
|
expect(spec.volumes.first.configMap['name']).to eq("values-content-configuration-#{app.name}")
|
||||||
expect(spec.volumes.first.configMap['items'].first['key']).to eq('values')
|
expect(spec.volumes.first.configMap['items'].first['key']).to eq('values')
|
||||||
expect(spec.volumes.first.configMap['items'].first['path']).to eq('values.yaml')
|
expect(spec.volumes.first.configMap['items'].first['path']).to eq('values.yaml')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'without a configuration file' do
|
context 'without a configuration file' do
|
||||||
let(:app) { create(:clusters_applications_ingress, cluster: cluster) }
|
let(:app) { create(:clusters_applications_helm, cluster: cluster) }
|
||||||
|
|
||||||
it_behaves_like 'helm pod'
|
it_behaves_like 'helm pod'
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
controller:
|
||||||
|
image:
|
||||||
|
tag: "0.10.2"
|
||||||
|
repository: "quay.io/kubernetes-ingress-controller/nginx-ingress-controller"
|
||||||
|
stats.enabled: true
|
||||||
|
podAnnotations:
|
||||||
|
prometheus.io/scrape: "true"
|
||||||
|
prometheus.io/port: "10254"
|
Loading…
Reference in New Issue