[CELEBORN-2017][HELM] Add namespace to the metadata
### What changes were proposed in this pull request? - Add `namespace` to the object metadata for all namespace-scoped resources. - Update related Helm unit tests. - Bump chart `appVersion` to `0.5.4` since the Docker image with this tag has already been released. ### Why are the changes needed? - Improve the Helm charts. ### Does this PR introduce _any_ user-facing change? No. ### How was this patch tested? Run Helm unit tests by `helm unittest charts/celeborn --file "tests/**/*_test.yaml" --strict --debug`. Closes #3295 from ChenYi015/helm/namespace. Authored-by: Yi Chen <github@chenyicn.net> Signed-off-by: Shuang <lvshuang.xjs@alibaba-inc.com>
This commit is contained in:
parent
211046d0ec
commit
2e41877cda
@ -22,7 +22,7 @@ description: >
|
||||
Intermediate data typically include shuffle and spilled data.
|
||||
type: application
|
||||
version: 0.1.0
|
||||
appVersion: 0.4.0
|
||||
appVersion: 0.5.4
|
||||
keywords:
|
||||
- Apache Celeborn
|
||||
- Big Data
|
||||
|
||||
@ -67,43 +67,37 @@ app.kubernetes.io/name: {{ include "celeborn.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "celeborn.serviceAccountName" -}}
|
||||
{{/* Create the name of the service account to use. */}}
|
||||
{{- define "celeborn.serviceAccount.name" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "celeborn.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- .Values.serviceAccount.name | default (include "celeborn.fullname" .) }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- .Values.serviceAccount.name | default "default" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the role to use
|
||||
*/}}
|
||||
{{- define "celeborn.roleName" -}}
|
||||
{{/* Create the name of the role to use. */}}
|
||||
{{- define "celeborn.role.name" -}}
|
||||
{{- if .Values.rbac.create }}
|
||||
{{- default (include "celeborn.fullname" .) .Values.rbac.roleName }}
|
||||
{{- .Values.rbac.roleName | default (include "celeborn.fullname" .) }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.rbac.roleName }}
|
||||
{{- .Values.rbac.roleName | default "default" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the roleBinding to use
|
||||
*/}}
|
||||
{{- define "celeborn.roleBindingName" -}}
|
||||
{{- define "celeborn.roleBinding.name" -}}
|
||||
{{- if .Values.rbac.create }}
|
||||
{{- default (include "celeborn.fullname" .) .Values.rbac.roleBindingName }}
|
||||
{{- .Values.rbac.roleBindingName | default (include "celeborn.fullname" .) }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.rbac.roleBindingName }}
|
||||
{{- .Values.rbac.roleBindingName | default "default" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of configmap to use
|
||||
*/}}
|
||||
{{- define "celeborn.configMapName" -}}
|
||||
{{/* Create the name of configmap to use. */}}
|
||||
{{- define "celeborn.configMap.name" -}}
|
||||
{{ include "celeborn.fullname" . }}-conf
|
||||
{{- end -}}
|
||||
|
||||
|
||||
@ -18,7 +18,8 @@ limitations under the License.
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "celeborn.configMapName" . }}
|
||||
name: {{ include "celeborn.configMap.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.labels" . | nindent 4 }}
|
||||
data:
|
||||
|
||||
@ -21,6 +21,7 @@ apiVersion: monitoring.coreos.com/v1
|
||||
kind: PodMonitor
|
||||
metadata:
|
||||
name: {{ include "celeborn.master.podMonitor.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.master.labels" . | nindent 4 }}
|
||||
spec:
|
||||
|
||||
@ -20,6 +20,7 @@ apiVersion: scheduling.k8s.io/v1
|
||||
kind: PriorityClass
|
||||
metadata:
|
||||
name: {{ include "celeborn.master.priorityClass.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.master.labels" . | nindent 4 }}
|
||||
value: {{ .Values.master.priorityClass.value }}
|
||||
|
||||
@ -22,6 +22,7 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "celeborn.master.service.name" $ }}-{{ $i }}
|
||||
namespace: {{ $.Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.labels" $ | nindent 4 }}
|
||||
annotations:
|
||||
@ -50,6 +51,7 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "celeborn.master.service.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.master.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
|
||||
@ -19,6 +19,7 @@ apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
metadata:
|
||||
name: {{ include "celeborn.master.statefulSet.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.master.labels" . | nindent 4 }}
|
||||
spec:
|
||||
@ -138,7 +139,7 @@ spec:
|
||||
volumes:
|
||||
- name: celeborn-conf
|
||||
configMap:
|
||||
name: {{ include "celeborn.configMapName" . }}
|
||||
name: {{ include "celeborn.configMap.name" . }}
|
||||
defaultMode: 0444
|
||||
items:
|
||||
- key: celeborn-defaults.conf
|
||||
@ -171,7 +172,7 @@ spec:
|
||||
{{- with .Values.master.hostNetwork }}
|
||||
hostNetwork: {{ . }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "celeborn.serviceAccountName" . }}
|
||||
serviceAccountName: {{ include "celeborn.serviceAccount.name" . }}
|
||||
{{- with .Values.master.podSecurityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
|
||||
@ -19,9 +19,13 @@ limitations under the License.
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: {{ include "celeborn.roleName" . }}
|
||||
name: {{ include "celeborn.role.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.labels" . | nindent 4 }}
|
||||
rules: {{- toYaml .Values.rbac.rules | nindent 2 }}
|
||||
rules:
|
||||
- apiGroups: [""]
|
||||
resources: ["pods"]
|
||||
verbs: ["create", "list", "delete"]
|
||||
{{- end }}
|
||||
|
||||
|
||||
@ -19,15 +19,16 @@ limitations under the License.
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ include "celeborn.roleBindingName" . }}
|
||||
name: {{ include "celeborn.roleBinding.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.labels" . | nindent 4 }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "celeborn.serviceAccountName" . }}
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "celeborn.serviceAccount.name" . }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ include "celeborn.roleName" . }}
|
||||
name: {{ include "celeborn.role.name" . }}
|
||||
{{- end }}
|
||||
|
||||
|
||||
@ -19,7 +19,8 @@ limitations under the License.
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "celeborn.serviceAccountName" . }}
|
||||
name: {{ include "celeborn.serviceAccount.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.labels" . | nindent 4 }}
|
||||
{{- end }}
|
||||
|
||||
@ -21,6 +21,7 @@ apiVersion: monitoring.coreos.com/v1
|
||||
kind: PodMonitor
|
||||
metadata:
|
||||
name: {{ include "celeborn.worker.podMonitor.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.worker.labels" . | nindent 4 }}
|
||||
spec:
|
||||
|
||||
@ -20,6 +20,7 @@ apiVersion: scheduling.k8s.io/v1
|
||||
kind: PriorityClass
|
||||
metadata:
|
||||
name: {{ include "celeborn.worker.priorityClass.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.worker.labels" . | nindent 4 }}
|
||||
value: {{ .Values.worker.priorityClass.value }}
|
||||
|
||||
@ -19,6 +19,7 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "celeborn.worker.service.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.worker.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
|
||||
@ -19,6 +19,7 @@ apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
metadata:
|
||||
name: {{ include "celeborn.worker.statefulSet.name" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "celeborn.worker.labels" . | nindent 4 }}
|
||||
spec:
|
||||
@ -137,7 +138,7 @@ spec:
|
||||
volumes:
|
||||
- name: celeborn-conf
|
||||
configMap:
|
||||
name: {{ include "celeborn.configMapName" . }}
|
||||
name: {{ include "celeborn.configMap.name" . }}
|
||||
defaultMode: 0444
|
||||
items:
|
||||
- key: celeborn-defaults.conf
|
||||
@ -170,7 +171,7 @@ spec:
|
||||
{{- with .Values.worker.hostNetwork }}
|
||||
hostNetwork: {{ . }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "celeborn.serviceAccountName" . }}
|
||||
serviceAccountName: {{ include "celeborn.serviceAccount.name" . }}
|
||||
{{- with .Values.worker.podSecurityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should create configmap
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should not create master pod monitor without api version `monitoring.coreos.com/v1/PodMonitor` even if `podMonitor.enable` is true
|
||||
@ -44,6 +45,7 @@ tests:
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: PodMonitor
|
||||
name: celeborn-master-podmonitor
|
||||
namespace: celeborn
|
||||
|
||||
- it: Should use the specified pod metrics endpoints
|
||||
capabilities:
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should not create master priority as default
|
||||
@ -39,6 +40,7 @@ tests:
|
||||
apiVersion: scheduling.k8s.io/v1
|
||||
kind: PriorityClass
|
||||
name: celeborn-master-priority-class
|
||||
namespace: celeborn
|
||||
|
||||
- it: Should use the specified priority class value
|
||||
set:
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should create master service
|
||||
@ -30,6 +31,7 @@ tests:
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
name: celeborn-master-svc
|
||||
namespace: celeborn
|
||||
|
||||
- it: Should have label selectors for master
|
||||
asserts:
|
||||
|
||||
@ -22,8 +22,17 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should create master statefulset
|
||||
asserts:
|
||||
- containsDocument:
|
||||
apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
name: celeborn-master
|
||||
namespace: celeborn
|
||||
|
||||
- it: Should add extra pod annotations if `master.annotations` is specified
|
||||
set:
|
||||
master:
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should not create role if `rbac.create` is false
|
||||
@ -32,28 +33,18 @@ tests:
|
||||
- hasDocuments:
|
||||
count: 0
|
||||
|
||||
|
||||
- it: Should create a Role resource with specific rules when rbac.create is true
|
||||
set:
|
||||
rbac:
|
||||
create: true
|
||||
rbac:
|
||||
rules:
|
||||
- apiGroups: [ "" ]
|
||||
resources: [ "pods" ]
|
||||
verbs: [ "get", "watch", "list" ]
|
||||
- apiGroups: [""]
|
||||
resources: ["pods"]
|
||||
verbs: ["get", "watch", "list"]
|
||||
asserts:
|
||||
- containsDocument:
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: celeborn-role
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods
|
||||
verbs:
|
||||
- get
|
||||
- watch
|
||||
- list
|
||||
name: default
|
||||
namespace: celeborn
|
||||
|
||||
@ -22,9 +22,10 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should not create a RoleBinding resource when rbac.create is false
|
||||
- it: Should not create a RoleBinding resource when `rbac.create` is false
|
||||
set:
|
||||
rbac:
|
||||
create: false
|
||||
@ -32,7 +33,7 @@ tests:
|
||||
- hasDocuments:
|
||||
count: 0
|
||||
|
||||
- it: Should create a RoleBinding resource when rbac.create is true
|
||||
- it: Should create a RoleBinding resource when `rbac.create` is true
|
||||
set:
|
||||
rbac:
|
||||
create: true
|
||||
@ -40,12 +41,5 @@ tests:
|
||||
- containsDocument:
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: celeborn-rolebinding
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: default
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: celeborn-role
|
||||
name: default
|
||||
namespace: celeborn
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should not create service account if `serviceAccount.create` is false
|
||||
@ -40,4 +41,17 @@ tests:
|
||||
- containsDocument:
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
name: default
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
- it: Should create service account with the specified name if `serviceAccount.name` is specified
|
||||
set:
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: test-service-account
|
||||
asserts:
|
||||
- containsDocument:
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
name: test-service-account
|
||||
namespace: celeborn
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should not create worker pod monitor without api version `monitoring.coreos.com/v1/PodMonitor` even if `podMonitor.enable` is true
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should not create worker priority as default
|
||||
@ -39,6 +40,7 @@ tests:
|
||||
apiVersion: scheduling.k8s.io/v1
|
||||
kind: PriorityClass
|
||||
name: celeborn-worker-priority-class
|
||||
namespace: celeborn
|
||||
|
||||
- it: Should use the specified priority class value
|
||||
set:
|
||||
|
||||
@ -22,6 +22,7 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should create worker service
|
||||
@ -30,6 +31,7 @@ tests:
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
name: celeborn-worker-svc
|
||||
namespace: celeborn
|
||||
|
||||
- it: Should have label selectors for worker
|
||||
asserts:
|
||||
|
||||
@ -22,8 +22,17 @@ templates:
|
||||
|
||||
release:
|
||||
name: celeborn
|
||||
namespace: celeborn
|
||||
|
||||
tests:
|
||||
- it: Should create worker statefulset
|
||||
asserts:
|
||||
- containsDocument:
|
||||
apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
name: celeborn-worker
|
||||
namespace: celeborn
|
||||
|
||||
- it: Should add extra pod annotations if `worker.annotations` is specified
|
||||
set:
|
||||
worker:
|
||||
|
||||
@ -41,28 +41,6 @@ image:
|
||||
# -- Image pull secrets for private image registry
|
||||
imagePullSecrets: []
|
||||
|
||||
service:
|
||||
# -- Specifies service type
|
||||
type: ClusterIP
|
||||
# -- Specifies service port
|
||||
port: 9097
|
||||
# -- Specifies service annotations
|
||||
annotations: {}
|
||||
|
||||
# -- Specifies whether to create additional NodePort service for each master replica
|
||||
additionalNodePortServicePerReplica:
|
||||
enabled: false
|
||||
# -- Specifies service port
|
||||
port: 9097
|
||||
# -- Specifies nodeport start range
|
||||
nodePortStartRange: 30000
|
||||
# -- when using NodePort service type, you can specify map of annotations for each master replica
|
||||
annotations: {}
|
||||
|
||||
cluster:
|
||||
# -- Specifies Kubernetes cluster name
|
||||
name: cluster
|
||||
|
||||
# -- Celeborn configurations.
|
||||
# Ref: [Configuration - Apache Celeborn](https://celeborn.apache.org/docs/latest/configuration).
|
||||
celeborn:
|
||||
@ -416,6 +394,43 @@ worker:
|
||||
# limits:
|
||||
# storage: 100Gi
|
||||
|
||||
serviceAccount:
|
||||
# -- Whether to create a service account for Celeborn.
|
||||
create: false
|
||||
# -- (Optional) Name of the Celeborn service account.
|
||||
name: ""
|
||||
|
||||
rbac:
|
||||
create: true
|
||||
roleName: default
|
||||
roleBindingName: default
|
||||
rules:
|
||||
- apiGroups: [""]
|
||||
resources: ["pods"]
|
||||
verbs: ["create", "list", "delete"]
|
||||
|
||||
service:
|
||||
# -- Specifies service type
|
||||
type: ClusterIP
|
||||
# -- Specifies service port
|
||||
port: 9097
|
||||
# -- Specifies service annotations
|
||||
annotations: {}
|
||||
|
||||
# -- Specifies whether to create additional NodePort service for each master replica
|
||||
additionalNodePortServicePerReplica:
|
||||
enabled: false
|
||||
# -- Specifies service port
|
||||
port: 9097
|
||||
# -- Specifies nodeport start range
|
||||
nodePortStartRange: 30000
|
||||
# -- when using NodePort service type, you can specify map of annotations for each master replica
|
||||
annotations: {}
|
||||
|
||||
cluster:
|
||||
# -- Specifies Kubernetes cluster name
|
||||
name: cluster
|
||||
|
||||
podMonitor:
|
||||
# -- Specifies whether to enable creating pod monitors for Celeborn pods
|
||||
enable: true
|
||||
@ -427,18 +442,3 @@ podMonitor:
|
||||
interval: 5s
|
||||
# Specifies port name
|
||||
portName: metrics
|
||||
|
||||
serviceAccount:
|
||||
# -- Specifies whether to create a service account for Celeborn
|
||||
create: false
|
||||
# -- Specifies the name of the service account
|
||||
name: default
|
||||
|
||||
rbac:
|
||||
create: true
|
||||
roleName: default
|
||||
roleBindingName: default
|
||||
rules:
|
||||
- apiGroups: [""]
|
||||
resources: ["pods"]
|
||||
verbs: ["create", "list", "delete"]
|
||||
|
||||
Loading…
Reference in New Issue
Block a user