feat: add more
All checks were successful
lint-test-helm / lint-helm (pull_request) Successful in 12m40s
lint-test-helm / validate-kubeconform (pull_request) Successful in 14m29s

This commit is contained in:
2026-04-21 21:13:37 -05:00
parent e104eae55e
commit f2280ff40a
8 changed files with 114 additions and 63 deletions

View File

@@ -5,10 +5,10 @@ harbor:
enabled: false enabled: false
route: route:
parentRefs: parentRefs:
group: gateway.networking.k8s.io - group: gateway.networking.k8s.io
kind: Gateway kind: Gateway
name: traefik-gateway name: traefik-gateway
namespace: traefik namespace: traefik
hosts: hosts:
- harbor.alexlebens.net - harbor.alexlebens.net
externalURL: https://harbor.alexlebens.net externalURL: https://harbor.alexlebens.net

View File

@@ -1,7 +1,26 @@
apiVersion: external-secrets.io/v1 apiVersion: external-secrets.io/v1
kind: ExternalSecret kind: ExternalSecret
metadata: metadata:
name: karakeep-key-secret name: karakeep-key
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: karakeep-key
{{- include "custom.labels" . | nindent 4 }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: openbao
data:
- secretKey: key
remoteRef:
key: /cl01tl/karakeep/key
property: key
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: karakeep-metric-token
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: karakeep-key-secret app.kubernetes.io/name: karakeep-key-secret
@@ -9,38 +28,53 @@ metadata:
spec: spec:
secretStoreRef: secretStoreRef:
kind: ClusterSecretStore kind: ClusterSecretStore
name: vault name: openbao
data: data:
- secretKey: key
remoteRef:
key: /cl01tl/karakeep/key
property: key
- secretKey: prometheus-token - secretKey: prometheus-token
remoteRef: remoteRef:
key: /cl01tl/karakeep/key key: /cl01tl/karakeep/metrics
property: prometheus-token property: token
--- ---
apiVersion: external-secrets.io/v1 apiVersion: external-secrets.io/v1
kind: ExternalSecret kind: ExternalSecret
metadata: metadata:
name: karakeep-oidc-secret name: karakeep-meilisearch-key
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: karakeep-oidc-secret app.kubernetes.io/name: karakeep-meilisearch-key
{{- include "custom.labels" . | nindent 4 }} {{- include "custom.labels" . | nindent 4 }}
spec: spec:
secretStoreRef: secretStoreRef:
kind: ClusterSecretStore kind: ClusterSecretStore
name: vault name: openbao
data:
- secretKey: MEILI_MASTER_KEY
remoteRef:
key: /cl01tl/karakeep/meilisearch
property: master-key
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: karakeep-oidc-authentik
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: karakeep-oidc-authentik
{{- include "custom.labels" . | nindent 4 }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: openbao
data: data:
- secretKey: AUTHENTIK_CLIENT_ID - secretKey: AUTHENTIK_CLIENT_ID
remoteRef: remoteRef:
key: /authentik/oidc/karakeep key: /cl01tl/authentik/oidc/karakeep
property: client property: client
- secretKey: AUTHENTIK_CLIENT_SECRET - secretKey: AUTHENTIK_CLIENT_SECRET
remoteRef: remoteRef:
key: /authentik/oidc/karakeep key: /cl01tl/authentik/oidc/karakeep
property: secret property: secret
--- ---
@@ -55,7 +89,7 @@ metadata:
spec: spec:
secretStoreRef: secretStoreRef:
kind: ClusterSecretStore kind: ClusterSecretStore
name: vault name: openbao
data: data:
- secretKey: ACCESS_KEY_ID - secretKey: ACCESS_KEY_ID
remoteRef: remoteRef:
@@ -69,22 +103,11 @@ spec:
remoteRef: remoteRef:
key: /garage/home-infra/karakeep-assets key: /garage/home-infra/karakeep-assets
property: ACCESS_REGION property: ACCESS_REGION
- secretKey: BUCKET
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: karakeep-meilisearch-master-key-secret
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: karakeep-meilisearch-master-key-secret
{{- include "custom.labels" . | nindent 4 }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: MEILI_MASTER_KEY
remoteRef: remoteRef:
key: /cl01tl/karakeep/meilisearch key: /garage/home-infra/karakeep-assets
property: MEILI_MASTER_KEY property: BUCKET
- secretKey: ENDPOINT
remoteRef:
key: /garage/config
property: ENDPOINT_LOCAL

View File

@@ -19,22 +19,28 @@ karakeep:
- name: NEXTAUTH_SECRET - name: NEXTAUTH_SECRET
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: karakeep-key-secret name: karakeep-key
key: key key: key
- name: PROMETHEUS_AUTH_TOKEN - name: PROMETHEUS_AUTH_TOKEN
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: karakeep-key-secret name: karakeep-metric-token
key: prometheus-token key: prometheus-token
- name: ASSET_STORE_S3_ENDPOINT - name: ASSET_STORE_S3_ENDPOINT
value: http://garage-main.garage:3900 valueFrom:
secretKeyRef:
name: karakeep-bucket-garage
key: ENDPOINT
- name: ASSET_STORE_S3_REGION - name: ASSET_STORE_S3_REGION
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: karakeep-bucket-garage name: karakeep-bucket-garage
key: ACCESS_REGION key: ACCESS_REGION
- name: ASSET_STORE_S3_BUCKET - name: ASSET_STORE_S3_BUCKET
value: karakeep-assets valueFrom:
secretKeyRef:
name: karakeep-bucket-garage
key: BUCKET
- name: ASSET_STORE_S3_ACCESS_KEY_ID - name: ASSET_STORE_S3_ACCESS_KEY_ID
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
@@ -52,7 +58,7 @@ karakeep:
- name: MEILI_MASTER_KEY - name: MEILI_MASTER_KEY
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: karakeep-meilisearch-master-key-secret name: karakeep-meilisearch-key
key: MEILI_MASTER_KEY key: MEILI_MASTER_KEY
- name: BROWSER_WEB_URL - name: BROWSER_WEB_URL
value: http://karakeep.karakeep:9222 value: http://karakeep.karakeep:9222
@@ -67,12 +73,12 @@ karakeep:
- name: OAUTH_CLIENT_ID - name: OAUTH_CLIENT_ID
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: karakeep-oidc-secret name: karakeep-oidc-authentik
key: AUTHENTIK_CLIENT_ID key: AUTHENTIK_CLIENT_ID
- name: OAUTH_CLIENT_SECRET - name: OAUTH_CLIENT_SECRET
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: karakeep-oidc-secret name: karakeep-oidc-authentik
key: AUTHENTIK_CLIENT_SECRET key: AUTHENTIK_CLIENT_SECRET
- name: OLLAMA_BASE_URL - name: OLLAMA_BASE_URL
value: http://ollama-server-3.ollama:11434 value: http://ollama-server-3.ollama:11434
@@ -126,7 +132,7 @@ karakeep:
authorization: authorization:
credentials: credentials:
key: prometheus-token key: prometheus-token
name: karakeep-key-secret name: karakeep-metric-token
persistence: persistence:
data: data:
forceRename: karakeep forceRename: karakeep
@@ -144,7 +150,7 @@ meilisearch:
MEILI_ENV: production MEILI_ENV: production
MEILI_EXPERIMENTAL_DUMPLESS_UPGRADE: true MEILI_EXPERIMENTAL_DUMPLESS_UPGRADE: true
auth: auth:
existingMasterKeySecret: karakeep-meilisearch-master-key-secret existingMasterKeySecret: karakeep-meilisearch-key
persistence: persistence:
enabled: true enabled: true
storageClass: ceph-block storageClass: ceph-block

View File

@@ -12,3 +12,10 @@ Selector labels
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }} app.kubernetes.io/part-of: {{ .Release.Name }}
{{- end }} {{- end }}
{{/*
NFS names
*/}}
{{- define "custom.storageNfsName" -}}
kiwix-nfs-storage
{{- end -}}

View File

@@ -1,13 +1,13 @@
apiVersion: v1 apiVersion: v1
kind: PersistentVolumeClaim kind: PersistentVolumeClaim
metadata: metadata:
name: kiwix-nfs-storage name: {{ include "custom.storageNfsName" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: kiwix-nfs-storage app.kubernetes.io/name: {{ include "custom.storageNfsName" . }}
{{- include "custom.labels" . | nindent 4 }} {{- include "custom.labels" . | nindent 4 }}
spec: spec:
volumeName: kiwix-nfs-storage volumeName: {{ include "custom.storageNfsName" . }}
storageClassName: nfs-client storageClassName: nfs-client
accessModes: accessModes:
- ReadWriteMany - ReadWriteMany

View File

@@ -1,10 +1,10 @@
apiVersion: v1 apiVersion: v1
kind: PersistentVolume kind: PersistentVolume
metadata: metadata:
name: kiwix-nfs-storage name: {{ include "custom.storageNfsName" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: kiwix-nfs-storage app.kubernetes.io/name: {{ include "custom.storageNfsName" . }}
{{- include "custom.labels" . | nindent 4 }} {{- include "custom.labels" . | nindent 4 }}
spec: spec:
persistentVolumeReclaimPolicy: Retain persistentVolumeReclaimPolicy: Retain

View File

@@ -9,27 +9,42 @@ metadata:
spec: spec:
secretStoreRef: secretStoreRef:
kind: ClusterSecretStore kind: ClusterSecretStore
name: vault name: openbao
data: data:
- secretKey: passkey - secretKey: passkey
remoteRef: remoteRef:
key: /cl01tl/komodo/config key: /cl01tl/komodo/key
property: passkey property: passkey
- secretKey: jwt - secretKey: jwt
remoteRef: remoteRef:
key: /cl01tl/komodo/config key: /cl01tl/komodo/key
property: jwt property: jwt
- secretKey: webhook - secretKey: webhook
remoteRef: remoteRef:
key: /cl01tl/komodo/config key: /cl01tl/komodo/key
property: webhook property: webhook
- secretKey: oidc-client-id
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: komodo-oidc-authentik
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: komodo-oidc-authentik
{{- include "custom.labels" . | nindent 4 }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: openbao
data:
- secretKey: client
remoteRef: remoteRef:
key: /authentik/oidc/komodo key: /cl01tl/authentik/oidc/komodo
property: client property: client
- secretKey: oidc-client-secret - secretKey: secret
remoteRef: remoteRef:
key: /authentik/oidc/komodo key: /cl01tl/authentik/oidc/komodo
property: secret property: secret
--- ---
@@ -44,7 +59,7 @@ metadata:
spec: spec:
secretStoreRef: secretStoreRef:
kind: ClusterSecretStore kind: ClusterSecretStore
name: vault name: openbao
data: data:
- secretKey: uri - secretKey: uri
remoteRef: remoteRef:

View File

@@ -68,13 +68,13 @@ komodo:
- name: KOMODO_OIDC_CLIENT_ID - name: KOMODO_OIDC_CLIENT_ID
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: komodo-secret name: komodo-oidc-authentik
key: oidc-client-id key: client
- name: KOMODO_OIDC_CLIENT_SECRET - name: KOMODO_OIDC_CLIENT_SECRET
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: komodo-secret name: komodo-oidc-authentik
key: oidc-client-secret key: secret
- name: KOMODO_OIDC_USE_FULL_EMAIL - name: KOMODO_OIDC_USE_FULL_EMAIL
value: true value: true
resources: resources: