From 18ee6cf012d1526f529bc512f2830cc59d055752 Mon Sep 17 00:00:00 2001 From: Alejandro Garrido Mota Date: Tue, 13 Aug 2019 10:22:28 +0100 Subject: [PATCH] [stable/jenkins] Ability to set custom namespace for ServiceMonitor (#16145) * Improved ServiceMonitor for stable/jenkins - Added custom namespace where to deploy the ServiceMonitor - Updated README to reflect the new variable - Increase Chart version Signed-off-by: Alejandro Garrido Mota * Bump Chart version and added variable in values.yaml Signed-off-by: Alejandro Garrido Mota --- stable/jenkins/Chart.yaml | 2 +- stable/jenkins/README.md | 1 + stable/jenkins/templates/jenkins-master-servicemonitor.yaml | 4 ++++ stable/jenkins/values.yaml | 2 ++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/stable/jenkins/Chart.yaml b/stable/jenkins/Chart.yaml index 429e8d6e6c..44a226032c 100755 --- a/stable/jenkins/Chart.yaml +++ b/stable/jenkins/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 name: jenkins home: https://jenkins.io/ -version: 1.5.0 +version: 1.5.1 appVersion: lts description: Open source continuous integration server. It supports multiple SCM tools including CVS, Subversion and Git. It can execute Apache Ant and Apache Maven-based diff --git a/stable/jenkins/README.md b/stable/jenkins/README.md index 84d5b072f4..3a6fb64e51 100644 --- a/stable/jenkins/README.md +++ b/stable/jenkins/README.md @@ -155,6 +155,7 @@ The following tables list the configurable parameters of the Jenkins chart and t | `master.lifecycle` | Lifecycle specification for master-container | Not set | | `master.prometheus.enabled` | Enables prometheus service monitor | `false` | | `master.prometheus.serviceMonitorAdditionalLabels` | Additional labels to add to the service monitor object | `{}` | +| `master.prometheus.serviceMonitorNamespace` | Custom namespace for serviceMonitor | Not set (same ns where is Jenkins being deployed) | | `master.prometheus.scrapeInterval` | How often prometheus should scrape metrics | `60s` | | `master.prometheus.scrapeEndpoint` | The endpoint prometheus should get metrics from | `/prometheus` | | `master.prometheus.alertingrules` | Array of prometheus alerting rules | `[]` | diff --git a/stable/jenkins/templates/jenkins-master-servicemonitor.yaml b/stable/jenkins/templates/jenkins-master-servicemonitor.yaml index 125bf3dd68..ac2809ace8 100644 --- a/stable/jenkins/templates/jenkins-master-servicemonitor.yaml +++ b/stable/jenkins/templates/jenkins-master-servicemonitor.yaml @@ -4,7 +4,11 @@ kind: ServiceMonitor metadata: name: {{ template "jenkins.fullname" . }} +{{- if .Values.master.prometheus.serviceMonitorNamespace }} + namespace: {{ .Values.master.prometheus.serviceMonitorNamespace }} +{{- else }} namespace: {{ template "jenkins.namespace" . }} +{{- end }} labels: "app.kubernetes.io/name": '{{ template "jenkins.name" .}}' "helm.sh/chart": "{{ .Chart.Name }}-{{ .Chart.Version }}" diff --git a/stable/jenkins/values.yaml b/stable/jenkins/values.yaml index f6ef2366b3..be81a824f9 100644 --- a/stable/jenkins/values.yaml +++ b/stable/jenkins/values.yaml @@ -335,6 +335,8 @@ master: enabled: false # Additional labels to add to the ServiceMonitor object serviceMonitorAdditionalLabels: {} + # Set a custom namespace where to deploy ServiceMonitor resource + # serviceMonitorNamespace: monitoring scrapeInterval: 60s # This is the default endpoint used by the prometheus plugin scrapeEndpoint: /prometheus