Compare commits

..

7 Commits

Author SHA1 Message Date
Gitea Actions Bot
8cdd463bfd Auto-update README with current k8s applications
All checks were successful
Terraform / Terraform (pull_request) Successful in 32s
Generated by CI/CD workflow on 2025-12-28 12:54:39

This PR updates the README.md file with the current list of applications found in the k8s/ directory structure.
2025-12-28 12:54:39 +00:00
5d4d620681 Fixed KHM desktop
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 8s
Check with kubeconform / lint (push) Successful in 11s
Auto-update README / Generate README and Create MR (push) Successful in 6s
2025-12-28 12:54:06 +00:00
5cf2a32ca0 Fixed KHM desktop
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 8s
Check with kubeconform / lint (push) Successful in 11s
Auto-update README / Generate README and Create MR (push) Successful in 6s
2025-12-28 12:45:47 +00:00
35c072471a Fixed KHM desktop
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 8s
Check with kubeconform / lint (push) Successful in 12s
Auto-update README / Generate README and Create MR (push) Successful in 7s
2025-12-28 12:43:47 +00:00
9c0458c020 Fixed KHM desktop
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 8s
Check with kubeconform / lint (push) Successful in 9s
Auto-update README / Generate README and Create MR (push) Successful in 7s
2025-12-28 12:41:35 +00:00
28d5bcfabd Added KHM desktop
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 17s
Check with kubeconform / lint (push) Successful in 23s
Auto-update README / Generate README and Create MR (push) Successful in 7s
2025-12-28 12:37:32 +00:00
65b2aaa91d Added xandikos calendar
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 8s
Check with kubeconform / lint (push) Successful in 11s
Auto-update README / Generate README and Create MR (push) Successful in 6s
2025-12-23 01:54:30 +00:00
6 changed files with 144 additions and 1 deletions

View File

@@ -14,7 +14,7 @@ spec:
DB_HOST: psql.psql.svc
DB_USER: mmdl
DB_NAME: mmdl
DB_PORT: 5432
DB_PORT: "5432"
DB_PASS: |-
{{ .pg_pass }}
AES_PASSWORD: |-

View File

@@ -47,3 +47,20 @@ spec:
server: https://kubernetes.default.svc
sourceRepos:
- ssh://git@gt.hexor.cy:30022/ab/homelab.git
---
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
name: desktop
namespace: argocd
spec:
clusterResourceWhitelist:
- group: '*'
kind: '*'
description: Hexor Home Lab Desktop Apps
destinations:
- namespace: '*'
server: https://kubernetes.default.svc
sourceRepos:
- ssh://git@gt.hexor.cy:30022/ab/homelab.git

18
k8s/desktop/khm/app.yaml Normal file
View File

@@ -0,0 +1,18 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: khm-client
namespace: argocd
spec:
project: desktop
destination:
namespace: default
server: https://kubernetes.default.svc
source:
repoURL: ssh://git@gt.hexor.cy:30022/ab/homelab.git
targetRevision: HEAD
path: k8s/desktop/khm
syncPolicy:
automated:
selfHeal: true
prune: true

View File

@@ -0,0 +1,33 @@
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: khm-client-creds
spec:
target:
name: khm-client-creds
deletionPolicy: Delete
template:
type: Opaque
data:
USERNAME: |-
{{ .username }}
PASSWORD: |-
{{ .password }}
data:
- secretKey: username
sourceRef:
storeRef:
name: vaultwarden-login
kind: ClusterSecretStore
remoteRef:
key: 19c06480-0814-4d1f-aa80-710105989188
property: login.username
- secretKey: password
sourceRef:
storeRef:
name: vaultwarden-login
kind: ClusterSecretStore
remoteRef:
key: 19c06480-0814-4d1f-aa80-710105989188
property: login.password

View File

@@ -0,0 +1,69 @@
---
apiVersion: batch/v1
kind: CronJob
metadata:
name: khm-client
labels:
app: khm-client
spec:
schedule: "* * * * *"
concurrencyPolicy: Forbid
successfulJobsHistoryLimit: 3
failedJobsHistoryLimit: 3
jobTemplate:
spec:
template:
metadata:
labels:
app: khm-client
spec:
restartPolicy: OnFailure
nodeSelector:
node-role.kubernetes.io/desktop: ""
tolerations:
- key: workload
operator: Equal
value: desktop
effect: NoSchedule
hostNetwork: false
containers:
- name: khm-client
image: 'ultradesu/khm:latest'
imagePullPolicy: Always
securityContext:
privileged: false
resources:
requests:
memory: "64Mi"
cpu: "50m"
limits:
memory: "256Mi"
cpu: "200m"
command:
- /bin/sh
- -c
- |
/usr/local/bin/khm \
--known-hosts /host-ssh/known_hosts \
--host https://khm.hexor.cy \
--flow=private \
--basic-auth="${USERNAME}:${PASSWORD}" \
--in-place
env:
- name: USERNAME
valueFrom:
secretKeyRef:
name: khm-client-creds
key: USERNAME
- name: PASSWORD
valueFrom:
secretKeyRef:
name: khm-client-creds
key: PASSWORD
volumeMounts:
- name: known-hosts
mountPath: /host-ssh/known_hosts
volumes:
- name: known-hosts
hostPath:
path: /home/ab/.ssh/known_hosts

View File

@@ -0,0 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- external-secrets.yaml
- khm-client-cronjob.yaml