Skip to content

Commit

Permalink
Add support for priorityClassName (hashicorp#165)
Browse files Browse the repository at this point in the history
* Add support for priorityClassName

* Add unit tests

* Remove comment

* Update comment, accidentally deleted comment

* Remove whitespace
  • Loading branch information
bycEEE authored May 5, 2020
1 parent 24b1363 commit 2af6f9b
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 0 deletions.
3 changes: 3 additions & 0 deletions templates/injector-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,9 @@ spec:
periodSeconds: 2
successThreshold: 1
timeoutSeconds: 5
{{- if .Values.injector.priorityClassName }}
priorityClassName: {{ .Values.injector.priorityClassName }}
{{- end }}
{{- if .Values.injector.certs.secretName }}
volumeMounts:
- name: webhook-certs
Expand Down
3 changes: 3 additions & 0 deletions templates/server-statefulset.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,9 @@ spec:
{{- if .Values.server.extraContainers }}
{{ toYaml .Values.server.extraContainers | nindent 8}}
{{- end }}
{{- if .Values.server.priorityClassName }}
priorityClassName: {{ .Values.server.priorityClassName }}
{{- end }}
{{- if .Values.global.imagePullSecrets }}
imagePullSecrets:
{{- toYaml .Values.global.imagePullSecrets | nindent 8 }}
Expand Down
23 changes: 23 additions & 0 deletions test/unit/server-statefulset.bats
Original file line number Diff line number Diff line change
Expand Up @@ -872,6 +872,29 @@ load _helpers
[[ "${actual}" = *"foobar"* ]]
}

#--------------------------------------------------------------------
# priorityClassName

@test "server/standalone-StatefulSet: priorityClassName disabled by default" {
cd `chart_dir`
local actual=$(helm template \
-x templates/server-statefulset.yaml \
. | tee /dev/stderr |
yq -r '.spec.template.spec.priorityClassName' | tee /dev/stderr)

[ "${actual}" = "null" ]
}

@test "server/standalone-StatefulSet: priorityClassName enabled" {
cd `chart_dir`
local actual=$(helm template \
-x templates/server-statefulset.yaml \
--set 'server.priorityClassName=foo' \
. | tee /dev/stderr |
yq -r '.spec.template.spec.priorityClassName' | tee /dev/stderr)

[ "${actual}" = "foo" ]

#--------------------------------------------------------------------
# preStop
@test "server/standalone-StatefulSet: preStop sleep duration default" {
Expand Down
11 changes: 11 additions & 0 deletions values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,11 @@ injector:
# memory: 256Mi
# cpu: 250m

# priorityClassName launches injector pods with a priority class.
# See: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
# for more details.
priorityClassName: null

# extraEnvironmentVars is a list of extra enviroment variables to set in the
# injector deployment.
extraEnvironmentVars: {}
Expand Down Expand Up @@ -131,6 +136,12 @@ server:
# cpu: 250m

# Ingress allows ingress services to be created to allow external access
# priorityClassName launches server pods with a priority class.
# See: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
# for more details.
priorityClassName: null

# Ingress allows ingress services to be created to allow external access
# from Kubernetes to access Vault pods.
ingress:
enabled: false
Expand Down

0 comments on commit 2af6f9b

Please sign in to comment.