From 8f5a82fb418df5fca5d926a18b9bb6ecc91ece34 Mon Sep 17 00:00:00 2001 From: clonejo Date: Sat, 6 Jan 2024 06:28:38 +0100 Subject: [PATCH 1/3] add client-side python script to create items in bulk --- contrib/bulk_create.py | 47 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 contrib/bulk_create.py diff --git a/contrib/bulk_create.py b/contrib/bulk_create.py new file mode 100755 index 0000000..8ed6aed --- /dev/null +++ b/contrib/bulk_create.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python3 + +import sys + +import requests + +BASE = "https://in.ccc.ac/api" +COUNT = 0 +START_ID = 1 + + +session = requests.Session() +# session.auth = (":)", ":)") + +res = session.get(f"{BASE}/items") +res.raise_for_status() +ids = res.json().keys() +kiste_ids = {int(i.lstrip("K")) for i in ids if i.startswith("K") and i != "K"} +print("existing ids:", repr(kiste_ids), file=sys.stderr) + +current_id = START_ID +new_ids = [] +while len(new_ids) < COUNT: + if current_id not in kiste_ids: + new_ids.append(current_id) + current_id += 1 + +print("created:", file=sys.stderr) +if len(new_ids) == 0: + print("(none)", file=sys.stderr) + + +for i in new_ids: + j = { + "id": f"K{i}", + "is_in": None, + "coords_bl": None, + "coords_tr": None, + "type": "Kiste", + "name": None, + "content": None, + "note": "Bitte Name, Ort, Inhalt eintragen", + "hidden": False, + } + res = session.put(f"{BASE}/items/{j['id']}", json=j) + res.raise_for_status() + print(f"{j['id']},https://in.ccc.ac/form.html?id={j['id']}") From ec64e818291059b04d7577d729275351edfe3db9 Mon Sep 17 00:00:00 2001 From: jomo Date: Thu, 1 Feb 2024 01:48:51 +0100 Subject: [PATCH 2/3] add contrib/ to .dockerignore --- .dockerignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.dockerignore b/.dockerignore index 3db5969..4bc1268 100644 --- a/.dockerignore +++ b/.dockerignore @@ -3,3 +3,4 @@ /README.md *.pyc Dockerfile +/contrib/ From 703a210f1ef92e0449245472b3b8d53cb7721dff Mon Sep 17 00:00:00 2001 From: jomo Date: Thu, 1 Feb 2024 02:03:02 +0100 Subject: [PATCH 3/3] use BASE var in bulk_create output --- contrib/bulk_create.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/contrib/bulk_create.py b/contrib/bulk_create.py index 8ed6aed..3d7fbf5 100755 --- a/contrib/bulk_create.py +++ b/contrib/bulk_create.py @@ -4,7 +4,7 @@ import sys import requests -BASE = "https://in.ccc.ac/api" +BASE = "https://in.ccc.ac" COUNT = 0 START_ID = 1 @@ -12,7 +12,7 @@ START_ID = 1 session = requests.Session() # session.auth = (":)", ":)") -res = session.get(f"{BASE}/items") +res = session.get(f"{BASE}/api/items") res.raise_for_status() ids = res.json().keys() kiste_ids = {int(i.lstrip("K")) for i in ids if i.startswith("K") and i != "K"} @@ -42,6 +42,6 @@ for i in new_ids: "note": "Bitte Name, Ort, Inhalt eintragen", "hidden": False, } - res = session.put(f"{BASE}/items/{j['id']}", json=j) + res = session.put(f"{BASE}/api/items/{j['id']}", json=j) res.raise_for_status() - print(f"{j['id']},https://in.ccc.ac/form.html?id={j['id']}") + print(f"{j['id']},{BASE}/form.html?id={j['id']}")