From e79cfb4b4a3352cd0e9483757ae65d36b7d72c3c Mon Sep 17 00:00:00 2001 From: gitea-bot Date: Wed, 24 Dec 2025 04:05:54 +0000 Subject: [PATCH] Automated Manifest Update (#2804) This PR contains newly rendered Kubernetes manifests automatically generated by the CI workflow. Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/2804 Co-authored-by: gitea-bot Co-committed-by: gitea-bot --- ...gMap-jellyfin-meilisearch-environment.yaml | 17 ++++ ...ellyfin-meilisearch-master-key-secret.yaml | 21 ++++ ...stentVolumeClaim-jellyfin-meilisearch.yaml | 19 ++++ ...-jellyfin-meilisearch-test-connection.yaml | 18 ++++ .../Service-jellyfin-meilisearch.yaml | 22 +++++ .../ServiceAccount-jellyfin-meilisearch.yaml | 13 +++ .../ServiceMonitor-jellyfin-meilisearch.yaml | 30 ++++++ .../StatefulSet-jellyfin-meilisearch.yaml | 95 +++++++++++++++++++ 8 files changed, 235 insertions(+) create mode 100644 clusters/cl01tl/manifests/jellyfin/ConfigMap-jellyfin-meilisearch-environment.yaml create mode 100644 clusters/cl01tl/manifests/jellyfin/ExternalSecret-jellyfin-meilisearch-master-key-secret.yaml create mode 100644 clusters/cl01tl/manifests/jellyfin/PersistentVolumeClaim-jellyfin-meilisearch.yaml create mode 100644 clusters/cl01tl/manifests/jellyfin/Pod-jellyfin-meilisearch-test-connection.yaml create mode 100644 clusters/cl01tl/manifests/jellyfin/Service-jellyfin-meilisearch.yaml create mode 100644 clusters/cl01tl/manifests/jellyfin/ServiceAccount-jellyfin-meilisearch.yaml create mode 100644 clusters/cl01tl/manifests/jellyfin/ServiceMonitor-jellyfin-meilisearch.yaml create mode 100644 clusters/cl01tl/manifests/jellyfin/StatefulSet-jellyfin-meilisearch.yaml diff --git a/clusters/cl01tl/manifests/jellyfin/ConfigMap-jellyfin-meilisearch-environment.yaml b/clusters/cl01tl/manifests/jellyfin/ConfigMap-jellyfin-meilisearch-environment.yaml new file mode 100644 index 000000000..10ce14d7b --- /dev/null +++ b/clusters/cl01tl/manifests/jellyfin/ConfigMap-jellyfin-meilisearch-environment.yaml @@ -0,0 +1,17 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: jellyfin-meilisearch-environment + labels: + helm.sh/chart: meilisearch-0.19.0 + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/version: "v1.30.0" + app.kubernetes.io/component: search-engine + app.kubernetes.io/part-of: meilisearch + app.kubernetes.io/managed-by: Helm +data: + MEILI_ENV: "production" + MEILI_EXPERIMENTAL_DUMPLESS_UPGRADE: "true" + MEILI_NO_ANALYTICS: "true" + MEILI_EXPERIMENTAL_ENABLE_METRICS: "true" diff --git a/clusters/cl01tl/manifests/jellyfin/ExternalSecret-jellyfin-meilisearch-master-key-secret.yaml b/clusters/cl01tl/manifests/jellyfin/ExternalSecret-jellyfin-meilisearch-master-key-secret.yaml new file mode 100644 index 000000000..5b7e8b889 --- /dev/null +++ b/clusters/cl01tl/manifests/jellyfin/ExternalSecret-jellyfin-meilisearch-master-key-secret.yaml @@ -0,0 +1,21 @@ +apiVersion: external-secrets.io/v1 +kind: ExternalSecret +metadata: + name: jellyfin-meilisearch-master-key-secret + namespace: jellyfin + labels: + app.kubernetes.io/name: jellyfin-meilisearch-master-key-secret + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/part-of: jellyfin +spec: + secretStoreRef: + kind: ClusterSecretStore + name: vault + data: + - secretKey: MEILI_MASTER_KEY + remoteRef: + conversionStrategy: Default + decodingStrategy: None + key: /cl01tl/jellyfin/meilisearch + metadataPolicy: None + property: MEILI_MASTER_KEY diff --git a/clusters/cl01tl/manifests/jellyfin/PersistentVolumeClaim-jellyfin-meilisearch.yaml b/clusters/cl01tl/manifests/jellyfin/PersistentVolumeClaim-jellyfin-meilisearch.yaml new file mode 100644 index 000000000..10355b21f --- /dev/null +++ b/clusters/cl01tl/manifests/jellyfin/PersistentVolumeClaim-jellyfin-meilisearch.yaml @@ -0,0 +1,19 @@ +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: + name: jellyfin-meilisearch + labels: + helm.sh/chart: meilisearch-0.19.0 + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/version: "v1.30.0" + app.kubernetes.io/component: search-engine + app.kubernetes.io/part-of: meilisearch + app.kubernetes.io/managed-by: Helm +spec: + accessModes: + - "ReadWriteOnce" + resources: + requests: + storage: "5Gi" + storageClassName: "ceph-block" diff --git a/clusters/cl01tl/manifests/jellyfin/Pod-jellyfin-meilisearch-test-connection.yaml b/clusters/cl01tl/manifests/jellyfin/Pod-jellyfin-meilisearch-test-connection.yaml new file mode 100644 index 000000000..8f0e62209 --- /dev/null +++ b/clusters/cl01tl/manifests/jellyfin/Pod-jellyfin-meilisearch-test-connection.yaml @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: Pod +metadata: + name: jellyfin-meilisearch-test-connection + labels: + app.kubernetes.io/name: meilisearch + helm.sh/chart: meilisearch-0.19.0 + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/managed-by: Helm + annotations: + "helm.sh/hook": test-success +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['jellyfin-meilisearch:7700'] + restartPolicy: Never diff --git a/clusters/cl01tl/manifests/jellyfin/Service-jellyfin-meilisearch.yaml b/clusters/cl01tl/manifests/jellyfin/Service-jellyfin-meilisearch.yaml new file mode 100644 index 000000000..ed5a7991b --- /dev/null +++ b/clusters/cl01tl/manifests/jellyfin/Service-jellyfin-meilisearch.yaml @@ -0,0 +1,22 @@ +apiVersion: v1 +kind: Service +metadata: + name: jellyfin-meilisearch + labels: + helm.sh/chart: meilisearch-0.19.0 + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/version: "v1.30.0" + app.kubernetes.io/component: search-engine + app.kubernetes.io/part-of: meilisearch + app.kubernetes.io/managed-by: Helm +spec: + type: ClusterIP + ports: + - port: 7700 + targetPort: http + protocol: TCP + name: http + selector: + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin diff --git a/clusters/cl01tl/manifests/jellyfin/ServiceAccount-jellyfin-meilisearch.yaml b/clusters/cl01tl/manifests/jellyfin/ServiceAccount-jellyfin-meilisearch.yaml new file mode 100644 index 000000000..998d69611 --- /dev/null +++ b/clusters/cl01tl/manifests/jellyfin/ServiceAccount-jellyfin-meilisearch.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + name: jellyfin-meilisearch + labels: + helm.sh/chart: meilisearch-0.19.0 + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/version: "v1.30.0" + app.kubernetes.io/component: search-engine + app.kubernetes.io/part-of: meilisearch + app.kubernetes.io/managed-by: Helm +automountServiceAccountToken: false diff --git a/clusters/cl01tl/manifests/jellyfin/ServiceMonitor-jellyfin-meilisearch.yaml b/clusters/cl01tl/manifests/jellyfin/ServiceMonitor-jellyfin-meilisearch.yaml new file mode 100644 index 000000000..90f20776e --- /dev/null +++ b/clusters/cl01tl/manifests/jellyfin/ServiceMonitor-jellyfin-meilisearch.yaml @@ -0,0 +1,30 @@ +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: jellyfin-meilisearch + namespace: jellyfin + labels: + helm.sh/chart: meilisearch-0.19.0 + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/version: "v1.30.0" + app.kubernetes.io/component: search-engine + app.kubernetes.io/part-of: meilisearch + app.kubernetes.io/managed-by: Helm +spec: + jobLabel: jellyfin + namespaceSelector: + matchNames: + - jellyfin + selector: + matchLabels: + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + endpoints: + - port: http + path: /metrics + interval: 1m + scrapeTimeout: 10s + bearerTokenSecret: + name: jellyfin-meilisearch-master-key-secret + key: MEILI_MASTER_KEY diff --git a/clusters/cl01tl/manifests/jellyfin/StatefulSet-jellyfin-meilisearch.yaml b/clusters/cl01tl/manifests/jellyfin/StatefulSet-jellyfin-meilisearch.yaml new file mode 100644 index 000000000..da021a57c --- /dev/null +++ b/clusters/cl01tl/manifests/jellyfin/StatefulSet-jellyfin-meilisearch.yaml @@ -0,0 +1,95 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: jellyfin-meilisearch + labels: + helm.sh/chart: meilisearch-0.19.0 + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/version: "v1.30.0" + app.kubernetes.io/component: search-engine + app.kubernetes.io/part-of: meilisearch + app.kubernetes.io/managed-by: Helm +spec: + replicas: 1 + serviceName: jellyfin-meilisearch + selector: + matchLabels: + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + template: + metadata: + labels: + helm.sh/chart: meilisearch-0.19.0 + app.kubernetes.io/name: meilisearch + app.kubernetes.io/instance: jellyfin + app.kubernetes.io/version: "v1.30.0" + app.kubernetes.io/component: search-engine + app.kubernetes.io/part-of: meilisearch + app.kubernetes.io/managed-by: Helm + annotations: + checksum/config: cfc429e94dfc4e3fa0c30282b6b04cea85f198cc31d6b7089a7d65f8d4d19ff1 + spec: + serviceAccountName: jellyfin-meilisearch + securityContext: + fsGroup: 1000 + fsGroupChangePolicy: OnRootMismatch + runAsGroup: 1000 + runAsNonRoot: true + runAsUser: 1000 + volumes: + - name: tmp + emptyDir: {} + - name: data + persistentVolumeClaim: + claimName: jellyfin-meilisearch + containers: + - name: meilisearch + image: "getmeili/meilisearch:v1.30.0" + imagePullPolicy: IfNotPresent + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + readOnlyRootFilesystem: true + volumeMounts: + - name: tmp + mountPath: /tmp + - name: data + mountPath: /meili_data + envFrom: + - configMapRef: + name: jellyfin-meilisearch-environment + - secretRef: + name: jellyfin-meilisearch-master-key-secret + ports: + - name: http + containerPort: 7700 + protocol: TCP + startupProbe: + httpGet: + path: /health + port: http + periodSeconds: 1 + initialDelaySeconds: 1 + failureThreshold: 60 + timeoutSeconds: 1 + livenessProbe: + httpGet: + path: /health + port: http + periodSeconds: 10 + initialDelaySeconds: 0 + timeoutSeconds: 10 + readinessProbe: + httpGet: + path: /health + port: http + periodSeconds: 10 + initialDelaySeconds: 0 + timeoutSeconds: 10 + resources: + requests: + cpu: 10m + memory: 128Mi