Compare commits
	
		
			13 commits
		
	
	
		
			199e028175
			...
			34ffbfbd00
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
							 | 
						34ffbfbd00 | ||
| 3b04b9ff48 | |||
| 3ab51432d0 | |||
| 763fdb6eef | |||
| 3bc9a36829 | |||
| 983d10aa1a | |||
| b13da9919f | |||
| fce6484611 | |||
| 81ad4aa209 | |||
| b21d4962c3 | |||
| 893e15164a | |||
| 977500c287 | |||
| f9e98bbeeb | 
					 15 changed files with 374 additions and 4 deletions
				
			
		| 
						 | 
					@ -18,7 +18,7 @@ spec:
 | 
				
			||||||
        app: cloudtube
 | 
					        app: cloudtube
 | 
				
			||||||
    spec:
 | 
					    spec:
 | 
				
			||||||
      containers:
 | 
					      containers:
 | 
				
			||||||
      - image: abeltramo/cloudtube:efcef9b
 | 
					      - image: abeltramo/cloudtube:be33a66
 | 
				
			||||||
        imagePullPolicy: Always
 | 
					        imagePullPolicy: Always
 | 
				
			||||||
        name: cloudtube
 | 
					        name: cloudtube
 | 
				
			||||||
        resources: {}
 | 
					        resources: {}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -47,7 +47,7 @@ spec:
 | 
				
			||||||
          requests:
 | 
					          requests:
 | 
				
			||||||
            gpu.intel.com/i915: "1"
 | 
					            gpu.intel.com/i915: "1"
 | 
				
			||||||
            cpu: 163m
 | 
					            cpu: 163m
 | 
				
			||||||
            memory: 3861631195
 | 
					#            memory: 3861631195
 | 
				
			||||||
        volumeMounts:
 | 
					        volumeMounts:
 | 
				
			||||||
        - mountPath: /data2/media
 | 
					        - mountPath: /data2/media
 | 
				
			||||||
          name: runningseries
 | 
					          name: runningseries
 | 
				
			||||||
| 
						 | 
					@ -65,9 +65,12 @@ spec:
 | 
				
			||||||
          name: dev-dri
 | 
					          name: dev-dri
 | 
				
			||||||
        - mountPath: /mergedseries
 | 
					        - mountPath: /mergedseries
 | 
				
			||||||
          name: mergedseries
 | 
					          name: mergedseries
 | 
				
			||||||
 | 
					        - mountPath: /youtube
 | 
				
			||||||
 | 
					          name: youtube
 | 
				
			||||||
      dnsPolicy: ClusterFirst
 | 
					      dnsPolicy: ClusterFirst
 | 
				
			||||||
      nodeSelector:
 | 
					      nodeSelector:
 | 
				
			||||||
        intel.feature.node.kubernetes.io/gpu: "true"
 | 
					        intel.feature.node.kubernetes.io/gpu: "true"
 | 
				
			||||||
 | 
					        oldname: i9worker
 | 
				
			||||||
      terminationGracePeriodSeconds: 30
 | 
					      terminationGracePeriodSeconds: 30
 | 
				
			||||||
      volumes:
 | 
					      volumes:
 | 
				
			||||||
      - persistentVolumeClaim:
 | 
					      - persistentVolumeClaim:
 | 
				
			||||||
| 
						 | 
					@ -95,3 +98,6 @@ spec:
 | 
				
			||||||
      - persistentVolumeClaim:
 | 
					      - persistentVolumeClaim:
 | 
				
			||||||
          claimName: smb-mergedseries
 | 
					          claimName: smb-mergedseries
 | 
				
			||||||
        name: mergedseries
 | 
					        name: mergedseries
 | 
				
			||||||
 | 
					      - persistentVolumeClaim:
 | 
				
			||||||
 | 
					          claimName: smb-youtube
 | 
				
			||||||
 | 
					        name: youtube
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -57,3 +57,15 @@ spec:
 | 
				
			||||||
    requests:
 | 
					    requests:
 | 
				
			||||||
      storage: 1Gi
 | 
					      storage: 1Gi
 | 
				
			||||||
  storageClassName: smb-mergedseries
 | 
					  storageClassName: smb-mergedseries
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: PersistentVolumeClaim
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: smb-youtube
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  accessModes:
 | 
				
			||||||
 | 
					  - ReadWriteOnce
 | 
				
			||||||
 | 
					  resources:
 | 
				
			||||||
 | 
					    requests:
 | 
				
			||||||
 | 
					      storage: 1Ti
 | 
				
			||||||
 | 
					  storageClassName: smb-youtube
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -10,7 +10,7 @@ helmCharts:
 | 
				
			||||||
  includeCRDs: true
 | 
					  includeCRDs: true
 | 
				
			||||||
  namespace: node-feature-discovery
 | 
					  namespace: node-feature-discovery
 | 
				
			||||||
  releaseName: node-feature-discovery
 | 
					  releaseName: node-feature-discovery
 | 
				
			||||||
  version: 0.17.0
 | 
					  version: 0.17.1
 | 
				
			||||||
  repo: https://kubernetes-sigs.github.io/node-feature-discovery/charts
 | 
					  repo: https://kubernetes-sigs.github.io/node-feature-discovery/charts
 | 
				
			||||||
  valuesInLine:
 | 
					  valuesInLine:
 | 
				
			||||||
    master:
 | 
					    master:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										17
									
								
								apps-kustomized/smb-storageclasses/sc-youtube.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								apps-kustomized/smb-storageclasses/sc-youtube.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,17 @@
 | 
				
			||||||
 | 
					apiVersion: storage.k8s.io/v1
 | 
				
			||||||
 | 
					kind: StorageClass
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: smb-youtube
 | 
				
			||||||
 | 
					provisioner: smb.csi.k8s.io
 | 
				
			||||||
 | 
					parameters:
 | 
				
			||||||
 | 
					  source: "//172.20.0.70/youtube"
 | 
				
			||||||
 | 
					  csi.storage.k8s.io/node-stage-secret-name: smb-creds
 | 
				
			||||||
 | 
					  csi.storage.k8s.io/node-stage-secret-namespace: kube-system
 | 
				
			||||||
 | 
					reclaimPolicy: Retain
 | 
				
			||||||
 | 
					volumeBindingMode: Immediate
 | 
				
			||||||
 | 
					mountOptions:
 | 
				
			||||||
 | 
					  - dir_mode=0777
 | 
				
			||||||
 | 
					  - file_mode=0777
 | 
				
			||||||
 | 
					  - uid=1001
 | 
				
			||||||
 | 
					  - gid=1001
 | 
				
			||||||
 | 
					  - noperm
 | 
				
			||||||
							
								
								
									
										87
									
								
								apps-kustomized/tdarr/deploy.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								apps-kustomized/tdarr/deploy.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,87 @@
 | 
				
			||||||
 | 
					apiVersion: apps/v1
 | 
				
			||||||
 | 
					kind: Deployment
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  labels:
 | 
				
			||||||
 | 
					    app: tdarr
 | 
				
			||||||
 | 
					  name: tdarr
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  selector:
 | 
				
			||||||
 | 
					    matchLabels:
 | 
				
			||||||
 | 
					      app: tdarr
 | 
				
			||||||
 | 
					  strategy:
 | 
				
			||||||
 | 
					    type: Recreate
 | 
				
			||||||
 | 
					  template:
 | 
				
			||||||
 | 
					    metadata:
 | 
				
			||||||
 | 
					      labels:
 | 
				
			||||||
 | 
					        app: tdarr
 | 
				
			||||||
 | 
					    spec:
 | 
				
			||||||
 | 
					      containers:
 | 
				
			||||||
 | 
					      - env:
 | 
				
			||||||
 | 
					        - name: TZ
 | 
				
			||||||
 | 
					          value: "Europe/Berlin"
 | 
				
			||||||
 | 
					        - name: serverPort
 | 
				
			||||||
 | 
					          value: "8266"
 | 
				
			||||||
 | 
					        - name: webUIPort
 | 
				
			||||||
 | 
					          value: "8265"
 | 
				
			||||||
 | 
					        - name: internalNode
 | 
				
			||||||
 | 
					          value: "true"
 | 
				
			||||||
 | 
					        - name: inContainer
 | 
				
			||||||
 | 
					          value: "true"
 | 
				
			||||||
 | 
					        - name: ffmpegVersion
 | 
				
			||||||
 | 
					          value: "6"
 | 
				
			||||||
 | 
					        image: ghcr.io/haveagitgat/tdarr:2.27.02
 | 
				
			||||||
 | 
					        imagePullPolicy: Always
 | 
				
			||||||
 | 
					        name: tdarr
 | 
				
			||||||
 | 
					        ports:
 | 
				
			||||||
 | 
					        - containerPort: 8265
 | 
				
			||||||
 | 
					          name: http
 | 
				
			||||||
 | 
					          protocol: TCP
 | 
				
			||||||
 | 
					        - containerPort: 8266
 | 
				
			||||||
 | 
					          name: server
 | 
				
			||||||
 | 
					          protocol: TCP
 | 
				
			||||||
 | 
					        resources:
 | 
				
			||||||
 | 
					          limits:
 | 
				
			||||||
 | 
					            gpu.intel.com/i915: "1"
 | 
				
			||||||
 | 
					          requests:
 | 
				
			||||||
 | 
					            gpu.intel.com/i915: "1"
 | 
				
			||||||
 | 
					            cpu: 25m
 | 
				
			||||||
 | 
					            memory: 628694953
 | 
				
			||||||
 | 
					        volumeMounts:
 | 
				
			||||||
 | 
					        - mountPath: /config
 | 
				
			||||||
 | 
					          name: config
 | 
				
			||||||
 | 
					        - mountPath: /app/server
 | 
				
			||||||
 | 
					          name: config
 | 
				
			||||||
 | 
					          subPath: server
 | 
				
			||||||
 | 
					        - mountPath: /app/config
 | 
				
			||||||
 | 
					          name: config
 | 
				
			||||||
 | 
					          subPath: config
 | 
				
			||||||
 | 
					        - mountPath: /app/logs
 | 
				
			||||||
 | 
					          name: config
 | 
				
			||||||
 | 
					          subPath: logs
 | 
				
			||||||
 | 
					        - mountPath: /data
 | 
				
			||||||
 | 
					          name: data
 | 
				
			||||||
 | 
					        - mountPath: /media/series
 | 
				
			||||||
 | 
					          name: combinedseries
 | 
				
			||||||
 | 
					        - mountPath: /dev/dri
 | 
				
			||||||
 | 
					          name: dev-dri
 | 
				
			||||||
 | 
					      dnsPolicy: ClusterFirst
 | 
				
			||||||
 | 
					      nodeSelector:
 | 
				
			||||||
 | 
					        intel.feature.node.kubernetes.io/gpu: "true"
 | 
				
			||||||
 | 
					        oldname: beelink
 | 
				
			||||||
 | 
					      restartPolicy: Always
 | 
				
			||||||
 | 
					      schedulerName: default-scheduler
 | 
				
			||||||
 | 
					      terminationGracePeriodSeconds: 30
 | 
				
			||||||
 | 
					      volumes:
 | 
				
			||||||
 | 
					      - name: config
 | 
				
			||||||
 | 
					        persistentVolumeClaim:
 | 
				
			||||||
 | 
					          claimName: tdarr-config-data
 | 
				
			||||||
 | 
					      - name: combinedseries
 | 
				
			||||||
 | 
					        persistentVolumeClaim:
 | 
				
			||||||
 | 
					          claimName: smb-combinedseries
 | 
				
			||||||
 | 
					      - name: data
 | 
				
			||||||
 | 
					        persistentVolumeClaim:
 | 
				
			||||||
 | 
					          claimName: smb-usenet
 | 
				
			||||||
 | 
					      - hostPath:
 | 
				
			||||||
 | 
					          path: /dev/dri
 | 
				
			||||||
 | 
					          type: Directory
 | 
				
			||||||
 | 
					        name: dev-dri
 | 
				
			||||||
							
								
								
									
										35
									
								
								apps-kustomized/tdarr/pvc-smb.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								apps-kustomized/tdarr/pvc-smb.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,35 @@
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: PersistentVolumeClaim
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: smb-series
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  accessModes:
 | 
				
			||||||
 | 
					  - ReadWriteOnce
 | 
				
			||||||
 | 
					  resources:
 | 
				
			||||||
 | 
					    requests:
 | 
				
			||||||
 | 
					      storage: 1Gi
 | 
				
			||||||
 | 
					  storageClassName: smb-series
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: PersistentVolumeClaim
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: smb-combinedseries
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  accessModes:
 | 
				
			||||||
 | 
					  - ReadWriteOnce
 | 
				
			||||||
 | 
					  resources:
 | 
				
			||||||
 | 
					    requests:
 | 
				
			||||||
 | 
					      storage: 1Gi
 | 
				
			||||||
 | 
					  storageClassName: smb-combinedseries
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: PersistentVolumeClaim
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: smb-usenet
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  accessModes:
 | 
				
			||||||
 | 
					  - ReadWriteOnce
 | 
				
			||||||
 | 
					  resources:
 | 
				
			||||||
 | 
					    requests:
 | 
				
			||||||
 | 
					      storage: 1Gi
 | 
				
			||||||
 | 
					  storageClassName: smb-usenet
 | 
				
			||||||
							
								
								
									
										13
									
								
								apps-kustomized/tdarr/pvc.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								apps-kustomized/tdarr/pvc.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,13 @@
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: PersistentVolumeClaim
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  labels:
 | 
				
			||||||
 | 
					    app.kubernetes.io/instance: tdarr
 | 
				
			||||||
 | 
					  name: tdarr-config-data
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  accessModes:
 | 
				
			||||||
 | 
					  - ReadWriteOnce
 | 
				
			||||||
 | 
					  resources:
 | 
				
			||||||
 | 
					    requests:
 | 
				
			||||||
 | 
					      storage: 1Gi
 | 
				
			||||||
 | 
					  storageClassName: longhorn-fast
 | 
				
			||||||
							
								
								
									
										19
									
								
								apps-kustomized/tdarr/svc.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								apps-kustomized/tdarr/svc.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,19 @@
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: Service
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  annotations:
 | 
				
			||||||
 | 
					    external-dns.alpha.kubernetes.io/hostname: tdarr.martyn.berlin
 | 
				
			||||||
 | 
					  labels:
 | 
				
			||||||
 | 
					    app: tdarr
 | 
				
			||||||
 | 
					  name: tdarr
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  ports:
 | 
				
			||||||
 | 
					  - targetPort: 8265
 | 
				
			||||||
 | 
					    port: 80
 | 
				
			||||||
 | 
					    name: web
 | 
				
			||||||
 | 
					  - targetPort: 8266
 | 
				
			||||||
 | 
					    port: 8266
 | 
				
			||||||
 | 
					    name: s2s
 | 
				
			||||||
 | 
					  selector:
 | 
				
			||||||
 | 
					    app: tdarr
 | 
				
			||||||
 | 
					  type: LoadBalancer
 | 
				
			||||||
| 
						 | 
					@ -38,7 +38,7 @@ spec:
 | 
				
			||||||
        - name: TS_KUBE_SECRET
 | 
					        - name: TS_KUBE_SECRET
 | 
				
			||||||
          value: tailscale
 | 
					          value: tailscale
 | 
				
			||||||
        - name: TS_USERSPACE
 | 
					        - name: TS_USERSPACE
 | 
				
			||||||
          value: "true"
 | 
					          value: "false"
 | 
				
			||||||
        - name: TS_OUTBOUND_HTTP_PROXY_LISTEN
 | 
					        - name: TS_OUTBOUND_HTTP_PROXY_LISTEN
 | 
				
			||||||
          value: "localhost:1055"
 | 
					          value: "localhost:1055"
 | 
				
			||||||
        - name: TS_SOCKS5_SERVER
 | 
					        - name: TS_SOCKS5_SERVER
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										75
									
								
								apps-kustomized/ytdl-sub/configmap.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								apps-kustomized/ytdl-sub/configmap.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,75 @@
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					data:
 | 
				
			||||||
 | 
					  config.yaml: |
 | 
				
			||||||
 | 
					    configuration:
 | 
				
			||||||
 | 
					      working_directory: ".ytdl-sub-working-directory"
 | 
				
			||||||
 | 
					    presets:
 | 
				
			||||||
 | 
					      TV Shows:
 | 
				
			||||||
 | 
					        preset:
 | 
				
			||||||
 | 
					        - "Jellyfin TV Show by Date"
 | 
				
			||||||
 | 
					        - "Max 1080p"
 | 
				
			||||||
 | 
					        embed_thumbnail: True
 | 
				
			||||||
 | 
					        throttle_protection:
 | 
				
			||||||
 | 
					          sleep_per_download_s:
 | 
				
			||||||
 | 
					            min: 2.2
 | 
				
			||||||
 | 
					            max: 10.8
 | 
				
			||||||
 | 
					          sleep_per_subscription_s:
 | 
				
			||||||
 | 
					            min: 9.0
 | 
				
			||||||
 | 
					            max: 14.1
 | 
				
			||||||
 | 
					          max_downloads_per_subscription:
 | 
				
			||||||
 | 
					            min: 10
 | 
				
			||||||
 | 
					            max: 36
 | 
				
			||||||
 | 
					        ytdl_options:
 | 
				
			||||||
 | 
					          source_address: '0.0.0.0'
 | 
				
			||||||
 | 
					          cookiefile: /config/cookies.txt
 | 
				
			||||||
 | 
					        date_range:
 | 
				
			||||||
 | 
					          after: "now-1year"
 | 
				
			||||||
 | 
					        chapters:
 | 
				
			||||||
 | 
					          # Embedded Chapter Fields
 | 
				
			||||||
 | 
					          embed_chapters: True
 | 
				
			||||||
 | 
					          allow_chapters_from_comments: False
 | 
				
			||||||
 | 
					          remove_chapters_regex:
 | 
				
			||||||
 | 
					            - "Intro"
 | 
				
			||||||
 | 
					            - "Outro"
 | 
				
			||||||
 | 
					          # Sponsorblock Fields
 | 
				
			||||||
 | 
					          sponsorblock_categories:
 | 
				
			||||||
 | 
					            - "outro"
 | 
				
			||||||
 | 
					            - "selfpromo"
 | 
				
			||||||
 | 
					            - "preview"
 | 
				
			||||||
 | 
					            - "interaction"
 | 
				
			||||||
 | 
					            - "sponsor"
 | 
				
			||||||
 | 
					            - "music_offtopic"
 | 
				
			||||||
 | 
					            - "intro"
 | 
				
			||||||
 | 
					          remove_sponsorblock_categories: "sponsor"
 | 
				
			||||||
 | 
					      TV Shows Fortnight:
 | 
				
			||||||
 | 
					        preset:
 | 
				
			||||||
 | 
					        - "TV Shows"
 | 
				
			||||||
 | 
					        date_range:
 | 
				
			||||||
 | 
					          after: "now-14days"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  subscriptions.yaml: |
 | 
				
			||||||
 | 
					    __preset__:
 | 
				
			||||||
 | 
					      overrides:
 | 
				
			||||||
 | 
					        tv_show_directory: "/youtube/tv_shows"
 | 
				
			||||||
 | 
					        music_directory: "/youtube/tv_shows"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    "TV Shows":
 | 
				
			||||||
 | 
					      = Documentaries:
 | 
				
			||||||
 | 
					        "Technogy Connections": "https://www.youtube.com/@TechnologyConnections"
 | 
				
			||||||
 | 
					        "Adam Savage's Tested": "https://www.youtube.com/@tested"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    "TV Shows Fortnight":
 | 
				
			||||||
 | 
					      = Music:
 | 
				
			||||||
 | 
					        "Rick Beato": "https://www.youtube.com/@RickBeato"
 | 
				
			||||||
 | 
					  run_cron: |
 | 
				
			||||||
 | 
					    #!/bin/bash
 | 
				
			||||||
 | 
					    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 | 
				
			||||||
 | 
					    echo 'Cron started, running ytdl-sub...'
 | 
				
			||||||
 | 
					    cd /config/
 | 
				
			||||||
 | 
					    ytdl-sub --config=config.yaml sub subscriptions.yaml
 | 
				
			||||||
 | 
					  abc: |
 | 
				
			||||||
 | 
					    0     */6     *       *       *       /config/ytdl-sub-configs/run_cron
 | 
				
			||||||
 | 
					kind: ConfigMap
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  creationTimestamp: null
 | 
				
			||||||
 | 
					  name: ytdl-sub-config
 | 
				
			||||||
							
								
								
									
										77
									
								
								apps-kustomized/ytdl-sub/deploy.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								apps-kustomized/ytdl-sub/deploy.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,77 @@
 | 
				
			||||||
 | 
					apiVersion: apps/v1
 | 
				
			||||||
 | 
					kind: Deployment
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  labels:
 | 
				
			||||||
 | 
					    app: ytdl-sub
 | 
				
			||||||
 | 
					  name: ytdl-sub
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  selector:
 | 
				
			||||||
 | 
					    matchLabels:
 | 
				
			||||||
 | 
					      app: ytdl-sub
 | 
				
			||||||
 | 
					  strategy:
 | 
				
			||||||
 | 
					    type: Recreate
 | 
				
			||||||
 | 
					  template:
 | 
				
			||||||
 | 
					    metadata:
 | 
				
			||||||
 | 
					      labels:
 | 
				
			||||||
 | 
					        app: ytdl-sub
 | 
				
			||||||
 | 
					    spec:
 | 
				
			||||||
 | 
					      containers:
 | 
				
			||||||
 | 
					      - env:
 | 
				
			||||||
 | 
					        - name: PUID
 | 
				
			||||||
 | 
					          value: "1000"
 | 
				
			||||||
 | 
					        - name: PGID
 | 
				
			||||||
 | 
					          value: "1000"
 | 
				
			||||||
 | 
					        - name: TZ
 | 
				
			||||||
 | 
					          value: "Europe/Berlin"
 | 
				
			||||||
 | 
					        - name: DOCKER_MODS
 | 
				
			||||||
 | 
					          value: "linuxserver/mods:universal-cron"
 | 
				
			||||||
 | 
					        image: ghcr.io/jmbannon/ytdl-sub:ubuntu-2024.12.27
 | 
				
			||||||
 | 
					        imagePullPolicy: Always
 | 
				
			||||||
 | 
					        name: ytdl-sub
 | 
				
			||||||
 | 
					        ports:
 | 
				
			||||||
 | 
					        - containerPort: 8443
 | 
				
			||||||
 | 
					          name: http
 | 
				
			||||||
 | 
					          protocol: TCP
 | 
				
			||||||
 | 
					        volumeMounts:
 | 
				
			||||||
 | 
					        - mountPath: /config
 | 
				
			||||||
 | 
					          name: config
 | 
				
			||||||
 | 
					        - mountPath: /youtube
 | 
				
			||||||
 | 
					          name: youtube
 | 
				
			||||||
 | 
					      initContainers:
 | 
				
			||||||
 | 
					      - image: busybox
 | 
				
			||||||
 | 
					        name: copy-config
 | 
				
			||||||
 | 
					        command:
 | 
				
			||||||
 | 
					        - /bin/sh
 | 
				
			||||||
 | 
					        - -c
 | 
				
			||||||
 | 
					        - "cp /config_src/config.yaml /config/;
 | 
				
			||||||
 | 
					          cp /config_src/subscriptions.yaml /config/;
 | 
				
			||||||
 | 
					          cp /secret/cookies.txt /config/;
 | 
				
			||||||
 | 
					          mkdir /config/ytdl-sub-configs ;
 | 
				
			||||||
 | 
					          cp /config_src/run_cron /config/ytdl-sub-configs/ ;
 | 
				
			||||||
 | 
					          chmod +x /config/ytdl-sub-configs/run_cron ;
 | 
				
			||||||
 | 
					          mkdir /config/crontabs ;
 | 
				
			||||||
 | 
					          cp /config_src/abc /config/crontabs/ ;
 | 
				
			||||||
 | 
					          chown -R 1000:1000 /config"
 | 
				
			||||||
 | 
					        volumeMounts:
 | 
				
			||||||
 | 
					        - mountPath: /config_src
 | 
				
			||||||
 | 
					          name: config-src
 | 
				
			||||||
 | 
					        - mountPath: /config
 | 
				
			||||||
 | 
					          name: config
 | 
				
			||||||
 | 
					        - mountPath: /secret
 | 
				
			||||||
 | 
					          name: cookie
 | 
				
			||||||
 | 
					      dnsPolicy: ClusterFirst
 | 
				
			||||||
 | 
					      restartPolicy: Always
 | 
				
			||||||
 | 
					      schedulerName: default-scheduler
 | 
				
			||||||
 | 
					      terminationGracePeriodSeconds: 30
 | 
				
			||||||
 | 
					      volumes:
 | 
				
			||||||
 | 
					      - name: config
 | 
				
			||||||
 | 
					        emptyDir: {}
 | 
				
			||||||
 | 
					      - name: cookie
 | 
				
			||||||
 | 
					        secret:
 | 
				
			||||||
 | 
					          secretName: cookie-secret
 | 
				
			||||||
 | 
					      - name: config-src
 | 
				
			||||||
 | 
					        configMap:
 | 
				
			||||||
 | 
					          name: ytdl-sub-config
 | 
				
			||||||
 | 
					      - name: youtube
 | 
				
			||||||
 | 
					        persistentVolumeClaim:
 | 
				
			||||||
 | 
					          claimName: smb-youtube
 | 
				
			||||||
							
								
								
									
										11
									
								
								apps-kustomized/ytdl-sub/pvc-smb.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								apps-kustomized/ytdl-sub/pvc-smb.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,11 @@
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: PersistentVolumeClaim
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: smb-youtube
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  accessModes:
 | 
				
			||||||
 | 
					  - ReadWriteOnce
 | 
				
			||||||
 | 
					  resources:
 | 
				
			||||||
 | 
					    requests:
 | 
				
			||||||
 | 
					      storage: 1Gi
 | 
				
			||||||
 | 
					  storageClassName: smb-youtube
 | 
				
			||||||
							
								
								
									
										15
									
								
								apps-kustomized/ytdl-sub/svc.yaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								apps-kustomized/ytdl-sub/svc.yaml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: Service
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  annotations:
 | 
				
			||||||
 | 
					    external-dns.alpha.kubernetes.io/hostname: ytdl-sub.martyn.berlin
 | 
				
			||||||
 | 
					  labels:
 | 
				
			||||||
 | 
					    app: ytdl-sub
 | 
				
			||||||
 | 
					  name: ytdl-sub
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  ports:
 | 
				
			||||||
 | 
					  - targetPort: 8989
 | 
				
			||||||
 | 
					    port: 80
 | 
				
			||||||
 | 
					  selector:
 | 
				
			||||||
 | 
					    app: ytdl-sub
 | 
				
			||||||
 | 
					  type: LoadBalancer
 | 
				
			||||||
| 
						 | 
					@ -61,6 +61,9 @@ spec:
 | 
				
			||||||
          - name: moreoldseries
 | 
					          - name: moreoldseries
 | 
				
			||||||
            size: 1Ti
 | 
					            size: 1Ti
 | 
				
			||||||
            storageClass: longhorn-spinny
 | 
					            storageClass: longhorn-spinny
 | 
				
			||||||
 | 
					          - name: youtube
 | 
				
			||||||
 | 
					            size: 1Ti
 | 
				
			||||||
 | 
					            storageClass: longhorn-spinny
 | 
				
			||||||
          - name: evenmoreoldseries
 | 
					          - name: evenmoreoldseries
 | 
				
			||||||
            size: 1Ti
 | 
					            size: 1Ti
 | 
				
			||||||
            storageClass: longhorn-spinny
 | 
					            storageClass: longhorn-spinny
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue