From 1435c4cafb7ce1f17afeb7a064c82cb33d34d486 Mon Sep 17 00:00:00 2001 From: Khaliq Date: Sat, 31 Aug 2024 01:08:37 +0800 Subject: [PATCH] feat: add drl exporter chart --- charts/drl-exporter/.gitignore | 58 +++++++ charts/drl-exporter/.helmignore | 23 +++ charts/drl-exporter/Chart.yaml | 15 ++ charts/drl-exporter/README.md | 62 +++++++ charts/drl-exporter/README.md.gotmpl | 21 +++ charts/drl-exporter/templates/NOTES.txt | 10 ++ charts/drl-exporter/templates/_helpers.tpl | 84 ++++++++++ charts/drl-exporter/templates/_pod.tpl | 86 ++++++++++ charts/drl-exporter/templates/deployment.yaml | 23 +++ charts/drl-exporter/templates/secrets.yaml | 14 ++ charts/drl-exporter/templates/service.yaml | 16 ++ .../templates/serviceaccount.yaml | 8 + .../templates/servicemonitor.yaml | 40 +++++ charts/drl-exporter/values.yaml | 155 ++++++++++++++++++ 14 files changed, 615 insertions(+) create mode 100644 charts/drl-exporter/.gitignore create mode 100644 charts/drl-exporter/.helmignore create mode 100644 charts/drl-exporter/Chart.yaml create mode 100644 charts/drl-exporter/README.md create mode 100644 charts/drl-exporter/README.md.gotmpl create mode 100644 charts/drl-exporter/templates/NOTES.txt create mode 100644 charts/drl-exporter/templates/_helpers.tpl create mode 100644 charts/drl-exporter/templates/_pod.tpl create mode 100644 charts/drl-exporter/templates/deployment.yaml create mode 100644 charts/drl-exporter/templates/secrets.yaml create mode 100644 charts/drl-exporter/templates/service.yaml create mode 100644 charts/drl-exporter/templates/serviceaccount.yaml create mode 100644 charts/drl-exporter/templates/servicemonitor.yaml create mode 100644 charts/drl-exporter/values.yaml diff --git a/charts/drl-exporter/.gitignore b/charts/drl-exporter/.gitignore new file mode 100644 index 0000000..b9b92dc --- /dev/null +++ b/charts/drl-exporter/.gitignore @@ -0,0 +1,58 @@ +# Useful `.gitignore` templates: +# https://github.com/github/gitignore + +# ---------------------------------------------------------------------- +# | Linux | +# ---------------------------------------------------------------------- + +*~ +_local +dist +site +.choco + + +# ---------------------------------------------------------------------- +# | Miscellaneous | +# ---------------------------------------------------------------------- + +# Node.js, npm, and yarn. + +node_modules +npm-debug.log* +yarn-debug.log* +yarn-error.log* + + +# ---------------------------------------------------------------------- +# | macOS | +# ---------------------------------------------------------------------- + +._* +.AppleDouble +.DS_Store +.localized +.LSOverride +.Spotlight-V100 +.Trashes + + +# ---------------------------------------------------------------------- +# | Vim | +# ---------------------------------------------------------------------- + +%* +*.sw[a-z] +*.un~ +.netrwhist +Session.vim + + +# ---------------------------------------------------------------------- +# | Windows | +# ---------------------------------------------------------------------- + +Desktop.ini +ehthumbs.db +Thumbs.db + diff --git a/charts/drl-exporter/.helmignore b/charts/drl-exporter/.helmignore new file mode 100644 index 0000000..46fd899 --- /dev/null +++ b/charts/drl-exporter/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +# OWNERS file for Kubernetes +OWNERS diff --git a/charts/drl-exporter/Chart.yaml b/charts/drl-exporter/Chart.yaml new file mode 100644 index 0000000..5054077 --- /dev/null +++ b/charts/drl-exporter/Chart.yaml @@ -0,0 +1,15 @@ +apiVersion: v2 +name: drl-exporter +version: 0.1.1 +description: Prometheus exporter for dockerhub rate limits +type: application +keywords: + - prometheus + - exporter + - dockerhub +home: https://charts.lmno.pk +maintainers: + - name: Abdul Khaliq + email: a.khaliq@outlook.my + url: https://github.com/kha7iq/charts +appVersion: 2.1.2 \ No newline at end of file diff --git a/charts/drl-exporter/README.md b/charts/drl-exporter/README.md new file mode 100644 index 0000000..74e5319 --- /dev/null +++ b/charts/drl-exporter/README.md @@ -0,0 +1,62 @@ +# Rate Limit Exporter + +### This chart can be used to deploy [DRL Exporter](https://github.com/kha7iq/drl-exporter). + +![Version: 0.1.1](https://img.shields.io/badge/Version-0.1.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.1.2](https://img.shields.io/badge/AppVersion-2.1.2-informational?style=flat-square) + +## Installing the Chart + +To install the chart with the release name `drl-exporter` + +```console +$ helm repo add lmno http://charts.lmno.pk +$ helm install drl-exporter lmno/drl-exporter +``` + +## Values + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| affinity | object | `{}` | Configure [affinity and anti-affinity](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity). | +| args | list | `[]` | Override default image arguments. | +| command | list | `[]` | Override default image command. | +| dnsConfig | object | `{}` | Specify a custom dns config [dnsConfig](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config). | +| dnsPolicy | string | `"ClusterFirst"` | Specify dns policy [dnsPolicy](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy). | +| env | list | `[]` | Define environment variables. | +| envFrom | list | `[]` | Define environment variables from existing ConfigMap or Secret data. | +| exporter.auth.dockerHubPassword | string | `""` | Dockerhub passowrd | +| exporter.auth.dockerHubUsername | string | `""` | Dockerhub username | +| exporter.auth.enableFileAuth | object | `{"configFileLocation":"","enabled":false}` | Docker config file based authentication | +| exporter.auth.enableFileAuth.configFileLocation | string | `""` | Config file location | +| exporter.auth.enableFileAuth.enabled | bool | `false` | Enable file based authentication | +| exporter.auth.enabled | bool | `false` | Enable/disable authentication for given account | +| exporter.listenPort | int | `2121` | | +| global.commonLabels | object | `{}` | Apply labels to all resources. | +| global.fullnameOverride | string | `""` | Override the fully qualified app name. | +| global.nameOverride | string | `""` | Override the name of the app. | +| image.name | string | `"khaliq/drl-exporter"` | Specify the image name to use (relative to `image.repository`). | +| image.pullPolicy | string | `"Always"` | Specify the [pullPolicy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy). | +| image.pullSecrets | list | `[]` | Specify the image pull secrets if pulling from private registry [imagePullSecrets](https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod). | +| image.repository | string | `"docker.io"` | Specify the image repository to use. | +| image.tag | string | `"latest"` | Specify the image tag to use. ( latest or specific release ) | +| lifecycle | object | `{}` | Specify lifecycle hooks for Containers. | +| livenessProbe | object | `{}` | Specify the livenessProbe [configuration](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes). | +| nodeSelector | object | `{}` | Configure [nodeSelector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector). | +| podAnnotations | object | `{}` | Set annotations on Pods. | +| podHostNetwork | bool | `false` | Enable the hostNetwork option on Pods. | +| podLabels | object | `{}` | Set labels on Pods. | +| podPriorityClassName | string | `""` | Set the [priorityClassName](https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass). | +| readinessProbe | object | `{}` | Specify the readinessProbe [configuration](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes). | +| resources | object | `{"limits":{"cpu":"500m","memory":"256Mi"},"requests":{"cpu":"100m","memory":"128Mi"}}` | Specify resource requests and limits. | +| serviceAccount.create | bool | `true` | | +| serviceMonitor.enabled | bool | `false` | | +| serviceMonitor.interval | string | `"1m"` | | +| serviceMonitor.labels | object | `{}` | | +| serviceMonitor.path | string | `"/metrics"` | | +| serviceMonitor.relabelings | list | `[]` | | +| serviceMonitor.scheme | string | `"http"` | | +| serviceMonitor.scrapeTimeout | string | `"30s"` | | +| serviceMonitor.tlsConfig | object | `{}` | | +| tolerations | list | `[]` | Configure [taints and tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/). | +| topologySpreadConstraints | list | `[]` | Configure [topology spread constraints](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/). | + diff --git a/charts/drl-exporter/README.md.gotmpl b/charts/drl-exporter/README.md.gotmpl new file mode 100644 index 0000000..0302b0d --- /dev/null +++ b/charts/drl-exporter/README.md.gotmpl @@ -0,0 +1,21 @@ +# Rate Limit Exporter + +### This chart can be used to deploy [DRL Exporter](https://github.com/kha7iq/drl-exporter). + +{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }} + + + +## Installing the Chart + +To install the chart with the release name `drl-exporter` + +```console +$ helm repo add lmno http://charts.lmno.pk +$ helm install drl-exporter lmno/{{ template "chart.name" . }} +``` + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesSection" . }} + diff --git a/charts/drl-exporter/templates/NOTES.txt b/charts/drl-exporter/templates/NOTES.txt new file mode 100644 index 0000000..fddaec2 --- /dev/null +++ b/charts/drl-exporter/templates/NOTES.txt @@ -0,0 +1,10 @@ + + +Thank you for installing {{ .Chart.Name }}, your release {{ .Release.Name }} is deployed. + +************************************************************************************ +*** PLEASE BE PATIENT: It may take a little while for the release to be available. *** +************************************************************************************ + +To watch the status of service run: +kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "drl.fullname" . }} \ No newline at end of file diff --git a/charts/drl-exporter/templates/_helpers.tpl b/charts/drl-exporter/templates/_helpers.tpl new file mode 100644 index 0000000..7ee9ee3 --- /dev/null +++ b/charts/drl-exporter/templates/_helpers.tpl @@ -0,0 +1,84 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "drl.name" -}} +{{- default .Chart.Name .Values.global.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate strings at 63 characters because some Kubernetes name fields are limited to this (by the DNS naming spec). +If the release name contains a chart name it will be used as a full name. +*/}} +{{- define "drl.fullname" -}} +{{- if .Values.global.fullnameOverride }} +{{- .Values.global.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.global.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 "drl.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + + +{{/* +Common template labels. +*/}} +{{- define "drl.template-labels" -}} +app.kubernetes.io/name: {{ include "drl.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Common labels. +*/}} +{{- define "drl.labels" -}} +helm.sh/chart: {{ include "drl.chart" . }} +{{ include "drl.template-labels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Values.image.tag | quote }} +{{- end }} +{{- if .Values.global.commonLabels }} +{{ toYaml .Values.global.commonLabels }} +{{- end }} +{{- end -}} + + +{{/* +Selector labels +*/}} +{{- define "drl.selectorLabels" -}} +app.kubernetes.io/name: {{ include "drl.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + + +{{/* +Return the target Kubernetes version +*/}} +{{- define "drl.kubeVersion" -}} + {{- .Capabilities.KubeVersion.Version -}} +{{- end -}} + +{{/* +Return the appropriate apiVersion for deployment. +*/}} +{{- define "drl.deployment.apiVersion" -}} +{{- if semverCompare "<1.14-0" (include "drl.kubeVersion" .) -}} +{{- print "extensions/v1beta1" -}} +{{- else -}} +{{- print "apps/v1" -}} +{{- end -}} +{{- end -}} diff --git a/charts/drl-exporter/templates/_pod.tpl b/charts/drl-exporter/templates/_pod.tpl new file mode 100644 index 0000000..9634241 --- /dev/null +++ b/charts/drl-exporter/templates/_pod.tpl @@ -0,0 +1,86 @@ +{{/* +Defines the PodSpec for exporter. +*/}} +{{- define "drl.pod" -}} +{{- if .Values.podHostNetwork }} +hostNetwork: {{ .Values.podHostNetwork }} +{{- end }} +{{- if .Values.podPriorityClassName }} +priorityClassName: {{ .Values.podPriorityClassName }} +{{- end }} +{{- if .Values.dnsPolicy }} +dnsPolicy: {{ .Values.dnsPolicy }} +{{- end }} +{{- if .Values.dnsConfig }} +dnsConfig: {{ toYaml .Values.dnsConfig | nindent 2 }} +{{- end }} +{{- if .Values.image.pullSecrets }} +imagePullSecrets: {{ toYaml .Values.image.pullSecrets | nindent 2 }} +{{- end }} +containers: + - name: drl-exporter + image: "{{ .Values.image.repository }}/{{ .Values.image.name }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} +{{- if .Values.serviceAccount.create }} + serviceAccountName: {{ include "drl.fullname" . }} +{{- end }} + ports: + - name: http + containerPort: {{ default "2121" .Values.exporter.listenPort }} + protocol: TCP +{{- if .Values.command }} + command: {{ .Values.command }} +{{- end }} +{{- if .Values.args }} + args: {{ toYaml .Values.args | nindent 6 }} +{{- end }} + env: + - name: EXPORTER_PORT + value: {{ default 2121 .Values.exporter.listenPort | quote }} +{{- if .Values.exporter.auth.enabled -}} + - name: DOCKERHUB_PASSWORD + valueFrom: + secretKeyRef: + name: {{ include "drl.fullname" . }}-secrets + key: dockerhub-password + - name: DOCKERHUB_USER + valueFrom: + secretKeyRef: + name: {{ include "drl.fullname" . }}-secrets + key: dockerhub-username +{{- end }} +{{- if .Values.exporter.auth.enabled -}} + - name: FILE_AUTH_DIR + valueF: {{ default "/config" .Values.exporter.auth.enableFileAuth.configFileLocation | quote }} +{{- end }} +{{- if .Values.env }} +{{ toYaml .Values.env | indent 4 }} +{{- end }} +{{- if .Values.envFrom }} + envFrom: {{ toYaml .Values.envFrom | nindent 6 }} +{{- end }} +{{- if .Values.livenessProbe }} + livenessProbe: {{ toYaml .Values.livenessProbe | trim | nindent 6 }} +{{- end }} +{{- if .Values.readinessProbe }} + readinessProbe: {{ toYaml .Values.readinessProbe | trim | nindent 6 }} +{{- end }} +{{- if .Values.resources }} + resources: {{ toYaml .Values.resources | nindent 6 }} +{{- end }} +{{- if .Values.lifecycle }} + lifecycle: {{ toYaml .Values.lifecycle | nindent 6 }} +{{- end }} +{{- if .Values.nodeSelector }} +nodeSelector: {{ toYaml .Values.nodeSelector | nindent 2 }} +{{- end }} +{{- if .Values.affinity }} +affinity: {{ toYaml .Values.affinity | nindent 2 }} +{{- end }} +{{- if .Values.tolerations }} +tolerations: {{ toYaml .Values.tolerations | nindent 2 }} +{{- end }} +{{- if .Values.topologySpreadConstraints }} +topologySpreadConstraints: {{ toYaml .Values.topologySpreadConstraints | nindent 2 }} +{{- end }} +{{- end }} \ No newline at end of file diff --git a/charts/drl-exporter/templates/deployment.yaml b/charts/drl-exporter/templates/deployment.yaml new file mode 100644 index 0000000..df15e8a --- /dev/null +++ b/charts/drl-exporter/templates/deployment.yaml @@ -0,0 +1,23 @@ +apiVersion: {{ include "drl.deployment.apiVersion" . }} +kind: Deployment +metadata: + name: {{ include "drl.fullname" . }} + namespace: {{ .Release.Namespace }} + labels: {{ include "drl.labels" . | nindent 4 }} +spec: + replicas: 1 + selector: + matchLabels: + {{- include "drl.template-labels" . | nindent 6 }} + template: + metadata: + labels: {{ include "drl.template-labels" . | nindent 8 }} + {{- if .Values.podLabels }} +{{ toYaml .Values.podLabels | indent 8 }} + {{- end }} + annotations: + checksum/secret: {{ tpl (toYaml .Values.exporter.auth.dockerHubPassword) . | sha256sum }} + {{- if .Values.podAnnotations }} +{{ tpl (toYaml .Values.podAnnotations) . | indent 8 }} + {{- end }} + spec: {{ include "drl.pod" . | nindent 6 }} diff --git a/charts/drl-exporter/templates/secrets.yaml b/charts/drl-exporter/templates/secrets.yaml new file mode 100644 index 0000000..07e816a --- /dev/null +++ b/charts/drl-exporter/templates/secrets.yaml @@ -0,0 +1,14 @@ +{{- if .Values.exporter.auth.enabled -}} +apiVersion: v1 +kind: Secret +metadata: + name: {{ include "drl.fullname" . }}-secrets + namespace: {{ .Release.Namespace }} + labels: {{ include "drl.labels" . | nindent 4 }} + annotations: + checksum/secret: {{ tpl (toYaml .Values.exporter.auth.dockerHubPassword) . | sha256sum }} +type: Opaque +data: + dockerhub-username: {{ .Values.exporter.auth.dockerHubUsername | b64enc | quote }} + dockerhub-password: {{ .Values.exporter.auth.dockerHubPassword | b64enc | quote }} +{{- end }} \ No newline at end of file diff --git a/charts/drl-exporter/templates/service.yaml b/charts/drl-exporter/templates/service.yaml new file mode 100644 index 0000000..5241e34 --- /dev/null +++ b/charts/drl-exporter/templates/service.yaml @@ -0,0 +1,16 @@ + +apiVersion: v1 +kind: Service +metadata: + name: {{ include "drl.fullname" . }} + namespace: {{ .Release.Namespace }} + labels: {{ include "drl.labels" . | nindent 4 }} +spec: + type: ClusterIP + ports: + - name: http + port: {{ default 2121 .Values.exporter.listenPort }} + protocol: TCP + targetPort: {{ .Values.exporter.listenPort }} + selector: + {{- include "drl.selectorLabels" . | nindent 4 }} diff --git a/charts/drl-exporter/templates/serviceaccount.yaml b/charts/drl-exporter/templates/serviceaccount.yaml new file mode 100644 index 0000000..5124ae3 --- /dev/null +++ b/charts/drl-exporter/templates/serviceaccount.yaml @@ -0,0 +1,8 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "drl.fullname" . }} + namespace: {{ .Release.Namespace }} + labels: {{ include "drl.labels" . | nindent 4 }} +{{- end }} diff --git a/charts/drl-exporter/templates/servicemonitor.yaml b/charts/drl-exporter/templates/servicemonitor.yaml new file mode 100644 index 0000000..7f128ae --- /dev/null +++ b/charts/drl-exporter/templates/servicemonitor.yaml @@ -0,0 +1,40 @@ +{{- if .Values.serviceMonitor.enabled }} +--- +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: {{ template "drl.fullname" . }} + {{- if .Values.serviceMonitor.namespace }} + namespace: {{ .Values.serviceMonitor.namespace }} + {{- end }} + labels: + {{- include "drl.labels" . | nindent 4 }} + {{- if .Values.serviceMonitor.labels }} + {{- toYaml .Values.serviceMonitor.labels | nindent 4 }} + {{- end }} +spec: + endpoints: + - interval: {{ .Values.serviceMonitor.interval }} + {{- if .Values.serviceMonitor.scrapeTimeout }} + scrapeTimeout: {{ .Values.serviceMonitor.scrapeTimeout }} + {{- end }} + honorLabels: true + port: http + path: {{ .Values.serviceMonitor.path }} + scheme: {{ .Values.serviceMonitor.scheme }} + {{- if .Values.serviceMonitor.tlsConfig }} + tlsConfig: + {{- toYaml .Values.serviceMonitor.tlsConfig | nindent 6 }} + {{- end }} + {{- if .Values.serviceMonitor.relabelings }} + relabelings: + {{- toYaml .Values.serviceMonitor.relabelings | nindent 4 }} + {{- end }} + jobLabel: "{{ .Release.Name }}" + selector: + matchLabels: + {{- include "drl.selectorLabels" . | nindent 8 }} + namespaceSelector: + matchNames: + - {{ .Release.Namespace }} +{{- end }} diff --git a/charts/drl-exporter/values.yaml b/charts/drl-exporter/values.yaml new file mode 100644 index 0000000..9769ec7 --- /dev/null +++ b/charts/drl-exporter/values.yaml @@ -0,0 +1,155 @@ +# Global values +global: + # -- Override the name of the app. + nameOverride: "" + # -- Override the fully qualified app name. + fullnameOverride: "" + # -- Apply labels to all resources. + commonLabels: {} + # enviornment: production + +image: + # -- Specify the image name to use (relative to `image.repository`). + name: khaliq/drl-exporter + # -- Specify the image tag to use. ( latest or specific release ) + tag: latest + # -- Specify the image repository to use. + repository: docker.io + # -- Specify the + # [pullPolicy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy). + pullPolicy: Always + # -- Specify the image pull secrets if pulling from private registry + # [imagePullSecrets](https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod). + pullSecrets: [] + # - name: + +exporter: + # exporter.listerPort -- Server listen port + listenPort: 2121 + + auth: + # exporter.auth.enabled -- Enable/disable authentication for given account + enabled: false + # exporter.auth.dockerHubUsername -- Dockerhub username + dockerHubUsername: "" + # exporter.auth.dockerHubPassword -- Dockerhub passowrd + dockerHubPassword: "" + # exporter.auth.enableFileAuth -- Docker config file based authentication + enableFileAuth: + # exporter.auth.enableFileAuth.enabled -- Enable file based authentication + enabled: false + # -- Config file location + configFileLocation: "" + + # Service account +serviceAccount: + # Specifies whether a service account should be created + create: true + + +# -- Define environment variables. +env: [] +# - name: ENABLE_IPV6 +# value: true + +serviceMonitor: + ## If true, a ServiceMonitor CRD is created for a prometheus operator + ## https://github.com/coreos/prometheus-operator + ## + enabled: false + path: /metrics + # namespace: monitoring (defaults to use the namespace this chart is deployed to) + labels: {} + interval: 1m + scheme: http + tlsConfig: {} + scrapeTimeout: 30s + relabelings: [] + +# -- Define environment variables from existing ConfigMap or Secret data. +envFrom: [] +# - configMapRef: +# name: +# - secretRef: +# name: + + +# -- Set annotations on Pods. +podAnnotations: {} + +# -- Set labels on Pods. +podLabels: {} + +# podPriorityClassName -- Set the +# [priorityClassName](https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass). +podPriorityClassName: "" + +# -- Enable the hostNetwork option on Pods. +podHostNetwork: false + + +# -- Override default image command. +command: [] + +# -- Override default image arguments. +args: [] + +# -- Specify resource requests and limits. +resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 500m + memory: 256Mi + +# -- Specify lifecycle hooks for Containers. +lifecycle: {} + # preStop: + # exec: + # command: + # - /bin/sleep + # - "10" + + +# -- Configure +# [nodeSelector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector). +nodeSelector: {} + +# -- Configure +# [taints and tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/). +tolerations: [] + +# -- Configure +# [affinity and anti-affinity](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity). +affinity: {} + +# -- Configure +# [topology spread constraints](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/). +topologySpreadConstraints: [] + + +# -- Specify dns policy +# [dnsPolicy](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy). +dnsPolicy: ClusterFirst + +# -- Specify a custom dns config +# [dnsConfig](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config). +dnsConfig: {} +# nameservers: +# - 1.2.3.4 +# searches: +# - ns1.svc.cluster-domain.example +# - my.dns.search.suffix +# options: +# - name: ndots +# value: "2" +# - name: edns0 + +# -- Specify the livenessProbe +# [configuration](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes). +livenessProbe: {} + +# -- Specify the readinessProbe +# [configuration](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes). +readinessProbe: {}