Skip to content

Commit 4f348be

Browse files
Merge pull request #70 from appuio/fix/maintenance-silence-rbac
Update RBAC for maintenance silence job to be compatible with OpenShift 4.16
2 parents 06cd0a2 + 9d823a8 commit 4f348be

File tree

2 files changed

+63
-1
lines changed

2 files changed

+63
-1
lines changed

component/silence.libsonnet

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,20 @@ local sa = kube.ServiceAccount('maintenance-silence') + namespace {
2020
automountServiceAccountToken: true,
2121
};
2222

23+
local cr = kube.ClusterRole('maintenance-silence-alertmanager-api') + namespace {
24+
rules: [
25+
{
26+
apiGroups: [ 'monitoring.coreos.com' ],
27+
resources: [
28+
'alertmanagers/api',
29+
],
30+
verbs: [
31+
'get',
32+
],
33+
},
34+
],
35+
};
36+
2337
local crb = kube.ClusterRoleBinding('maintenance-silence') + namespace {
2438
roleRef: {
2539
apiGroup: 'rbac.authorization.k8s.io',
@@ -35,6 +49,21 @@ local crb = kube.ClusterRoleBinding('maintenance-silence') + namespace {
3549
],
3650
};
3751

52+
local crb2 = kube.ClusterRoleBinding('maintenance-silence-alertmanager-api') + namespace {
53+
roleRef: {
54+
apiGroup: 'rbac.authorization.k8s.io',
55+
kind: 'ClusterRole',
56+
name: 'maintenance-silence-alertmanager-api',
57+
},
58+
subjects: [
59+
{
60+
kind: 'ServiceAccount',
61+
name: sa.metadata.name,
62+
namespace: sa.metadata.namespace,
63+
},
64+
],
65+
};
66+
3867
local cm = kube.ConfigMap('maintenance-silence') + namespace {
3968
data: {
4069
silence: importstr './scripts/silence.sh',
@@ -117,6 +146,6 @@ local ujh = kube._Object('managedupgrade.appuio.io/v1beta1', 'UpgradeJobHook', '
117146
} + com.makeMergeable(params.upgrade_silence.additional_job_configuration);
118147

119148
if enabled then
120-
[ sa, crb, cm, certcm, ujh ]
149+
[ sa, cr, crb, crb2, cm, certcm, ujh ]
121150
else
122151
{}

tests/golden/defaults/openshift-upgrade-controller/openshift-upgrade-controller/90_upgrade_silence.yaml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,22 @@ metadata:
99
namespace: appuio-openshift-upgrade-controller
1010
---
1111
apiVersion: rbac.authorization.k8s.io/v1
12+
kind: ClusterRole
13+
metadata:
14+
annotations: {}
15+
labels:
16+
name: maintenance-silence-alertmanager-api
17+
name: maintenance-silence-alertmanager-api
18+
namespace: appuio-openshift-upgrade-controller
19+
rules:
20+
- apiGroups:
21+
- monitoring.coreos.com
22+
resources:
23+
- alertmanagers/api
24+
verbs:
25+
- get
26+
---
27+
apiVersion: rbac.authorization.k8s.io/v1
1228
kind: ClusterRoleBinding
1329
metadata:
1430
annotations: {}
@@ -25,6 +41,23 @@ subjects:
2541
name: maintenance-silence
2642
namespace: appuio-openshift-upgrade-controller
2743
---
44+
apiVersion: rbac.authorization.k8s.io/v1
45+
kind: ClusterRoleBinding
46+
metadata:
47+
annotations: {}
48+
labels:
49+
name: maintenance-silence-alertmanager-api
50+
name: maintenance-silence-alertmanager-api
51+
namespace: appuio-openshift-upgrade-controller
52+
roleRef:
53+
apiGroup: rbac.authorization.k8s.io
54+
kind: ClusterRole
55+
name: maintenance-silence-alertmanager-api
56+
subjects:
57+
- kind: ServiceAccount
58+
name: maintenance-silence
59+
namespace: appuio-openshift-upgrade-controller
60+
---
2861
apiVersion: v1
2962
data:
3063
silence: |

0 commit comments

Comments
 (0)