blob: a94471640d29766c88aa6e12d00bc94cb90aa459 [file] [log] [blame]
Jeremy Ronquillo223db002020-06-05 10:28:22 -07001{{- /*
Jeremy Ronquilloec2d3e42020-06-05 11:33:39 -07002
Jeremy Ronquillo223db002020-06-05 10:28:22 -07003# Copyright 2019-present Open Networking Foundation
4#
Jeremy Ronquillo6046ce32020-06-18 11:06:29 -07005# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
Jeremy Ronquilloec2d3e42020-06-05 11:33:39 -07006
Jeremy Ronquillo223db002020-06-05 10:28:22 -07007*/ -}}
8
9{{/*
10Render a set of standardised label
11*/}}
12{{- define "accelleran-cbrs-common.metadata_labels" -}}
13{{- $application := index . 0 -}}
14{{- $context := index . 1 -}}
15release: {{ $context.Release.Name }}
16app: {{ $application }}
17{{- end -}}
18
19{{/*
20Render ServiceAccount, Role, and RoleBinding required for kubernetes-entrypoint.
21*/}}
22{{- define "accelleran-cbrs-common.service_account" -}}
23{{- $context := index . 1 -}}
24{{- $saName := index . 0 -}}
25{{- $saNamespace := $context.Release.Namespace }}
26---
27apiVersion: v1
28kind: ServiceAccount
29metadata:
30 name: {{ $saName }}
31 namespace: {{ $saNamespace }}
32 labels:
33{{ tuple $saName $context | include "accelleran-cbrs-common.metadata_labels" | indent 4 }}
34---
35apiVersion: rbac.authorization.k8s.io/v1beta1
36kind: RoleBinding
37metadata:
38 name: {{ $saName }}
39 namespace: {{ $saNamespace }}
40 labels:
41{{ tuple $saName $context | include "accelleran-cbrs-common.metadata_labels" | indent 4 }}
42roleRef:
43 apiGroup: rbac.authorization.k8s.io
44 kind: Role
45 name: {{ $saName }}
46subjects:
47 - kind: ServiceAccount
48 name: {{ $saName }}
49 namespace: {{ $saNamespace }}
50---
51apiVersion: rbac.authorization.k8s.io/v1beta1
52kind: Role
53metadata:
54 name: {{ $saName }}
55 namespace: {{ $saNamespace }}
56 labels:
57{{ tuple $saName $context | include "accelleran-cbrs-common.metadata_labels" | indent 4 }}
58rules:
59 - apiGroups:
60 - ""
61 - extensions
62 - batch
63 - apps
64 verbs:
65 - get
66 - list
67 - patch
68 resources:
69 - statefulsets
70 - daemonsets
71 - jobs
72 - pods
73 - services
74 - endpoints
75 - configmaps
Jeremy Ronquillo6046ce32020-06-18 11:06:29 -070076{{- end -}}