Migrate media from birdfeeder1 to robin

This commit is contained in:
Astra Logical 2026-06-08 17:49:34 -04:00
parent 2a0794affc
commit 800bfa736b
21 changed files with 41 additions and 106 deletions

View file

@ -49,9 +49,9 @@ spec:
path: /k3s/abs-kosync-bridge path: /k3s/abs-kosync-bridge
- name: abs-kosync-books - name: abs-kosync-books
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media/books path: /yarr/media/books
- name: abs-kosync-audiobooks - name: abs-kosync-audiobooks
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media/audiobooks path: /yarr/media/audiobooks

View file

@ -45,11 +45,11 @@ spec:
volumes: volumes:
- name: audiobookshelf-audiobooks - name: audiobookshelf-audiobooks
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media/audiobooks path: /yarr/media/audiobooks
- name: audiobookshelf-podcasts - name: audiobookshelf-podcasts
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media/podcasts path: /yarr/media/podcasts
- name: audiobookshelf-config - name: audiobookshelf-config
nfs: nfs:

View file

@ -49,5 +49,5 @@ spec:
path: /k3s/bazarr-anime path: /k3s/bazarr-anime
- name: bazarr-anime-media - name: bazarr-anime-media
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media path: /yarr/media

View file

@ -49,5 +49,5 @@ spec:
path: /k3s/bazarr path: /k3s/bazarr
- name: bazarr-media - name: bazarr-media
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media path: /yarr/media

View file

@ -22,9 +22,6 @@ spec:
containers: containers:
- name: calibre-web - name: calibre-web
image: crocodilestick/calibre-web-automated:latest image: crocodilestick/calibre-web-automated:latest
envFrom:
- secretRef:
name: calibre-web-secret
env: env:
- name: PUID - name: PUID
value: "1000" value: "1000"
@ -57,5 +54,5 @@ spec:
path: /k3s/calibre-web path: /k3s/calibre-web
- name: calibre-web-library - name: calibre-web-library
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media/books/calibre-library path: /yarr/media/books/calibre-library

View file

@ -1,22 +0,0 @@
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: calibre-web-credentials
namespace: default
spec:
refreshInterval: "1h"
secretStoreRef:
name: vault-external-secrets-store
kind: ClusterSecretStore
target:
name: calibre-web-secret
creationPolicy: Owner
data:
- secretKey: OIDC_CLIENT_ID
remoteRef:
key: oauth2-proxy/calibre-web
property: client-id
- secretKey: OIDC_CLIENT_SECRET
remoteRef:
key: oauth2-proxy/calibre-web
property: client-secret

View file

@ -60,5 +60,5 @@ spec:
path: /k3s/deluge path: /k3s/deluge
- name: deluge-media - name: deluge-media
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads

View file

@ -53,5 +53,5 @@ spec:
path: /k3s/jellyfin/cache path: /k3s/jellyfin/cache
- name: yarr - name: yarr
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media path: /yarr/media

View file

@ -19,21 +19,21 @@ metadata:
traefik.ingress.kubernetes.io/router.tls: "true" traefik.ingress.kubernetes.io/router.tls: "true"
traefik.ingress.kubernetes.io/router.middlewares: default-jellyfin-proxy-headers@kubernetescrd traefik.ingress.kubernetes.io/router.middlewares: default-jellyfin-proxy-headers@kubernetescrd
spec: spec:
# tls: tls:
# - hosts: - hosts:
# - beak.mynest.love - beak.mynest.love
# secretName: jellyfin-tls secretName: jellyfin-tls
rules: rules:
# - host: beak.mynest.love - host: beak.mynest.love
# http: http:
# paths: paths:
# - path: / - path: /
# pathType: Prefix pathType: Prefix
# backend: backend:
# service: service:
# name: jellyfin name: jellyfin
# port: port:
# name: http-web name: http-web
- host: jellyfin.k3s.home.nest - host: jellyfin.k3s.home.nest
http: http:
paths: paths:

View file

@ -1,19 +0,0 @@
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: lazylibrarian-sa
namespace: default
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: lazylibrarian-auth-delegator
subjects:
- kind: ServiceAccount
name: lazylibrarian-sa
namespace: default
roleRef:
kind: ClusterRole
name: system:auth-delegator
apiGroup: rbac.authorization.k8s.io

View file

@ -19,17 +19,9 @@ spec:
annotations: annotations:
kompose.cmd: kompose convert -f compose-ll.yaml kompose.cmd: kompose convert -f compose-ll.yaml
kompose.version: 1.38.0 (HEAD) kompose.version: 1.38.0 (HEAD)
vault.hashicorp.com/agent-inject: "true"
vault.hashicorp.com/role: "lazylibrarian-role"
vault.hashicorp.com/agent-inject-secret-credentials: "secret/data/lazylibrarian/config"
vault.hashicorp.com/agent-inject-template-credentials: |
{{- with secret "secret/data/lazylibrarian/config" -}}
export HARDCOVER_API_KEY="{{ .Data.data.hardcover_api_key }}"
{{- end -}}
labels: labels:
io.kompose.service: lazylibrarian io.kompose.service: lazylibrarian
spec: spec:
serviceAccountName: lazylibrarian-sa
containers: containers:
- env: - env:
- name: DOCKER_MODS - name: DOCKER_MODS
@ -61,9 +53,9 @@ spec:
path: /k3s/lazy-librarian path: /k3s/lazy-librarian
- name: lazylibrarian-downloads - name: lazylibrarian-downloads
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads
- name: lazylibrarian-data - name: lazylibrarian-data
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr path: /yarr

View file

@ -53,9 +53,9 @@ spec:
path: /k3s/lidarr path: /k3s/lidarr
- name: lidarr-data - name: lidarr-data
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr path: /yarr
- name: lidarr-downloads - name: lidarr-downloads
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads

View file

@ -19,24 +19,11 @@ spec:
annotations: annotations:
kompose.cmd: kompose convert -f compose-navidrome.yaml kompose.cmd: kompose convert -f compose-navidrome.yaml
kompose.version: 1.38.0 (HEAD) kompose.version: 1.38.0 (HEAD)
vault.hashicorp.com/agent-inject: "true"
vault.hashicorp.com/role: "navidrome-role"
vault.hashicorp.com/agent-inject-secret-credentials: "secret/data/navidrome/config"
vault.hashicorp.com/agent-inject-template-credentials: |
{{- with secret "secret/data/navidrome/config" -}}
export ND_LASTFM_APIKEY="{{ .Data.data.lastfm_api_key }}"
export ND_LASTFM_SECRET="{{ .Data.data.lastfm_secret }}"
{{- end -}}
labels: labels:
io.kompose.service: navidrome io.kompose.service: navidrome
spec: spec:
serviceAccountName: navidrome-sa
containers: containers:
- env: - env:
- name: ND_LASTFM_APIKEY
- name: ND_LASTFM_ENABLED
value: "true"
- name: ND_LASTFM_SECRET
- name: TZ - name: TZ
value: America/New_York value: America/New_York
image: deluan/navidrome:latest image: deluan/navidrome:latest
@ -62,5 +49,5 @@ spec:
path: /k3s/navidrome path: /k3s/navidrome
- name: navidrome-media - name: navidrome-media
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/media/music path: /yarr/media/music

View file

@ -51,9 +51,9 @@ spec:
path: /k3s/radarr-anime path: /k3s/radarr-anime
- name: radarr-anime-data - name: radarr-anime-data
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr path: /yarr
- name: radarr-anime-downloads - name: radarr-anime-downloads
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads

View file

@ -51,9 +51,9 @@ spec:
path: /k3s/radarr path: /k3s/radarr
- name: radarr-data - name: radarr-data
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr path: /yarr
- name: radarr-downloads - name: radarr-downloads
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads

View file

@ -49,5 +49,5 @@ spec:
path: /k3s/sabnzbd path: /k3s/sabnzbd
- name: sabnzbd-downloads - name: sabnzbd-downloads
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads

View file

@ -60,5 +60,5 @@ spec:
path: /k3s/slskd path: /k3s/slskd
- name: slskd-downloads - name: slskd-downloads
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads

View file

@ -51,9 +51,9 @@ spec:
path: /k3s/sonarr-anime path: /k3s/sonarr-anime
- name: sonarr-anime-data - name: sonarr-anime-data
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr path: /yarr
- name: sonarr-anime-downloads - name: sonarr-anime-downloads
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads

View file

@ -51,9 +51,9 @@ spec:
path: /k3s/sonarr path: /k3s/sonarr
- name: sonarr-data - name: sonarr-data
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr path: /yarr
- name: sonarr-downloads - name: sonarr-downloads
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /yarr/downloads path: /yarr/downloads

View file

@ -58,5 +58,5 @@ spec:
path: /k3s/syncthing path: /k3s/syncthing
- name: syncthing-data - name: syncthing-data
nfs: nfs:
server: birdfeeder1.home.nest server: robin.home.nest
path: /mnt/raid/syncthing path: /mnt/raid/syncthing

View file

@ -46,11 +46,11 @@ spec:
command: ["sh", "-c"] command: ["sh", "-c"]
args: args:
- | - |
set -e
K8S_TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token) K8S_TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)
TRANSIT_TOKEN=$(vault write -field=token auth/kubernetes/login \ TRANSIT_TOKEN=$(vault write -field=token auth/kubernetes/login \
role=vault-unsealer \ role=vault-unsealer \
jwt=$K8S_TOKEN \ jwt=$K8S_TOKEN)
address=http://vault-keykeeper.vault.svc.cluster.local:80)
sed "s/REPLACE_WITH_TOKEN/$TRANSIT_TOKEN/" /etc/vault/extraconfig-from-values.hcl > /vault/runtime/vault.hcl sed "s/REPLACE_WITH_TOKEN/$TRANSIT_TOKEN/" /etc/vault/extraconfig-from-values.hcl > /vault/runtime/vault.hcl
securityContext: securityContext: