53 Commits

Author SHA1 Message Date
99404b6210 chore: bump version up to 1.9.0
All checks were successful
Release Chart / release (push) Successful in 23s
2023-09-28 18:57:34 +03:00
d6fa8149b0 chore: bump version up to 1.7.0
All checks were successful
Release Chart / release (push) Successful in 28s
2023-09-13 18:36:21 +03:00
517337bb5a chore: bump version up to 1.5.1
All checks were successful
Release Chart / release (push) Successful in 21s
2023-08-31 16:47:17 +03:00
3a984d94ea chore: bump version up to 1.5.0
All checks were successful
Release Chart / release (push) Successful in 22s
2023-08-31 15:07:47 +03:00
8640fa3a28 chore: bump version up to 1.4.0
All checks were successful
Release Chart / release (push) Successful in 53s
2023-08-27 23:45:19 +03:00
6ce3f7a932 Actions (#1)
Reviewed-on: #1
Co-authored-by: Konstantin Grachev <me@grachevko.ru>
Co-committed-by: Konstantin Grachev <me@grachevko.ru>
2023-08-27 20:43:00 +00:00
f82dc3e103 chore: bump version up to 1.1.1
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2023-08-02 18:36:41 +03:00
8fcfc65a21 chore: bump version up to 0.234.1
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-06 13:12:06 +03:00
334edcf72b chore: bump version up to 0.234.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2023-06-22 17:03:32 +03:00
081683a2c1 fix: bump version up to 0.231.2
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2023-06-15 20:36:50 +03:00
e24a65060b fix: bump version up to 0.228.2
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2023-06-14 15:33:47 +03:00
f3efde9263 ci: remove unnecessary name
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-18 01:13:18 +03:00
2b2a037305 ci: bump helm version up to 24
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2023-05-18 00:38:03 +03:00
3d41f894c6 ci: bump helm version up to 23
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is failing
2023-05-18 00:36:38 +03:00
b66e193714 ci: bump helm version up to 22
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is failing
2023-05-18 00:27:02 +03:00
e292f3d434 ci: bump helm version
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is failing
2023-05-18 00:24:07 +03:00
bfbfc4b0d2 ci: add tag event
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is failing
2023-05-18 00:22:27 +03:00
856d90e88b ci: fix trigger
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-18 00:20:36 +03:00
5a9eb1a6fc ci: use oci 2023-05-18 00:14:59 +03:00
4506443e47 chore: bump n8n version up to 0.227.1 2023-05-18 00:11:25 +03:00
eb3096689d ci: update
Some checks failed
continuous-integration/drone/push Build is failing
2023-05-02 20:35:02 +03:00
4fb7dec4c2 fix: bump version up to 0.226.1
Some checks failed
continuous-integration/drone/push Build is failing
2023-05-02 20:10:48 +03:00
5aa42df15d fix: bump version up to 0.222.3
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-20 15:03:02 +03:00
9e04dd563f fix: bump version up to 0.222.1
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-04 20:06:09 +03:00
33a4092cdd fix: bump version up to 0.221.2
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-30 22:17:44 +03:00
01534912d3 chore: bump version up to 0.221.2
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-30 22:16:14 +03:00
48e01337c9 cs: fix
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-17 17:00:07 +03:00
dddfa808e9 chore: bump version up to 0.220.0 2023-03-17 16:53:24 +03:00
fe87d7373f chore: bump version up to 0.219.1
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-15 12:41:03 +03:00
de43724541 chore: bump n8n version up to 0.218.0
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-02 21:13:27 +03:00
429a04772a fix: rename N8N_ENABLE_METRICS to N8N_METRICS
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-28 00:27:43 +03:00
5663bb594a fix: remove checksum's from deployments
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-28 00:11:19 +03:00
90a63653bf feat: add metrics config
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-28 00:07:02 +03:00
3c4842a746 fix: bump n8n version up to 0.217.1
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-27 21:54:43 +03:00
b634953e98 feat: bump n8n version up to 0.217.1
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-24 20:46:34 +03:00
e57f4ca15d feat: bump n8n version up to 0.216.0
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-17 17:30:20 +03:00
47e32cbc2e ci: use helm plugin
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-14 23:58:29 +03:00
ddb4a2eb9b Bump n8n version up to 0.215.1
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2023-02-13 00:55:51 +03:00
b0162f4908 Bump n8n version up to 0.213.1
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2023-02-13 00:43:52 +03:00
ef8f635aba Bump n8n version up to 0.213.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2023-01-31 18:53:34 +03:00
3497a9537e Bump n8n version up to 0.205.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-12-10 18:46:53 +03:00
4e01f912ed fix worker-hpa labels
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 17:38:06 +03:00
bf6002c156 fix webhook-deployment labels 2022-11-16 17:37:56 +03:00
ad9a7b248f Remove redundant suffix
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 17:30:55 +03:00
b143ede98b Fix collisions with labels and selectors
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 17:28:54 +03:00
7155146e00 Fix service name for webhook ingress
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 16:42:09 +03:00
3639069556 Revert "Remove $fullName var from ingress templates"
This reverts commit 92f8d4442c.
2022-11-16 16:41:43 +03:00
92f8d4442c Remove $fullName var from ingress templates
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 16:37:50 +03:00
5500ec6642 Fix: checksum must be on pod template
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 16:32:16 +03:00
fba44456e6 Include default secrets if extraEnvVarsSecret not present
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 16:28:54 +03:00
8bdea5fba6 Add N8N_PROTOCOL
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 16:10:41 +03:00
cdbceb1396 add startupProbe to main process
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-11-16 14:39:18 +03:00
e7598dc380 add checksum/secret annotation 2022-11-16 14:37:07 +03:00
15 changed files with 310 additions and 245 deletions

View File

@ -9,43 +9,14 @@ trigger:
- tag - tag
steps: steps:
- name: lint - name: release
image: cr.grachevko.ru/docker.io/alpine/helm:latest image: cr.grachevko.ru/drone/helm:24
pull: always settings:
commands: tag: ${DRONE_TAG}
- helm lint . username:
- name: version
image: cr.grachevko.ru/docker.io/mikefarah/yq:latest
pull: always
user: root
commands:
- yq -i '.version = "'$DRONE_TAG'"' Chart.yaml
- cat Chart.yaml
depends_on:
- lint
when:
event:
- tag
- name: release
image: cr.grachevko.ru/docker.io/alpine/helm:latest
pull: always
commands:
- helm repo add bitnami https://charts.bitnami.com/bitnami
- helm dependency build
- helm plugin install https://github.com/chartmuseum/helm-push
- helm repo add $HELM_REPO_NAME $HELM_REPO_REGISTRY/$HELM_REPO_NAME --username $HELM_REPO_USERNAME --password $HELM_REPO_PASSWORD
- helm cm-push . $HELM_REPO_REGISTRY/$HELM_REPO_NAME
environment:
HELM_REPO_NAME: n8n
HELM_REPO_REGISTRY: https://harbor.grachevko.ru/chartrepo
HELM_REPO_USERNAME:
from_secret: HELM_REPO_USERNAME from_secret: HELM_REPO_USERNAME
HELM_REPO_PASSWORD: password:
from_secret: HELM_REPO_PASSWORD from_secret: HELM_REPO_PASSWORD
depends_on:
- version
when: when:
event: event:
- tag - tag

View File

@ -0,0 +1,29 @@
name: Release Chart
on:
push:
tags:
- '*'
jobs:
release:
runs-on: ubuntu-latest
env:
REGISTRY: harbor.grachevko.ru
steps:
- uses: actions/checkout@v3
- uses: yokawasa/action-setup-kube-tools@v0.9.3
with:
setup-tools: helm
- name: deps and lint
run: |
helm dependency update
helm lint --strict .
- name: build
run: helm package --version ${{ gitea.ref_name }} .
- name: publish
run: |
echo "${{ secrets.REGISTRY_PASSWORD }}" | helm registry login ${{ env.REGISTRY }} --username "${{ secrets.REGISTRY_USERNAME }}" --password-stdin
helm push ./*.tgz oci://harbor.grachevko.ru/${{ gitea.repository }}

View File

@ -3,15 +3,15 @@ name: n8n
description: A Helm chart for Kubernetes description: A Helm chart for Kubernetes
type: application type: application
version: 0.0.1 version: 0.0.1
appVersion: 0.202.1 appVersion: 1.9.0
icon: https://github.com/n8n-io/n8n/raw/master/assets/n8n-logo.png icon: https://github.com/n8n-io/n8n/raw/master/assets/n8n-logo.png
maintainers: maintainers:
- email: me@grachevko.ru - email: me@grachevko.ru
name: Konstantin Grachev name: Konstantin Grachev
sources: sources:
- https://git.grachevko.ru/n8n/chart - https://git.grachevko.ru/n8n/chart
dependencies: dependencies:
- name: redis - name: redis
version: ^17 version: ^17
repository: https://charts.bitnami.com/bitnami repository: https://charts.bitnami.com/bitnami
condition: redis.enabled condition: redis.enabled

View File

@ -5,6 +5,14 @@ Expand the name of the chart.
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }} {{- end }}
{{- define "n8n-webhook.name" -}}
{{ include "n8n.name" . }}-webhook
{{- end }}
{{- define "n8n-worker.name" -}}
{{ include "n8n.name" . }}-worker
{{- end }}
{{/* {{/*
Create a default fully qualified app name. 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). We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
@ -23,6 +31,14 @@ If release name contains chart name it will be used as a full name.
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- define "n8n-webhook.fullname" -}}
{{ include "n8n.fullname" . }}-webhook
{{- end }}
{{- define "n8n-worker.fullname" -}}
{{ include "n8n.fullname" . }}-worker
{{- end }}
{{/* {{/*
Create chart name and version as used by the chart label. Create chart name and version as used by the chart label.
*/}} */}}
@ -33,15 +49,32 @@ Create chart name and version as used by the chart label.
{{/* {{/*
Common labels Common labels
*/}} */}}
{{- define "n8n.labels" -}} {{- define "common.labels" -}}
helm.sh/chart: {{ include "n8n.chart" . }} helm.sh/chart: {{ include "n8n.chart" . }}
{{ include "n8n.selectorLabels" . }}
{{- if .Chart.AppVersion }} {{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }} {{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }} {{- end }}
{{/*
n8n labels
*/}}
{{- define "n8n.labels" -}}
{{ include "common.labels" . }}
{{ include "n8n.selectorLabels" . }}
{{- end }}
{{- define "n8n-webhook.labels" -}}
{{ include "common.labels" . }}
{{ include "n8n-webhook.selectorLabels" . }}
{{- end }}
{{- define "n8n-worker.labels" -}}
{{ include "common.labels" . }}
{{ include "n8n-worker.selectorLabels" . }}
{{- end }}
{{/* {{/*
Selector labels Selector labels
*/}} */}}
@ -49,3 +82,13 @@ Selector labels
app.kubernetes.io/name: {{ include "n8n.name" . }} app.kubernetes.io/name: {{ include "n8n.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }} {{- end }}
{{- define "n8n-webhook.selectorLabels" -}}
app.kubernetes.io/name: {{ include "n8n-webhook.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{- define "n8n-worker.selectorLabels" -}}
app.kubernetes.io/name: {{ include "n8n-worker.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View File

@ -8,6 +8,9 @@ metadata:
data: data:
N8N_HOST: {{ .Values.config.host | quote }} N8N_HOST: {{ .Values.config.host | quote }}
N8N_PORT: {{ .Values.config.port | quote }} N8N_PORT: {{ .Values.config.port | quote }}
N8N_PROTOCOL: {{ .Values.config.protocol | quote }}
N8N_METRICS: {{ .Values.config.metrics.enabled | quote }}
N8N_METRICS_PREFIX: {{ .Values.config.metrics.prefix | quote }}
WEBHOOK_URL: {{ .Values.config.webhook_url | quote }} WEBHOOK_URL: {{ .Values.config.webhook_url | quote }}
EXECUTIONS_MODE: "queue" EXECUTIONS_MODE: "queue"
EXECUTIONS_PROCESS: {{ .Values.config.executions.process | quote }} EXECUTIONS_PROCESS: {{ .Values.config.executions.process | quote }}

View File

@ -4,8 +4,6 @@ metadata:
name: {{ include "n8n.fullname" . }} name: {{ include "n8n.fullname" . }}
labels: labels:
{{- include "n8n.labels" . | nindent 4 }} {{- include "n8n.labels" . | nindent 4 }}
annotations:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
spec: spec:
replicas: 1 replicas: 1
selector: selector:
@ -13,8 +11,10 @@ spec:
{{- include "n8n.selectorLabels" . | nindent 6 }} {{- include "n8n.selectorLabels" . | nindent 6 }}
template: template:
metadata: metadata:
{{- with .Values.n8n.podAnnotations }}
annotations: annotations:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
checksum/secret: {{ include (print $.Template.BasePath "/secrets.yaml") . | sha256sum }}
{{- with .Values.n8n.podAnnotations }}
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}
{{- end }} {{- end }}
labels: labels:
@ -38,6 +38,9 @@ spec:
{{- if .Values.n8n.extraEnvVarsSecret }} {{- if .Values.n8n.extraEnvVarsSecret }}
- secretRef: - secretRef:
name: {{ .Values.n8n.extraEnvVarsSecret }} name: {{ .Values.n8n.extraEnvVarsSecret }}
{{- else }}
- secretRef:
name: {{ include "n8n.fullname" . }}
{{- end }} {{- end }}
ports: ports:
- name: http - name: http
@ -51,6 +54,12 @@ spec:
httpGet: httpGet:
path: /healthz path: /healthz
port: http port: http
startupProbe:
httpGet:
path: /healthz
port: http
failureThreshold: 30
periodSeconds: 10
resources: resources:
{{- toYaml .Values.n8n.resources | nindent 12 }} {{- toYaml .Values.n8n.resources | nindent 12 }}
{{- with .Values.n8n.nodeSelector }} {{- with .Values.n8n.nodeSelector }}

View File

@ -10,6 +10,6 @@ spec:
containers: containers:
- name: wget - name: wget
image: busybox image: busybox
command: [ 'wget' ] command: ['wget']
args: [ '{{ include "n8n.fullname" . }}:{{ .Values.n8n.service.port }}' ] args: ['{{ include "n8n.fullname" . }}:{{ .Values.n8n.service.port }}']
restartPolicy: Never restartPolicy: Never

View File

@ -1,26 +1,26 @@
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: {{ include "n8n.fullname" . }}-webhook name: {{ include "n8n-webhook.fullname" . }}
labels: labels:
{{- include "n8n.labels" . | nindent 4 }} {{- include "n8n-webhook.labels" . | nindent 4 }}
annotations:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
spec: spec:
{{- if not .Values.webhook.autoscaling.enabled }} {{- if not .Values.webhook.autoscaling.enabled }}
replicas: {{ .Values.webhook.replicaCount }} replicas: {{ .Values.webhook.replicaCount }}
{{- end }} {{- end }}
selector: selector:
matchLabels: matchLabels:
{{- include "n8n.selectorLabels" . | nindent 6 }} {{- include "n8n-webhook.selectorLabels" . | nindent 6 }}
template: template:
metadata: metadata:
{{- with .Values.webhook.podAnnotations }}
annotations: annotations:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
checksum/secret: {{ include (print $.Template.BasePath "/secrets.yaml") . | sha256sum }}
{{- with .Values.webhook.podAnnotations }}
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}
{{- end }} {{- end }}
labels: labels:
{{- include "n8n.selectorLabels" . | nindent 8 }} {{- include "n8n-webhook.selectorLabels" . | nindent 8 }}
spec: spec:
{{- with .Values.webhook.image.pullSecrets }} {{- with .Values.webhook.image.pullSecrets }}
imagePullSecrets: imagePullSecrets:
@ -43,6 +43,9 @@ spec:
{{- if .Values.webhook.extraEnvVarsSecret }} {{- if .Values.webhook.extraEnvVarsSecret }}
- secretRef: - secretRef:
name: {{ .Values.webhook.extraEnvVarsSecret }} name: {{ .Values.webhook.extraEnvVarsSecret }}
{{- else }}
- secretRef:
name: {{ include "n8n.fullname" . }}
{{- end }} {{- end }}
ports: ports:
- name: http - name: http

View File

@ -1,5 +1,5 @@
{{- if .Values.webhook.ingress.enabled -}} {{- if .Values.webhook.ingress.enabled -}}
{{- $fullName := include "n8n.fullname" . -}} {{- $fullName := include "n8n-webhook.fullname" . -}}
{{- $svcPort := .Values.webhook.service.port -}} {{- $svcPort := .Values.webhook.service.port -}}
{{- if and .Values.webhook.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }} {{- if and .Values.webhook.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
{{- if not (hasKey .Values.webhook.ingress.annotations "kubernetes.io/ingress.class") }} {{- if not (hasKey .Values.webhook.ingress.annotations "kubernetes.io/ingress.class") }}
@ -15,9 +15,9 @@ apiVersion: extensions/v1beta1
{{- end }} {{- end }}
kind: Ingress kind: Ingress
metadata: metadata:
name: {{ $fullName }}-webhook name: {{ $fullName }}
labels: labels:
{{- include "n8n.labels" . | nindent 4 }} {{- include "n8n-webhook.labels" . | nindent 4 }}
{{- with .Values.webhook.ingress.annotations }} {{- with .Values.webhook.ingress.annotations }}
annotations: annotations:
{{- toYaml . | nindent 4 }} {{- toYaml . | nindent 4 }}

View File

@ -1,9 +1,9 @@
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: {{ include "n8n.fullname" . }}-webhook name: {{ include "n8n-webhook.fullname" . }}
labels: labels:
{{- include "n8n.labels" . | nindent 4 }} {{- include "n8n-webhook.labels" . | nindent 4 }}
spec: spec:
type: {{ .Values.webhook.service.type }} type: {{ .Values.webhook.service.type }}
ports: ports:
@ -12,4 +12,4 @@ spec:
protocol: TCP protocol: TCP
name: http name: http
selector: selector:
{{- include "n8n.selectorLabels" . | nindent 4 }} {{- include "n8n-webhook.selectorLabels" . | nindent 4 }}

View File

@ -1,26 +1,26 @@
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: {{ include "n8n.fullname" . }}-worker name: {{ include "n8n-worker.fullname" . }}
labels: labels:
{{- include "n8n.labels" . | nindent 4 }} {{- include "n8n-worker.labels" . | nindent 4 }}
annotations:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
spec: spec:
{{- if not .Values.worker.autoscaling.enabled }} {{- if not .Values.worker.autoscaling.enabled }}
replicas: {{ .Values.worker.replicaCount }} replicas: {{ .Values.worker.replicaCount }}
{{- end }} {{- end }}
selector: selector:
matchLabels: matchLabels:
{{- include "n8n.selectorLabels" . | nindent 6 }} {{- include "n8n-worker.selectorLabels" . | nindent 6 }}
template: template:
metadata: metadata:
{{- with .Values.worker.podAnnotations }}
annotations: annotations:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
checksum/secret: {{ include (print $.Template.BasePath "/secrets.yaml") . | sha256sum }}
{{- with .Values.worker.podAnnotations }}
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}
{{- end }} {{- end }}
labels: labels:
{{- include "n8n.selectorLabels" . | nindent 8 }} {{- include "n8n-worker.selectorLabels" . | nindent 8 }}
spec: spec:
{{- with .Values.worker.image.pullSecrets }} {{- with .Values.worker.image.pullSecrets }}
imagePullSecrets: imagePullSecrets:
@ -43,6 +43,9 @@ spec:
{{- if .Values.worker.extraEnvVarsSecret }} {{- if .Values.worker.extraEnvVarsSecret }}
- secretRef: - secretRef:
name: {{ .Values.worker.extraEnvVarsSecret }} name: {{ .Values.worker.extraEnvVarsSecret }}
{{- else }}
- secretRef:
name: {{ include "n8n.fullname" . }}
{{- end }} {{- end }}
resources: resources:
{{- toYaml .Values.worker.resources | nindent 12 }} {{- toYaml .Values.worker.resources | nindent 12 }}

View File

@ -2,14 +2,14 @@
apiVersion: autoscaling/v2beta1 apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler kind: HorizontalPodAutoscaler
metadata: metadata:
name: {{ include "n8n.fullname" . }}-worker name: {{ include "n8n-worker.fullname" . }}
labels: labels:
{{- include "n8n.labels" . | nindent 4 }} {{- include "n8n-worker.labels" . | nindent 4 }}
spec: spec:
scaleTargetRef: scaleTargetRef:
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
name: {{ include "n8n.fullname" . }} name: {{ include "n8n-worker.fullname" . }}
minReplicas: {{ .Values.worker.autoscaling.minReplicas }} minReplicas: {{ .Values.worker.autoscaling.minReplicas }}
maxReplicas: {{ .Values.worker.autoscaling.maxReplicas }} maxReplicas: {{ .Values.worker.autoscaling.maxReplicas }}
metrics: metrics:

View File

@ -1,6 +1,7 @@
config: config:
host: "" host: ""
port: "5678" port: "5678"
protocol: http
debug: false debug: false
db_type: postgresdb db_type: postgresdb
postgres: postgres:
@ -25,6 +26,9 @@ config:
allow: allow:
builtin: '*' builtin: '*'
external: '*' external: '*'
metrics:
enabled: false
prefix: n8n_
redis: redis:
enabled: false enabled: false
@ -44,7 +48,7 @@ n8n:
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion. # Overrides the image tag whose default is the chart appVersion.
tag: "" tag: ""
pullSecrets: [ ] pullSecrets: []
extraEnvVarsSecret: "" extraEnvVarsSecret: ""
@ -52,17 +56,17 @@ n8n:
# Specifies whether a service account should be created # Specifies whether a service account should be created
create: false create: false
# Annotations to add to the service account # Annotations to add to the service account
annotations: { } annotations: {}
# The name of the service account to use. # The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template # If not set and create is true, a name is generated using the fullname template
name: "" name: ""
podAnnotations: { } podAnnotations: {}
podSecurityContext: { } podSecurityContext: {}
# fsGroup: 2000 # fsGroup: 2000
securityContext: { } securityContext: {}
# capabilities: # capabilities:
# drop: # drop:
# - ALL # - ALL
@ -77,7 +81,7 @@ n8n:
ingress: ingress:
enabled: false enabled: false
className: "" className: ""
annotations: { } annotations: {}
# kubernetes.io/ingress.class: nginx # kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true" # kubernetes.io/tls-acme: "true"
hosts: hosts:
@ -85,12 +89,12 @@ n8n:
paths: paths:
- path: / - path: /
pathType: ImplementationSpecific pathType: ImplementationSpecific
tls: [ ] tls: []
# - secretName: chart-example-tls # - secretName: chart-example-tls
# hosts: # hosts:
# - chart-example.local # - chart-example.local
resources: { } resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious # We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little # choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following # resources, such as Minikube. If you do want to specify resources, uncomment the following
@ -102,11 +106,11 @@ n8n:
# cpu: 100m # cpu: 100m
# memory: 128Mi # memory: 128Mi
nodeSelector: { } nodeSelector: {}
tolerations: [ ] tolerations: []
affinity: { } affinity: {}
webhook: webhook:
replicaCount: 1 replicaCount: 1
@ -117,7 +121,7 @@ webhook:
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion. # Overrides the image tag whose default is the chart appVersion.
tag: "" tag: ""
pullSecrets: [ ] pullSecrets: []
extraEnvVarsSecret: "" extraEnvVarsSecret: ""
@ -125,17 +129,17 @@ webhook:
# Specifies whether a service account should be created # Specifies whether a service account should be created
create: false create: false
# Annotations to add to the service account # Annotations to add to the service account
annotations: { } annotations: {}
# The name of the service account to use. # The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template # If not set and create is true, a name is generated using the fullname template
name: "" name: ""
podAnnotations: { } podAnnotations: {}
podSecurityContext: { } podSecurityContext: {}
# fsGroup: 2000 # fsGroup: 2000
securityContext: { } securityContext: {}
# capabilities: # capabilities:
# drop: # drop:
# - ALL # - ALL
@ -150,7 +154,7 @@ webhook:
ingress: ingress:
enabled: false enabled: false
className: "" className: ""
annotations: { } annotations: {}
# kubernetes.io/ingress.class: nginx # kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true" # kubernetes.io/tls-acme: "true"
hosts: hosts:
@ -158,12 +162,12 @@ webhook:
paths: paths:
- path: / - path: /
pathType: ImplementationSpecific pathType: ImplementationSpecific
tls: [ ] tls: []
# - secretName: chart-example-tls # - secretName: chart-example-tls
# hosts: # hosts:
# - chart-example.local # - chart-example.local
resources: { } resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious # We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little # choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following # resources, such as Minikube. If you do want to specify resources, uncomment the following
@ -182,11 +186,11 @@ webhook:
targetCPUUtilizationPercentage: 80 targetCPUUtilizationPercentage: 80
# targetMemoryUtilizationPercentage: 80 # targetMemoryUtilizationPercentage: 80
nodeSelector: { } nodeSelector: {}
tolerations: [ ] tolerations: []
affinity: { } affinity: {}
worker: worker:
replicaCount: 1 replicaCount: 1
@ -197,7 +201,7 @@ worker:
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion. # Overrides the image tag whose default is the chart appVersion.
tag: "" tag: ""
pullSecrets: [ ] pullSecrets: []
extraEnvVarsSecret: "" extraEnvVarsSecret: ""
@ -205,17 +209,17 @@ worker:
# Specifies whether a service account should be created # Specifies whether a service account should be created
create: false create: false
# Annotations to add to the service account # Annotations to add to the service account
annotations: { } annotations: {}
# The name of the service account to use. # The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template # If not set and create is true, a name is generated using the fullname template
name: "" name: ""
podAnnotations: { } podAnnotations: {}
podSecurityContext: { } podSecurityContext: {}
# fsGroup: 2000 # fsGroup: 2000
securityContext: { } securityContext: {}
# capabilities: # capabilities:
# drop: # drop:
# - ALL # - ALL
@ -230,7 +234,7 @@ worker:
ingress: ingress:
enabled: false enabled: false
className: "" className: ""
annotations: { } annotations: {}
# kubernetes.io/ingress.class: nginx # kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true" # kubernetes.io/tls-acme: "true"
hosts: hosts:
@ -238,12 +242,12 @@ worker:
paths: paths:
- path: / - path: /
pathType: ImplementationSpecific pathType: ImplementationSpecific
tls: [ ] tls: []
# - secretName: chart-example-tls # - secretName: chart-example-tls
# hosts: # hosts:
# - chart-example.local # - chart-example.local
resources: { } resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious # We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little # choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following # resources, such as Minikube. If you do want to specify resources, uncomment the following
@ -262,8 +266,8 @@ worker:
targetCPUUtilizationPercentage: 80 targetCPUUtilizationPercentage: 80
# targetMemoryUtilizationPercentage: 80 # targetMemoryUtilizationPercentage: 80
nodeSelector: { } nodeSelector: {}
tolerations: [ ] tolerations: []
affinity: { } affinity: {}