Compare commits

...

17 Commits

Author SHA1 Message Date
gitea-admin c212339187 feat(pelican): deploy Pelican Panel with database and ingress
Validate Manifests / validate (pull_request) Has been cancelled
2026-05-18 23:34:35 +00:00
gitea-admin 613b584630 feat(pelican): deploy Pelican Panel with database and ingress 2026-05-18 23:34:34 +00:00
gitea-admin 8e7c1a2ffd feat(pelican): deploy Pelican Panel with database and ingress 2026-05-18 23:34:34 +00:00
gitea-admin c797588088 feat(pelican): deploy Pelican Panel with database and ingress 2026-05-18 23:34:34 +00:00
gitea-admin 3254971789 feat(pelican): deploy Pelican Panel with database and ingress 2026-05-18 23:34:33 +00:00
gitea-admin 2445c058fc feat(pelican): deploy Pelican Panel with database and ingress 2026-05-18 23:34:33 +00:00
gitea-admin b4452ceb6c feat(pelican): deploy Pelican Panel with database and ingress 2026-05-18 23:34:33 +00:00
gitea-admin 928b3dcfce Merge pull request 'feat(game-servers): add game-servers namespace' (#83) from orion/auto/feat-game-servers-add-game-servers-names-1779147254094 into main
Reviewed-on: #83
2026-05-18 23:34:32 +00:00
gitea-admin b7fa149297 Merge pull request 'feat(pelican): add pelican namespace' (#82) from orion/auto/feat-pelican-add-pelican-namespace-1779147240136 into main
Reviewed-on: #82
2026-05-18 23:34:19 +00:00
gitea-admin 2f6bd457b7 feat(game-servers): add game-servers namespace
Validate Manifests / validate (pull_request) Has been cancelled
2026-05-18 23:34:14 +00:00
gitea-admin 9a3f5ba344 feat(pelican): add pelican namespace
Validate Manifests / validate (pull_request) Has been cancelled
2026-05-18 23:34:00 +00:00
gitea-admin 0f667bdb5b Merge pull request 'feat(media): remove Readarr from the media stack' (#81) from orion/auto/feat-media-remove-readarr-from-the-media-1779146111490 into main
Reviewed-on: #81
2026-05-18 23:15:24 +00:00
gitea-admin 2aeb3be256 feat(media): remove Readarr from the media stack
Validate Manifests / validate (pull_request) Has been cancelled
2026-05-18 23:15:12 +00:00
gitea-admin 77fded0e99 feat(media): remove Readarr from the media stack 2026-05-18 23:15:12 +00:00
gitea-admin 9be88040a3 feat(media): remove Readarr from the media stack 2026-05-18 23:15:12 +00:00
gitea-admin 8ec36c72fb feat(media): remove Readarr from the media stack 2026-05-18 23:15:11 +00:00
gitea-admin 4a14e3f6d0 Merge pull request 'fix: media-data PVC access mode and Readarr image' (#80) from orion/auto/fix-media-data-pvc-access-mode-and-reada-1779145748122 into main
Reviewed-on: #80
2026-05-18 23:10:48 +00:00
12 changed files with 221 additions and 91 deletions
+7
View File
@@ -0,0 +1,7 @@
apiVersion: v1
kind: Namespace
metadata:
name: game-servers
labels:
app.kubernetes.io/name: game-servers
app.kubernetes.io/managed-by: orion
-47
View File
@@ -1,47 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: readarr
namespace: media
labels:
app: readarr
spec:
replicas: 1
selector:
matchLabels:
app: readarr
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
template:
metadata:
labels:
app: readarr
spec:
containers:
- name: readarr
image: ghcr.io/readarr/readarr:develop
ports:
- containerPort: 8787
name: http
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: Etc/UTC
volumeMounts:
- name: config
mountPath: /config
- name: books
mountPath: /books
volumes:
- name: config
persistentVolumeClaim:
claimName: readarr-config
- name: books
persistentVolumeClaim:
claimName: readarr-books
-24
View File
@@ -1,24 +0,0 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: readarr
namespace: media
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
tls:
- hosts:
- readarr.khalisio.com
secretName: readarr-tls
rules:
- host: readarr.khalisio.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: readarr
port:
name: http
-14
View File
@@ -1,14 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: readarr
namespace: media
spec:
selector:
app: readarr
ports:
- name: http
protocol: TCP
port: 8787
targetPort: 8787
type: ClusterIP
+107
View File
@@ -0,0 +1,107 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: pelican-panel
namespace: pelican
labels:
app.kubernetes.io/name: pelican
app.kubernetes.io/component: panel
app.kubernetes.io/managed-by: orion
spec:
replicas: 2
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
selector:
matchLabels:
app.kubernetes.io/name: pelican
app.kubernetes.io/component: panel
template:
metadata:
labels:
app.kubernetes.io/name: pelican
app.kubernetes.io/component: panel
spec:
containers:
- name: panel
image: ghcr.io/pelican-dev/panel:latest
ports:
- name: http
containerPort: 8080
protocol: TCP
env:
- name: APP_ENV
value: production
- name: APP_NAME
value: "Pelican"
- name: APP_URL
value: "https://pelican.khalisio.com"
- name: DB_HOST
value: postgres.pelican.svc.cluster.local
- name: DB_PORT
value: "5432"
- name: DB_DATABASE
value: pelican
- name: DB_USERNAME
valueFrom:
secretKeyRef:
name: pelican-panel-db
key: DB_USER
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: pelican-panel-db
key: DB_PASSWORD
- name: APP_KEY
valueFrom:
secretKeyRef:
name: pelican-panel-app
key: APP_KEY
- name: SESSION_SECURE
valueFrom:
secretKeyRef:
name: pelican-panel-app
key: SESSION_SECURE
- name: OAUTH_CLIENT_SECRET
valueFrom:
secretKeyRef:
name: pelican-panel-app
key: OAUTH_CLIENT_SECRET
- name: OAUTH_CLIENT_ID
value: pelican-panel
- name: OAUTH_BASE_URI
value: "https://pelican.khalisio.com"
- name: OAUTH_AUTH_SERVER_URI
value: "https://auth.khalisio.com"
- name: OAUTH_CLIENT_PORTAL_URI
value: "https://auth.khalisio.com"
- name: OAUTH_CLIENT_ADMIN_URI
value: "https://auth.khalisio.com"
- name: CACHE_DRIVER
value: file
- name: SESSION_DRIVER
value: file
volumeMounts:
- name: data
mountPath: /var/www/app/storage
- name: logs
mountPath: /var/www/app/storage/logs
- name: uploads
mountPath: /var/www/app/public/uploads
- name: pufferpanel
mountPath: /var/www/app/storage/pufferpanel
volumes:
- name: data
persistentVolumeClaim:
claimName: pelican-data
- name: logs
persistentVolumeClaim:
claimName: pelican-logs
- name: uploads
persistentVolumeClaim:
claimName: pelican-data
- name: pufferpanel
persistentVolumeClaim:
claimName: pelican-data
@@ -0,0 +1,23 @@
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: pelican-panel-app
namespace: pelican
spec:
refreshInterval: 1h
target:
name: pelican-panel-app
creationPolicy: Owner
data:
- secretKey: APP_KEY
remoteRef:
key: secret/data/Talos Cluster/pelican/panel/app
property: APP_KEY
- secretKey: SESSION_SECURE
remoteRef:
key: secret/data/Talos Cluster/pelican/panel/app
property: SESSION_SECURE
- secretKey: OAUTH_CLIENT_SECRET
remoteRef:
key: secret/data/Talos Cluster/pelican/panel/app
property: OAUTH_CLIENT_SECRET
@@ -0,0 +1,15 @@
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: pelican-autostart-key
namespace: pelican
spec:
refreshInterval: 1h
target:
name: pelican-autostart-key
creationPolicy: Owner
data:
- secretKey: api_key
remoteRef:
key: secret/data/Talos Cluster/pelican/panel/autostart
property: api_key
@@ -0,0 +1,19 @@
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: pelican-panel-db
namespace: pelican
spec:
refreshInterval: 1h
target:
name: pelican-panel-db
creationPolicy: Owner
data:
- secretKey: DB_PASSWORD
remoteRef:
key: secret/data/Talos Cluster/pelican/panel/db
property: DB_PASSWORD
- secretKey: DB_USER
remoteRef:
key: secret/data/Talos Cluster/pelican/panel/db
property: DB_USER
+19
View File
@@ -0,0 +1,19 @@
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: pelican-panel
namespace: pelican
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
spec:
entryPoints:
- websecure
tls:
secretName: pelican-panel-tls
routes:
- match: Host(`pelican.khalisio.com`)
kind: Rule
services:
- name: pelican-panel
port: 80
scheme: http
+7
View File
@@ -0,0 +1,7 @@
apiVersion: v1
kind: Namespace
metadata:
name: pelican
labels:
app.kubernetes.io/name: pelican
app.kubernetes.io/managed-by: orion
+18
View File
@@ -0,0 +1,18 @@
apiVersion: v1
kind: Service
metadata:
name: pelican-panel
namespace: pelican
labels:
app.kubernetes.io/name: pelican
app.kubernetes.io/component: panel
spec:
type: ClusterIP
selector:
app.kubernetes.io/name: pelican
app.kubernetes.io/component: panel
ports:
- name: http
port: 80
targetPort: 8080
protocol: TCP
@@ -1,25 +1,25 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: readarr-config
namespace: media
name: pelican-data
namespace: pelican
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storage: 20Gi
storageClassName: longhorn
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: readarr-books
namespace: media
name: pelican-logs
namespace: pelican
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storage: 5Gi
storageClassName: longhorn