add kaneo app
ci/woodpecker/push/flux-reconcile-source Pipeline was successful

This commit is contained in:
2026-05-05 20:37:21 +02:00
parent bad1df3268
commit 26332c82e1
9 changed files with 192 additions and 0 deletions
+8
View File
@@ -0,0 +1,8 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- namespace.yaml
- oauth-secret.yaml
- postgres-volume.yaml
- postgres-cluster.yaml
- release.yaml
+4
View File
@@ -0,0 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
name: kaneo
+43
View File
@@ -0,0 +1,43 @@
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: kaneo-secret
namespace: kaneo
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultAuth
metadata:
name: kaneo
namespace: kaneo
spec:
method: kubernetes
mount: kubernetes
kubernetes:
role: kaneo
serviceAccount: kaneo-secret
---
apiVersion: secrets.hashicorp.com/v1beta1
kind: VaultStaticSecret
metadata:
name: kaneo-authentik
namespace: kaneo
spec:
type: kv-v2
mount: secret
path: authentik/kaneo
destination:
create: true
name: kaneo-authentik
type: Opaque
transformation:
excludeRaw: true
templates:
client_id:
text: '{{ get .Secrets "client_id" }}'
client_secret:
text: '{{ get .Secrets "client_secret" }}'
vaultAuthRef: kaneo
+16
View File
@@ -0,0 +1,16 @@
---
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: kaneo-db
namespace: kaneo
spec:
instances: 1
storage:
pvcTemplate:
storageClassName: ssd-lvmpv
resources:
requests:
storage: 10Gi
volumeName: kaneo-db-1
+33
View File
@@ -0,0 +1,33 @@
apiVersion: local.openebs.io/v1alpha1
kind: LVMVolume
metadata:
labels:
kubernetes.io/nodename: anapistula-delrosalae
name: kaneo-db-1
namespace: openebs
spec:
capacity: 10Gi
ownerNodeID: anapistula-delrosalae
shared: "yes"
thinProvision: "no"
vgPattern: ^openebs-ssd$
volGroup: openebs-ssd
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: kaneo-db-1
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: ssd-lvmpv
volumeMode: Filesystem
csi:
driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: kaneo-db-1
---
# PVCs are dynamically created by the Postgres operator
+78
View File
@@ -0,0 +1,78 @@
---
apiVersion: source.toolkit.fluxcd.io/v1
kind: GitRepository
metadata:
name: kaneo
namespace: kaneo
spec:
interval: 24h
url: https://github.com/usekaneo/kaneo.git
ref:
tag: v2.7.1
ignore: |
# exclude all
/*
# include charts directory
!/charts/
---
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: kaneo
namespace: kaneo
spec:
interval: 30m
chart:
spec:
chart: ./charts/kaneo
sourceRef:
kind: GitRepository
name: kaneo
values:
ingress:
enabled: true
className: nginx-ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /$1
cert-manager.io/cluster-issuer: letsencrypt
hosts:
- host: kaneo.lumpiasty.xyz
paths:
- path: /?(.*)
pathType: ImplementationSpecific
service: web
port: 80
- path: /api/?(.*)
pathType: ImplementationSpecific
service: api
port: 1337
tls:
- secretName: kaneo-ingress
hosts:
- kaneo.lumpiasty.xyz
postgresql:
enabled: false
kaneo:
env:
database:
external:
enabled: true
existingSecret:
enabled: true
name: kaneo-db-app
passwordKey: uri
extraEnv:
- name: CUSTOM_OAUTH_DISCOVERY_URL
value: https://authentik.lumpiasty.xyz/application/o/kaneo/.well-known/openid-configuration
- name: CUSTOM_OAUTH_CLIENT_ID
valueFrom:
secretKeyRef:
name: kaneo-authentik
key: client_id
- name: CUSTOM_OAUTH_CLIENT_SECRET
valueFrom:
secretKeyRef:
name: kaneo-authentik
key: client_secret
+1
View File
@@ -13,3 +13,4 @@ resources:
- openwebui
- woodpecker
- meridian
- kaneo
+6
View File
@@ -0,0 +1,6 @@
bound_service_account_names:
- kaneo-secret
bound_service_account_namespaces:
- kaneo
token_policies:
- kaneo
+3
View File
@@ -0,0 +1,3 @@
path "secret/data/authentik/kaneo" {
capabilities = ["read"]
}