From 57612678426ae724568bfbbc17bb2947c7df7375 Mon Sep 17 00:00:00 2001
From: "Nagel, Felix" <felix.nagel@sew-eurodrive.de>
Date: Fri, 30 Apr 2021 13:48:34 +0200
Subject: [PATCH] can change kubeRbacProxy over $.values.common.images

---
 .../kube-prometheus/components/blackbox-exporter.libsonnet  | 2 ++
 .../kube-prometheus/components/kube-rbac-proxy.libsonnet    | 2 +-
 .../kube-prometheus/components/kube-state-metrics.libsonnet | 3 +++
 jsonnet/kube-prometheus/components/node-exporter.libsonnet  | 2 ++
 .../components/prometheus-operator.libsonnet                | 2 ++
 jsonnet/kube-prometheus/main.libsonnet                      | 6 ++++++
 jsonnet/kube-prometheus/versions.json                       | 5 +++--
 7 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet b/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet
index e574c9f2..bd61e25f 100644
--- a/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet
+++ b/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet
@@ -21,6 +21,7 @@ local defaults = {
     if !std.setMember(labelName, ['app.kubernetes.io/version'])
   },
   configmapReloaderImage: 'jimmidyson/configmap-reload:v0.5.0',
+  kubeRbacProxyImage: error 'must provide kubeRbacProxyImage',
 
   port: 9115,
   internalPort: 19115,
@@ -204,6 +205,7 @@ function(params) {
       ports: [
         { name: 'https', containerPort: bb._config.port },
       ],
+      image: bb._config.kubeRbacProxyImage,
     });
 
     {
diff --git a/jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet b/jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet
index faec1f40..534a2eed 100644
--- a/jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet
+++ b/jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet
@@ -1,6 +1,6 @@
 local defaults = {
   namespace: error 'must provide namespace',
-  image: 'quay.io/brancz/kube-rbac-proxy:v0.8.0',
+  image: error 'must provide image',
   ports: error 'must provide ports',
   secureListenAddress: error 'must provide secureListenAddress',
   upstream: error 'must provide upstream',
diff --git a/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet b/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet
index 7599f618..462e02fe 100644
--- a/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet
+++ b/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet
@@ -6,6 +6,7 @@ local defaults = {
   namespace: error 'must provide namespace',
   version: error 'must provide version',
   image: error 'must provide version',
+  kubeRbacProxyImage: error 'must provide kubeRbacProxyImage',
   resources: {
     requests: { cpu: '10m', memory: '190Mi' },
     limits: { cpu: '100m', memory: '250Mi' },
@@ -95,6 +96,7 @@ function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube-
       limits+: { cpu: '40m' },
       requests+: { cpu: '20m' },
     },
+    image: ksm._config.kubeRbacProxyImage
   }),
 
   local kubeRbacProxySelf = krp({
@@ -104,6 +106,7 @@ function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube-
     ports: [
       { name: 'https-self', containerPort: 9443 },
     ],
+    image: ksm._config.kubeRbacProxyImage,
   }),
 
   deployment+: {
diff --git a/jsonnet/kube-prometheus/components/node-exporter.libsonnet b/jsonnet/kube-prometheus/components/node-exporter.libsonnet
index 0f07f8af..30c8173b 100644
--- a/jsonnet/kube-prometheus/components/node-exporter.libsonnet
+++ b/jsonnet/kube-prometheus/components/node-exporter.libsonnet
@@ -6,6 +6,7 @@ local defaults = {
   namespace: error 'must provide namespace',
   version: error 'must provide version',
   image: error 'must provide version',
+  kubeRbacProxyImage: error 'must provide kubeRbacProxyImage',
   resources: {
     requests: { cpu: '102m', memory: '180Mi' },
     limits: { cpu: '250m', memory: '180Mi' },
@@ -200,6 +201,7 @@ function(params) {
       ports: [
         { name: 'https', containerPort: ne._config.port, hostPort: ne._config.port },
       ],
+      image: ne._config.kubeRbacProxyImage,
     }) + {
       env: [
         { name: 'IP', valueFrom: { fieldRef: { fieldPath: 'status.podIP' } } },
diff --git a/jsonnet/kube-prometheus/components/prometheus-operator.libsonnet b/jsonnet/kube-prometheus/components/prometheus-operator.libsonnet
index 7b6d0a33..4bb98b48 100644
--- a/jsonnet/kube-prometheus/components/prometheus-operator.libsonnet
+++ b/jsonnet/kube-prometheus/components/prometheus-operator.libsonnet
@@ -7,6 +7,7 @@ local defaults = {
   namespace: error 'must provide namespace',
   version: error 'must provide version',
   image: error 'must provide image',
+  kubeRbacProxyImage: error 'must provide kubeRbacProxyImage',
   configReloaderImage: error 'must provide config reloader image',
   resources: {
     limits: { cpu: '200m', memory: '200Mi' },
@@ -114,6 +115,7 @@ function(params)
       ports: [
         { name: 'https', containerPort: 8443 },
       ],
+      image: po._config.kubeRbacProxyImage,
     }),
 
     deployment+: {
diff --git a/jsonnet/kube-prometheus/main.libsonnet b/jsonnet/kube-prometheus/main.libsonnet
index 1c13b7b9..435c1acc 100644
--- a/jsonnet/kube-prometheus/main.libsonnet
+++ b/jsonnet/kube-prometheus/main.libsonnet
@@ -30,6 +30,7 @@ local platformPatch = import './platforms/platforms.libsonnet';
         prometheus: error 'must provide version',
         prometheusAdapter: error 'must provide version',
         prometheusOperator: error 'must provide version',
+        kubeRbacProxy: error 'must provide version',
       } + (import 'versions.json'),
       images: {
         alertmanager: 'quay.io/prometheus/alertmanager:v' + $.values.common.versions.alertmanager,
@@ -41,6 +42,7 @@ local platformPatch = import './platforms/platforms.libsonnet';
         prometheusAdapter: 'directxman12/k8s-prometheus-adapter:v' + $.values.common.versions.prometheusAdapter,
         prometheusOperator: 'quay.io/prometheus-operator/prometheus-operator:v' + $.values.common.versions.prometheusOperator,
         prometheusOperatorReloader: 'quay.io/prometheus-operator/prometheus-config-reloader:v' + $.values.common.versions.prometheusOperator,
+        kubeRbacProxy: 'quay.io/brancz/kube-rbac-proxy:v' + $.values.common.versions.kubeRbacProxy
       },
     },
     alertmanager: {
@@ -54,6 +56,7 @@ local platformPatch = import './platforms/platforms.libsonnet';
       namespace: $.values.common.namespace,
       version: $.values.common.versions.blackboxExporter,
       image: $.values.common.images.blackboxExporter,
+      kubeRbacProxyImage: $.values.common.images.kubeRbacProxy,
     },
     grafana: {
       namespace: $.values.common.namespace,
@@ -68,12 +71,14 @@ local platformPatch = import './platforms/platforms.libsonnet';
       version: $.values.common.versions.kubeStateMetrics,
       image: $.values.common.images.kubeStateMetrics,
       mixin+: { ruleLabels: $.values.common.ruleLabels },
+      kubeRbacProxyImage: $.values.common.images.kubeRbacProxy,
     },
     nodeExporter: {
       namespace: $.values.common.namespace,
       version: $.values.common.versions.nodeExporter,
       image: $.values.common.images.nodeExporter,
       mixin+: { ruleLabels: $.values.common.ruleLabels },
+      kubeRbacProxyImage: $.values.common.images.kubeRbacProxy,
     },
     prometheus: {
       namespace: $.values.common.namespace,
@@ -98,6 +103,7 @@ local platformPatch = import './platforms/platforms.libsonnet';
         'app.kubernetes.io/part-of': 'kube-prometheus',
       },
       mixin+: { ruleLabels: $.values.common.ruleLabels },
+      kubeRbacProxyImage: $.values.common.images.kubeRbacProxy,
     },
     kubernetesControlPlane: {
       namespace: $.values.common.namespace,
diff --git a/jsonnet/kube-prometheus/versions.json b/jsonnet/kube-prometheus/versions.json
index 72f91628..ca9e2368 100644
--- a/jsonnet/kube-prometheus/versions.json
+++ b/jsonnet/kube-prometheus/versions.json
@@ -6,5 +6,6 @@
   "nodeExporter": "1.1.2",
   "prometheus": "2.26.0",
   "prometheusAdapter": "0.8.4",
-  "prometheusOperator": "0.47.0"
-}
+  "prometheusOperator": "0.47.0",
+  "kubeRbacProxy": "0.8.0"
+}
\ No newline at end of file
-- 
GitLab