ソースを参照

move lidarr_empty_folders.py to configmap

Josh Bicking 1 日 前
コミット
e690676c1b
2 ファイル変更37 行追加34 行削除
  1. 37 0
      media/lidarr/lidarr-empty-folders.yaml
  2. 0 34
      media/lidarr/lidarr_empty_folders.py

+ 37 - 0
media/lidarr/lidarr-empty-folders.yaml

@@ -54,3 +54,40 @@ spec:
               items:
               - key: lidarr_empty_folders.py
                 path: lidarr_empty_folders.py
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: lidarr-empty-folders
+  namespace: plex
+data:
+  lidarr_empty_folders.py: |
+    import requests
+    from requests.adapters import HTTPAdapter, Retry
+    import os
+    import sys
+    if len(sys.argv) != 4:
+        print("One or more args are undefined")
+        sys.exit(1)
+
+    lidarr_server, lidarr_api_key, music_folder = sys.argv[1:4]
+
+
+    retries = Retry(total=10,
+                    backoff_factor=1,
+                    status_forcelist=[ 500, 502, 503, 504 ])
+    s = requests.Session()
+    s.mount('http://', HTTPAdapter(max_retries=retries))
+    resp = s.get(
+        f"{lidarr_server}/api/v1/artist",
+        headers={"Authorization": f"Bearer {lidarr_api_key}"}
+        )
+    artists = resp.json()
+
+    for artist in artists:
+         artist_name = artist.get("artistName")
+         artist_path = music_folder + artist_name
+         if ('/' not in artist_name) and (not os.path.exists(artist_path)):
+            print("Creating ", artist_path)
+            os.mkdir(artist_path)
+

+ 0 - 34
media/lidarr/lidarr_empty_folders.py

@@ -1,34 +0,0 @@
-# Lidarr has trouble moving Music without a pre-existing artist folder.
-# 
-# */1 * * * * /usr/bin/run-one /usr/bin/python3 /path/to/lidarr_empty_folders.py <lidarr IP>:8686 <API key> /path/to/Music/ 2>&1 | /usr/bin/logger -t lidarr_empty_folders
-# Or run it in a k8s cronjob. See lidarr-empty-folders.yaml
-# kubectl -n plex create configmap lidarr-empty-folders --from-file=lidarr_empty_folders.py
-
-import requests
-from requests.adapters import HTTPAdapter, Retry
-import os
-import sys
-if len(sys.argv) != 4:
-    print("One or more args are undefined")
-    sys.exit(1)
-
-lidarr_server, lidarr_api_key, music_folder = sys.argv[1:4]
-
-
-retries = Retry(total=10,
-                backoff_factor=1,
-                status_forcelist=[ 500, 502, 503, 504 ])
-s = requests.Session()
-s.mount('http://', HTTPAdapter(max_retries=retries))
-resp = s.get(
-    f"{lidarr_server}/api/v1/artist",
-    headers={"Authorization": f"Bearer {lidarr_api_key}"}
-    )
-artists = resp.json()
-
-for artist in artists:
-     artist_name = artist.get("artistName")
-     artist_path = music_folder + artist_name
-     if ('/' not in artist_name) and (not os.path.exists(artist_path)):
-        print("Creating ", artist_path)
-        os.mkdir(artist_path)