Skip to content
Snippets Groups Projects
Verified Commit 46335b2b authored by Rafael László's avatar Rafael László :speech_balloon:
Browse files

Add priority classes chart

parent 73c4950d
No related branches found
No related tags found
No related merge requests found
Pipeline #38957 passed
apiVersion: v1
name: priority-classes
version: 1.0.0
appVersion: 1.0.0
description: Kubernetes additional priority classes
keywords:
- k8s
- priorityClass
# https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/
{{ $Dot := . }}
{{- range .Values.priorityClasses }}
apiVersion: scheduling.k8s.io/v1
kind: PriorityClass
metadata:
name: {{ .name }}
labels:
{{- include "priority-classes.labels" $Dot | nindent 4 }}
value: {{ .value }}
globalDefault: {{ .globalDefault | default false }}
description: {{ .description | quote }}
---
{{- end }}
{{/*
Expand the name of the chart.
*/}}
{{- define "priority-classes.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "priority-classes.fullname" -}}
{{- if .Values.fullnameOverride }}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
{{- end }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "priority-classes.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "priority-classes.labels" -}}
helm.sh/chart: {{ include "priority-classes.chart" . }}
{{ include "priority-classes.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "priority-classes.selectorLabels" -}}
app.kubernetes.io/name: {{ include "priority-classes.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "priority-classes.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "priority-classes.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}
\ No newline at end of file
#!/bin/bash
../helm-upgrade.sh priority-classes kube-system
priorityClasses:
- name: infra-critical
value: "1000000"
globalDefault: false
description: "This priority class should be used for critical infra components."
- name: infra-monitoring
value: "950000"
globalDefault: false
description: "This priority class should be used for infra monitoring components."
- name: infra-addon
value: "900000"
globalDefault: false
description: "This priority class should be used for infra addon components."
File added
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment