blob: 27181a20b9fd4d860d7355467da66c838ab29df0 [file] [log] [blame]
radex0776a792023-10-10 00:02:29 +02001local kube = import "../../../kube/kube.libsonnet";
2
3{
4 local createNamespaceRoleBinding(namespace, users) = kube.RoleBinding("admins") {
5 metadata+: {
6 namespace: namespace,
7 },
8 roleRef: {
9 apiGroup: "rbac.authorization.k8s.io",
10 kind: "ClusterRole",
11 name: "system:admin-namespace",
12 },
13 subjects: [
14 kube.User("%s@hackerspace.pl" % [user])
15 for user in users
16 ],
17 },
18 NamespaceAdmins: {
19 namespaces:: error "namespaces not set",
20 local namespaces = self.namespaces,
Serge Bazanskiab2e4702023-10-31 10:48:24 +000021 nsObjects: [
22 kube.Namespace(namespace)
23 for namespace in std.objectFields(namespaces)
24 ],
radex0776a792023-10-10 00:02:29 +020025 roleBindings: [
26 createNamespaceRoleBinding(namespace, namespaces[namespace])
27 for namespace in std.objectFields(namespaces)
28 ],
29 },
30}