Compare commits

...

25 Commits

Author SHA1 Message Date
gitea-admin 28ad13bb64 Merge pull request 'fix: create missing PVCs and clean up duplicate deployments' (#66) from orion/auto/fix-create-missing-pvcs-and-clean-up-dup-1779141054277 into main
Reviewed-on: #66
2026-05-18 22:04:41 +00:00
gitea-admin 680b8b4da1 fix: create missing PVCs and clean up duplicate deployments
Validate Manifests / validate (pull_request) Has been cancelled
2026-05-18 21:50:58 +00:00
gitea-admin ff34bd0087 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:58 +00:00
gitea-admin 9f39336724 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:57 +00:00
gitea-admin e4e3489d27 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:57 +00:00
gitea-admin 193aaf572b fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:57 +00:00
gitea-admin 614ac48682 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:56 +00:00
gitea-admin 0629960253 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:56 +00:00
gitea-admin 3091aea164 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:56 +00:00
gitea-admin 9b89d84f35 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:55 +00:00
gitea-admin 1b265e2664 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:55 +00:00
gitea-admin 44a2fcede8 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:55 +00:00
gitea-admin 34e5828393 fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:55 +00:00
gitea-admin 47ac1479bb fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:54 +00:00
gitea-admin 98aeed94ea fix: create missing PVCs and clean up duplicate deployments 2026-05-18 21:50:54 +00:00
gitea-admin 254898bef4 Delete directory 'deployments/tailscale' 2026-05-17 22:30:29 +00:00
gitea-admin b9a0711dd6 Merge pull request 'restructure: organize excalidraw under apps namespace folder' (#65) from orion/auto/restructure-organize-excalidraw-under-ap-1779056975970 into main
Reviewed-on: #65
2026-05-17 22:29:49 +00:00
gitea-admin 5ba0675e84 restructure: organize excalidraw under apps namespace folder
Validate Manifests / validate (pull_request) Has been cancelled
2026-05-17 22:29:37 +00:00
gitea-admin 1ce130cc1e restructure: organize excalidraw under apps namespace folder 2026-05-17 22:29:37 +00:00
gitea-admin 0ee716114c restructure: organize excalidraw under apps namespace folder 2026-05-17 22:29:37 +00:00
gitea-admin 5293a25e47 restructure: organize excalidraw under apps namespace folder 2026-05-17 22:29:37 +00:00
gitea-admin e3fbcb0016 restructure: organize excalidraw under apps namespace folder 2026-05-17 22:29:36 +00:00
gitea-admin 5211a16701 restructure: organize excalidraw under apps namespace folder 2026-05-17 22:29:36 +00:00
gitea-admin f40366bc3e restructure: organize excalidraw under apps namespace folder 2026-05-17 22:29:36 +00:00
gitea-admin bbf77a57e2 Merge pull request 'restructure: move tailscale into namespace folder' (#63) from orion/auto/restructure-move-tailscale-into-namespac-1779056949375 into main
Reviewed-on: #63
2026-05-17 22:29:23 +00:00
24 changed files with 151 additions and 393 deletions
@@ -5,10 +5,8 @@ metadata:
namespace: apps namespace: apps
annotations: annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod cert-manager.io/cluster-issuer: letsencrypt-prod
traefik.ingress.kubernetes.io/router.entrypoints: web,websecure nginx.ingress.kubernetes.io/ssl-redirect: "true"
traefik.ingress.kubernetes.io/router.tls: "true"
spec: spec:
ingressClassName: traefik
tls: tls:
- hosts: - hosts:
- excalidraw.khalisio.com - excalidraw.khalisio.com
@@ -7,7 +7,7 @@ spec:
selector: selector:
app: excalidraw app: excalidraw
ports: ports:
- name: http - protocol: TCP
port: 80 port: 80
targetPort: 80 targetPort: 80
type: ClusterIP type: ClusterIP
+25
View File
@@ -0,0 +1,25 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: bazarr-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storageClassName: longhorn
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: bazarr-podcasts
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storageClassName: longhorn
-44
View File
@@ -1,44 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: bazarr
namespace: media
spec:
replicas: 1
selector:
matchLabels:
app: bazarr
template:
metadata:
labels:
app: bazarr
spec:
containers:
- name: bazarr
image: lscr.io/linuxserver/bazarr:latest
ports:
- containerPort: 6767
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "America/New_York"
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
- name: podcasts
mountPath: /podcasts
volumes:
- name: config
persistentVolumeClaim:
claimName: bazarr-config
- name: media
persistentVolumeClaim:
claimName: media-data
- name: podcasts
persistentVolumeClaim:
claimName: bazarr-podcasts
+12
View File
@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: emby-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: longhorn
-40
View File
@@ -1,40 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: emby
namespace: media
spec:
replicas: 1
selector:
matchLabels:
app: emby
template:
metadata:
labels:
app: emby
spec:
containers:
- name: emby
image: lscr.io/linuxserver/emby:latest
ports:
- containerPort: 8096
- containerPort: 8920
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "America/New_York"
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
volumes:
- name: config
persistentVolumeClaim:
claimName: emby-config
- name: media
persistentVolumeClaim:
claimName: media-data
+25
View File
@@ -0,0 +1,25 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: lidarr-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
storageClassName: longhorn
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: lidarr-downloads
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 50Gi
storageClassName: longhorn
-44
View File
@@ -1,44 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: lidarr
namespace: media
spec:
replicas: 1
selector:
matchLabels:
app: lidarr
template:
metadata:
labels:
app: lidarr
spec:
containers:
- name: lidarr
image: lscr.io/linuxserver/lidarr:latest
ports:
- containerPort: 8686
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "America/New_York"
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
- name: downloads
mountPath: /downloads
volumes:
- name: config
persistentVolumeClaim:
claimName: lidarr-config
- name: media
persistentVolumeClaim:
claimName: media-data
- name: downloads
persistentVolumeClaim:
claimName: lidarr-downloads
+12
View File
@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: prowlarr-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storageClassName: longhorn
@@ -1,34 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: prowlarr
namespace: media
spec:
replicas: 1
selector:
matchLabels:
app: prowlarr
template:
metadata:
labels:
app: prowlarr
spec:
containers:
- name: prowlarr
image: lscr.io/linuxserver/prowlarr:latest
ports:
- containerPort: 9696
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "America/New_York"
volumeMounts:
- name: config
mountPath: /config
volumes:
- name: config
persistentVolumeClaim:
claimName: prowlarr-config
+25
View File
@@ -0,0 +1,25 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: radarr-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
storageClassName: longhorn
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: radarr-downloads
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 50Gi
storageClassName: longhorn
-44
View File
@@ -1,44 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: radarr
namespace: media
spec:
replicas: 1
selector:
matchLabels:
app: radarr
template:
metadata:
labels:
app: radarr
spec:
containers:
- name: radarr
image: lscr.io/linuxserver/radarr:latest
ports:
- containerPort: 7878
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "America/New_York"
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
- name: downloads
mountPath: /downloads
volumes:
- name: config
persistentVolumeClaim:
claimName: radarr-config
- name: media
persistentVolumeClaim:
claimName: media-data
- name: downloads
persistentVolumeClaim:
claimName: radarr-downloads
+25
View File
@@ -0,0 +1,25 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: readarr-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storageClassName: longhorn
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: readarr-books
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storageClassName: longhorn
-44
View File
@@ -1,44 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: readarr
namespace: media
spec:
replicas: 1
selector:
matchLabels:
app: readarr
template:
metadata:
labels:
app: readarr
spec:
containers:
- name: readarr
image: lscr.io/linuxserver/readarr:develop
ports:
- containerPort: 8787
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "America/New_York"
volumeMounts:
- name: config
mountPath: /config
- name: books
mountPath: /books
- name: downloads
mountPath: /downloads
volumes:
- name: config
persistentVolumeClaim:
claimName: readarr-config
- name: books
persistentVolumeClaim:
claimName: readarr-books
- name: downloads
persistentVolumeClaim:
claimName: readarr-downloads
+25
View File
@@ -0,0 +1,25 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: sonarr-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
storageClassName: longhorn
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: sonarr-downloads
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 50Gi
storageClassName: longhorn
-44
View File
@@ -1,44 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: sonarr
namespace: media
spec:
replicas: 1
selector:
matchLabels:
app: sonarr
template:
metadata:
labels:
app: sonarr
spec:
containers:
- name: sonarr
image: lscr.io/linuxserver/sonarr:develop
ports:
- containerPort: 8989
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "America/New_York"
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
- name: downloads
mountPath: /downloads
volumes:
- name: config
persistentVolumeClaim:
claimName: sonarr-config
- name: media
persistentVolumeClaim:
claimName: media-data
- name: downloads
persistentVolumeClaim:
claimName: sonarr-downloads
-6
View File
@@ -1,6 +0,0 @@
apiVersion: v1
kind: Namespace
metadata:
name: apps
labels:
name: apps
-6
View File
@@ -1,6 +0,0 @@
apiVersion: v1
kind: Namespace
metadata:
name: tailscale
labels:
kubernetes.io/metadata.name: tailscale
@@ -1,14 +0,0 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: tailscale-operator
rules:
- apiGroups: [""]
resources: ["pods", "services", "secrets", "configmaps"]
verbs: ["*"]
- apiGroups: ["apps"]
resources: ["deployments", "daemonsets", "statefulsets"]
verbs: ["*"]
- apiGroups: ["networking.k8s.io"]
resources: ["networkpolicies", "ingresses"]
verbs: ["*"]
@@ -1,12 +0,0 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: tailscale-operator
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: tailscale-operator
subjects:
- kind: ServiceAccount
name: tailscale-operator
namespace: tailscale
@@ -1,31 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: tailscale-operator
namespace: tailscale
labels:
app: tailscale-operator
spec:
replicas: 1
selector:
matchLabels:
app: tailscale-operator
template:
metadata:
labels:
app: tailscale-operator
spec:
serviceAccountName: tailscale-operator
containers:
- name: operator
image: ghcr.io/tailscale/operator:v1.70.0
env:
- name: DEPLOY_TYPE
value: k8s
volumeMounts:
- name: config
mountPath: /config
volumes:
- name: config
secret:
secretName: tailscale-operator-config
@@ -1,21 +0,0 @@
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: tailscale-operator
namespace: tailscale
spec:
refreshInterval: 1h
secretStoreRef:
name: vault
kind: SecretStore
target:
name: tailscale-operator
template:
engineVersion: v2
data:
TS_AUTHKEY: "{{ .TS_AUTHKEY }}"
data:
- secretKey: TS_AUTHKEY
remoteRef:
key: secret/data/kubernetes/tailscale-operator
property: TS_AUTHKEY
@@ -1,5 +0,0 @@
apiVersion: v1
kind: ServiceAccount
metadata:
name: tailscale-operator
namespace: tailscale