From e7057c639eeec4faa4e01cace74da9af6c6a0328 Mon Sep 17 00:00:00 2001
From: Bjarke Madsen <bjarke.madsen@geant.org>
Date: Fri, 19 Feb 2021 11:29:21 +0100
Subject: [PATCH] Allow creating and fetching grafana folders

---
 brian_dashboard_manager/grafana/folder.py | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 brian_dashboard_manager/grafana/folder.py

diff --git a/brian_dashboard_manager/grafana/folder.py b/brian_dashboard_manager/grafana/folder.py
new file mode 100644
index 0000000..ce81f8b
--- /dev/null
+++ b/brian_dashboard_manager/grafana/folder.py
@@ -0,0 +1,19 @@
+import logging
+from requests.exceptions import HTTPError
+from brian_dashboard_manager.grafana.utils.request import Request, TokenRequest
+
+
+logger = logging.getLogger(__name__)
+
+def get_folders(request: TokenRequest):
+    return request.get('api/folders')
+
+
+def create_folder(request: TokenRequest, title):
+    try:
+        data = {'title': title, 'uid': title.replace(' ', '_')}
+        r = request.post('api/folders', json=data)
+    except HTTPError:
+        logger.exception(f'Error when creating folder {title}')
+        return None
+    return r
-- 
GitLab