diff --git a/charts/index.yaml b/charts/index.yaml index 4d8e12f9b..5ce4cee60 100644 --- a/charts/index.yaml +++ b/charts/index.yaml @@ -2,7 +2,7 @@ apiVersion: v1 entries: rclone-copy: - apiVersion: v1 - created: "2019-08-16T13:42:38.082358+02:00" + created: "2019-10-25T14:40:51.562531+02:00" description: A helm chart for rclone copy on Kubernetes. digest: 40ce12fa2377bf99cfe30207ae1891af24de9b3406fe79686100e38046042376 name: rclone-copy @@ -11,12 +11,22 @@ entries: version: 1.0.0 streams-app: - apiVersion: v1 - created: "2019-08-16T13:42:38.083462+02:00" + created: "2019-10-25T14:40:51.563941+02:00" description: A helm chart for deploying a kafka streams application based on the bakdata KafkaStreamsApplication template. - digest: 7500078f416349e4621219defcd3bcc8eba4125e6a14c6a95509033f4e23d63c + digest: b49c6461e3b3c954490eb28f5ee9afd232654493356148a37134bd40afa8aee8 name: streams-app urls: - streams-app/streams-app-0.1.0.tgz version: 0.1.0 -generated: "2019-08-16T13:42:38.080124+02:00" + streams-app-job: + - apiVersion: v1 + created: "2019-10-25T14:40:51.564543+02:00" + description: A helm chart for deploying a kafka streams application based on the + bakdata KafkaStreamsApplication template. + digest: ba19edc31fcb839330b56585086c6db64034d92e662ae03c043775e987f6c5d5 + name: streams-app-job + urls: + - streams-app-job/streams-app-job-0.1.0.tgz + version: 0.1.0 +generated: "2019-10-25T14:40:51.559658+02:00" diff --git a/charts/streams-app-job/Chart.yaml b/charts/streams-app-job/Chart.yaml new file mode 100644 index 000000000..0df48e61f --- /dev/null +++ b/charts/streams-app-job/Chart.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +name: streams-app-job +description: A helm chart for deploying a kafka streams application based on the bakdata KafkaStreamsApplication template. +version: 0.1.0 diff --git a/charts/streams-app-job/streams-app-job-0.1.0.tgz b/charts/streams-app-job/streams-app-job-0.1.0.tgz new file mode 100644 index 000000000..c6538dd86 Binary files /dev/null and b/charts/streams-app-job/streams-app-job-0.1.0.tgz differ diff --git a/charts/streams-app-job/templates/_helpers.tpl b/charts/streams-app-job/templates/_helpers.tpl new file mode 100644 index 000000000..c649967ac --- /dev/null +++ b/charts/streams-app-job/templates/_helpers.tpl @@ -0,0 +1,29 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "streams-app-job.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 "streams-app-job.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Values.nameOverride -}} +{{- printf "%s" $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "streams-app-job.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} diff --git a/charts/streams-app-job/templates/job.yaml b/charts/streams-app-job/templates/job.yaml new file mode 100644 index 000000000..cdc3ad800 --- /dev/null +++ b/charts/streams-app-job/templates/job.yaml @@ -0,0 +1,35 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: {{ template "streams-app-job.fullname" . }} + labels: + app: {{ template "streams-app-job.name" . }} + chart: {{ template "streams-app-job.chart" . }} + release: {{ .Release.Name }} +spec: + ttlSecondsAfterFinished: 30 + replicas: {{ .Values.replicaCount }} + template: + metadata: + {{- if .Values.awsRole }} + annotations: + iam.amazonaws.com/role: {{ .Values.awsRole }} + {{- end }} + labels: + app: {{ template "streams-app-job.name" . }} + release: {{ .Release.Name }} + spec: + restartPolicy: Never + containers: + - name: {{ template "streams-app-job.name" . }}-container + image: "{{ .Values.image }}:{{ .Values.imageTag }}" + imagePullPolicy: "{{ .Values.imagePullPolicy }}" + resources: +{{ toYaml .Values.resources | indent 12 }} + env: + - name: ENV_PREFIX + value: {{ .Values.configurationEnvPrefix }} + {{- range $key, $value := .Values.env }} + - name: {{ $key | quote }} + value: {{ $value | quote }} + {{- end }} diff --git a/charts/streams-app-job/values.yaml b/charts/streams-app-job/values.yaml new file mode 100644 index 000000000..c864d7083 --- /dev/null +++ b/charts/streams-app-job/values.yaml @@ -0,0 +1,27 @@ +nameOverride: bakdata-streams-app-job + +replicaCount: 1 + +image: streamsApp +imageTag: latest +imagePullPolicy: Always + +configurationEnvPrefix: "APP_" + + +resources: + requests: + cpu: 200m + memory: 300Mi + limits: + cpu: 500m + memory: 2G + + +# env: +# APP_INPUT_TOPIC: "test" +# APP_OUTPUT_TOPIC: "test" +# APP_BROKERS: "test:9092" +# APP_ROOT_TAG: "root" +# APP_OUTPUT_SCHEMA: "/test/schema" +# APP_SCHEMA_REGISTRY_URL: "url:1234" diff --git a/charts/streams-app/streams-app-0.1.0.tgz b/charts/streams-app/streams-app-0.1.0.tgz index d4af34f45..cb87a153f 100644 Binary files a/charts/streams-app/streams-app-0.1.0.tgz and b/charts/streams-app/streams-app-0.1.0.tgz differ