diff --git a/charts/rails-application/Chart.yaml b/charts/rails-application/Chart.yaml index 520247a..3e948be 100644 --- a/charts/rails-application/Chart.yaml +++ b/charts/rails-application/Chart.yaml @@ -2,4 +2,4 @@ apiVersion: v2 name: rails-application description: Base chart for my rails applications type: application -version: "0.1.0-alpha1" +version: "0.1.0-alpha2" diff --git a/charts/rails-application/templates/cronjob.yaml b/charts/rails-application/templates/cronjob.yaml new file mode 100644 index 0000000..32b548d --- /dev/null +++ b/charts/rails-application/templates/cronjob.yaml @@ -0,0 +1,52 @@ +{{- range $cronjobName, $cronjobValues := .Values.cronjobs }} +apiVersion: batch/v1 +kind: CronJob +metadata: + name: {{ printf "%s-%s-%s" (include "rails-application.fullname" $) "crons" $cronjobName }} + labels: + {{- include "rails-application.labels" $ | nindent 4 }} +spec: + schedule: {{ $cronjobValues.schedule | quote }} + jobTemplate: + spec: + template: + spec: + {{- with $.Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml $ | nindent 12 }} + {{- end }} + serviceAccountName: {{ include "rails-application.serviceAccountName" $ }} + securityContext: + {{- toYaml $.Values.podSecurityContext | nindent 12 }} + containers: + - name: {{ printf "%s-%s-%s" (include "rails-application.fullname" $) "crons" $cronjobName }} + securityContext: + {{- toYaml $.Values.securityContext | nindent 16 }} + image: "{{ $.Values.image.repository }}:{{ $.Values.image.tag | default $.Values.version }}" + imagePullPolicy: {{ $.Values.image.pullPolicy }} + args: + {{- toYaml $cronjobValues.args | nindent 16 }} + envFrom: + - configMapRef: + name: {{ include "rails-application.fullname" $ }} + - secretRef: + name: {{ include "rails-application.fullname" $ }} + {{- with $.Values.volumes }} + volumes: + {{- toYaml $ | nindent 8 }} + {{- end }} + {{- with $.Values.nodeSelector }} + nodeSelector: + {{- toYaml $ | nindent 8 }} + {{- end }} + {{- with $.Values.affinity }} + affinity: + {{- toYaml $ | nindent 8 }} + {{- end }} + {{- with $.Values.tolerations }} + tolerations: + {{- toYaml $ | nindent 8 }} + {{- end }} + restartPolicy: OnFailure +--- +{{- end }} diff --git a/charts/rails-application/values.yaml b/charts/rails-application/values.yaml index 52dad9e..2f9b1a7 100644 --- a/charts/rails-application/values.yaml +++ b/charts/rails-application/values.yaml @@ -2,6 +2,9 @@ # This is a YAML-formatted file. # Declare variables to be passed into your templates. +name: placeholder +version: "9.9.9" + image: repository: my-application pullPolicy: IfNotPresent @@ -34,6 +37,11 @@ deployments: path: /health/all port: http +cronjobs: {} + # daily: + # schedule: "30 6 * * *" + # args: ["rake", "crons:daily"] + serviceAccount: # Specifies whether a service account should be created create: true