Skip to content

feat: experiment with Helm Chart Development Workflows using Terraform + Dagger + justfile #45

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 11 commits into from
Apr 27, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -31,6 +31,21 @@ Thumbs.db
*.pyd
__pycache__/

# Terraform
*.tfvars
*.terraform
*.tfplan
*.tfstate
*.tfstate.backup
*.tfvars.json
*.tfvars.json.lock

# Misc
.env

# Cursor
.cursor/

# Mlflow specific
applications/mlflow/tests/.venv/
**/charts/.rendered-templates/
60 changes: 60 additions & 0 deletions applications/n8n/.terraform.lock.hcl

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

67 changes: 67 additions & 0 deletions applications/n8n/charts/n8n-values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
#Prod like set up with CloudNativePG and nginx-ingress
main:
config:
db:
type: postgresdb
postgresdb:
host: db-rw
user: n8n
# password: password is read from cnpg db-app secretKeyRef
pool:
size: 10
ssl:
enabled: true
reject_Unauthorized: true
ca_file: "/home/ssl/certs/postgresql/ca.crt"
# comment out as we are experiment with Terraform template
# secret:
# n8n:
# encryption_key: "thisistheway"

extraEnv:
DB_POSTGRESDB_PASSWORD:
valueFrom:
secretKeyRef:
name: db-app
key: password
# Mount the CNPG CA Cert into N8N container
extraVolumeMounts:
- name: db-ca-cert
mountPath: /home/ssl/certs/postgresql
readOnly: true
extraVolumes:
- name: db-ca-cert
secret:
secretName: db-ca
items:
- key: ca.crt
path: ca.crt
resources:
limits:
memory: 2048Mi
requests:
memory: 512Mi
ingress:
enabled: false
# cnpg DB cluster request
extraManifests:
- apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: db
spec:
instances: 1
bootstrap:
initdb:
database: n8n
owner: n8n
postgresql:
parameters:
shared_buffers: "64MB"
resources:
requests:
memory: "512Mi"
limits:
memory: "512Mi"
storage:
size: 1Gi
9 changes: 9 additions & 0 deletions applications/n8n/charts/n8n/Chart.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
dependencies:
- name: valkey
repository: oci://registry-1.docker.io/bitnamicharts
version: 2.4.7
- name: replicated
repository: oci://registry.replicated.com/library
version: 1.5.0
digest: sha256:1eb6a06e563152b56016188710d829b5caab37ba6da16470b0779007779b326f
generated: "2025-04-10T09:43:54.914664+10:00"
40 changes: 40 additions & 0 deletions applications/n8n/charts/n8n/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
annotations:
artifacthub.io/changes: |
- kind: fixed
description: "fix https://github.com/8gears/n8n-helm-chart/issues/176"
artifacthub.io/prerelease: "false"
apiVersion: v2
appVersion: 1.85.1
dependencies:
- condition: valkey.enabled
name: valkey
repository: oci://registry-1.docker.io/bitnamicharts
version: 2.4.7
- name: replicated
repository: oci://registry.replicated.com/library
version: 1.5.0
description: Helm Chart for deploying n8n on Kubernetes, a fair-code workflow automation
platform with native AI capabilities for technical teams. Easily automate tasks
across different services.
home: https://github.com/8gears/n8n-helm-chart
icon: https://avatars1.githubusercontent.com/u/45487711?s=200&v=4
keywords:
- Workflow Automation
- Workflow
- iPaaS
- integration-framework
- low-code-plattform
- low-code
maintainers:
- email: contact@8gears.com
name: 8gears
url: https://github.com/8gears
- email: _@8gears.com
name: n8n
url: https://github.com/n8n-io
name: n8n
sources:
- https://github.com/n8n-io/n8n
- https://n8n.io/
type: application
version: 1.0.6
Loading