Skip to content

Commit 57468ec

Browse files
add apps
1 parent 2ef770e commit 57468ec

File tree

12 files changed

+291
-0
lines changed

12 files changed

+291
-0
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
apiVersion: "external-secrets.io/v1"
3+
kind: "ExternalSecret"
4+
metadata:
5+
name: "smbcreds"
6+
spec:
7+
refreshInterval: "1h"
8+
secretStoreRef:
9+
name: "vault"
10+
kind: "ClusterSecretStore"
11+
target:
12+
name: "smbcreds"
13+
creationPolicy: "Owner"
14+
data:
15+
- secretKey: "username"
16+
remoteRef:
17+
key: "secret/soeren.cloud/env/prod/jellyfin"
18+
property: "username"
19+
- secretKey: "password"
20+
remoteRef:
21+
key: "secret/soeren.cloud/env/prod/jellyfin"
22+
property: "password"
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1beta1
3+
kind: Kustomization
4+
namespace: "jellyfin"
5+
resources:
6+
- namespace.yaml
7+
- external-secret-samba.yaml
8+
- samba.yaml
9+
- ../../../../apps/jellyfin
10+
components:
11+
- ../../../../apps/jellyfin/components/istio
12+
- ../../../../apps/jellyfin/components/pvc-config
13+
- ../../../../apps/jellyfin/components/storage-healthcheck
14+
patches:
15+
- target:
16+
kind: "VirtualService"
17+
name: "jellyfin"
18+
patch: |-
19+
- op: "replace"
20+
path: "/spec/hosts"
21+
value:
22+
- "jellyfin.svc.dd.soeren.cloud"
23+
- target:
24+
kind: StatefulSet
25+
name: jellyfin
26+
patch: |
27+
- op: "test"
28+
path: "/spec/template/spec/volumes/2/name"
29+
value: "media"
30+
- op: "replace"
31+
path: "/spec/template/spec/volumes/2"
32+
value:
33+
name: "media"
34+
persistentVolumeClaim:
35+
claimName: "media"
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
kind: Namespace
3+
apiVersion: v1
4+
metadata:
5+
name: jellyfin
6+
labels:
7+
name: jellyfin
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
---
2+
apiVersion: v1
3+
kind: PersistentVolume
4+
metadata:
5+
name: "jellyfin-smb-media"
6+
spec:
7+
capacity:
8+
storage: "5Gi"
9+
accessModes:
10+
- "ReadOnlyMany"
11+
claimRef:
12+
namespace: "jellyfin"
13+
name: "media"
14+
csi:
15+
driver: "smb.csi.k8s.io"
16+
volumeHandle: "jellyfin-media"
17+
volumeAttributes:
18+
source: "//nas.dd.soeren.cloud/movies"
19+
options: "vers=3,seal"
20+
nodeStageSecretRef:
21+
name: "smbcreds"
22+
namespace: "jellyfin"
23+
persistentVolumeReclaimPolicy: "Retain"
24+
---
25+
apiVersion: v1
26+
kind: PersistentVolumeClaim
27+
metadata:
28+
name: "media"
29+
spec:
30+
accessModes:
31+
- "ReadOnlyMany"
32+
resources:
33+
requests:
34+
storage: "5Gi"
35+
volumeName: "jellyfin-smb-media"
36+
storageClassName: ""
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
database:
2+
path: /data/local.db
3+
4+
clients:
5+
dd:
6+
url: https://nas.dd.soeren.cloud
7+
user: soeren
8+
api_key_file: /apikeys/apikey_nas_dd_soeren_cloud
9+
ez:
10+
url: https://jellyfin.svc.dd.soeren.cloud
11+
user: soeren
12+
api_key_file: /apikeys/apikey_jellyfin_svc_dd_soeren_cloud
13+
14+
events:
15+
webhook:
16+
addr: "0.0.0.0:9000"
17+
path: "/webhook"
18+
19+
sync_interval_mins: 5
20+
full_sync_interval_mins: 360
21+
22+
metrics_addr: "127.0.0.1:8972"
23+
metrics_path: "/metrics"
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
apiVersion: "external-secrets.io/v1"
3+
kind: "ExternalSecret"
4+
metadata:
5+
name: "apikeys"
6+
spec:
7+
refreshInterval: "1h"
8+
secretStoreRef:
9+
name: "vault"
10+
kind: "ClusterSecretStore"
11+
target:
12+
name: "apikeys"
13+
creationPolicy: "Owner"
14+
data:
15+
- secretKey: "apikey_jellyfin_svc_dd_soeren_cloud"
16+
remoteRef:
17+
key: "secret/soeren.cloud/env/prod/jellyporter"
18+
property: "apikey_jellyfin_svc_dd_soeren_cloud"
19+
- secretKey: "apikey_nas_dd_soeren_cloud"
20+
remoteRef:
21+
key: "secret/soeren.cloud/env/prod/jellyporter"
22+
property: "apikey_nas_dd_soeren_cloud"
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1beta1
3+
kind: Kustomization
4+
namespace: "jellyporter"
5+
resources:
6+
- namespace.yaml
7+
- external-secret-samba.yaml
8+
- ../../../../apps/jellyporter
9+
components:
10+
- ../../../../apps/jellyporter/components/pvc
11+
configMapGenerator:
12+
- name: config
13+
files:
14+
- config.yaml
15+
patches:
16+
- target:
17+
kind: StatefulSet
18+
name: jellyporter
19+
patch: |
20+
- op: "test"
21+
path: "/spec/template/spec/volumes/1/name"
22+
value: "config"
23+
- op: "replace"
24+
path: "/spec/template/spec/volumes/1"
25+
value:
26+
name: "config"
27+
configMap:
28+
name: "config"
29+
- op: add
30+
path: /spec/template/spec/volumes/-
31+
value:
32+
name: "apikeys"
33+
secret:
34+
secretName: "apikeys"
35+
- op: add
36+
path: /spec/template/spec/containers/0/volumeMounts/-
37+
value:
38+
name: "apikeys"
39+
mountPath: /apikeys
40+
readOnly: true
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
kind: Namespace
3+
apiVersion: v1
4+
metadata:
5+
name: "jellyporter"
6+
labels:
7+
name: "jellyporter"
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
apiVersion: "external-secrets.io/v1"
3+
kind: "ExternalSecret"
4+
metadata:
5+
name: "smbcreds"
6+
spec:
7+
refreshInterval: "1h"
8+
secretStoreRef:
9+
name: "vault"
10+
kind: "ClusterSecretStore"
11+
target:
12+
name: "smbcreds"
13+
creationPolicy: "Owner"
14+
data:
15+
- secretKey: "username"
16+
remoteRef:
17+
key: "secret/soeren.cloud/env/prod/jellyfin"
18+
property: "username"
19+
- secretKey: "password"
20+
remoteRef:
21+
key: "secret/soeren.cloud/env/prod/jellyfin"
22+
property: "password"
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1beta1
3+
kind: Kustomization
4+
namespace: "navidrome"
5+
resources:
6+
- namespace.yaml
7+
- external-secret-samba.yaml
8+
- samba.yaml
9+
- ../../../../apps/navidrome
10+
components:
11+
- ../../../../apps/navidrome/components/istio
12+
- ../../../../apps/navidrome/components/pvc
13+
patches:
14+
- target:
15+
kind: "VirtualService"
16+
name: "navidrome"
17+
patch: |-
18+
- op: "replace"
19+
path: "/spec/hosts"
20+
value:
21+
- "navidrome.svc.dd.soeren.cloud"
22+
- target:
23+
kind: Deployment
24+
name: navidrome
25+
patch: |
26+
- op: "test"
27+
path: "/spec/template/spec/volumes/1/name"
28+
value: "music"
29+
- op: "replace"
30+
path: "/spec/template/spec/volumes/1"
31+
value:
32+
name: "music"
33+
persistentVolumeClaim:
34+
claimName: "music"

0 commit comments

Comments
 (0)