File tree 3 files changed +49
-24
lines changed 3 files changed +49
-24
lines changed Original file line number Diff line number Diff line change
1
+ from grafana_client .util import format_param_value
2
+
1
3
from ..base import Base
2
4
3
5
@@ -12,7 +14,9 @@ async def search_dashboards(
12
14
tag = None ,
13
15
type_ = None ,
14
16
dashboard_ids = None ,
17
+ dashboard_uids = None ,
15
18
folder_ids = None ,
19
+ folder_uids = None ,
16
20
starred = None ,
17
21
limit = None ,
18
22
):
@@ -22,36 +26,41 @@ async def search_dashboards(
22
26
:param tag:
23
27
:param type_:
24
28
:param dashboard_ids:
29
+ :param dashboard_uids:
25
30
:param folder_ids:
31
+ :param folder_uids:
26
32
:param starred:
27
33
:param limit:
28
34
:return:
29
35
"""
30
36
list_dashboard_path = "/search"
31
- params = []
37
+ params = {}
32
38
33
39
if query :
34
- params . append ( "query=%s" % query )
40
+ params [ "query" ] = query
35
41
36
42
if tag :
37
- params . append ( "tag=%s" % tag )
43
+ params [ "tag" ] = format_param_value ( tag )
38
44
39
45
if type_ :
40
- params . append ( "type=%s" % type_ )
46
+ params [ "type" ] = type_
41
47
42
48
if dashboard_ids :
43
- params .append ("dashboardIds=%s" % dashboard_ids )
49
+ params ["dashboardIds" ] = format_param_value (dashboard_ids )
50
+
51
+ if dashboard_uids :
52
+ params ["dashboardUIDs" ] = format_param_value (dashboard_uids )
44
53
45
54
if folder_ids :
46
- params .append ("folderIds=%s" % folder_ids )
55
+ params ["folderIds" ] = format_param_value (folder_ids )
56
+
57
+ if folder_uids :
58
+ params ["folderUIDs" ] = format_param_value (folder_uids )
47
59
48
60
if starred :
49
- params . append ( "starred=%s" % starred )
61
+ params [ "starred" ] = starred
50
62
51
63
if limit :
52
- params .append ("limit=%s" % limit )
53
-
54
- list_dashboard_path += "?"
55
- list_dashboard_path += "&" .join (params )
64
+ params ["limit" ] = limit
56
65
57
- return await self .client .GET (list_dashboard_path )
66
+ return await self .client .GET (list_dashboard_path , params = params )
Original file line number Diff line number Diff line change
1
+ from grafana_client .util import format_param_value
2
+
1
3
from .base import Base
2
4
3
5
@@ -12,7 +14,9 @@ def search_dashboards(
12
14
tag = None ,
13
15
type_ = None ,
14
16
dashboard_ids = None ,
17
+ dashboard_uids = None ,
15
18
folder_ids = None ,
19
+ folder_uids = None ,
16
20
starred = None ,
17
21
limit = None ,
18
22
):
@@ -22,36 +26,41 @@ def search_dashboards(
22
26
:param tag:
23
27
:param type_:
24
28
:param dashboard_ids:
29
+ :param dashboard_uids:
25
30
:param folder_ids:
31
+ :param folder_uids:
26
32
:param starred:
27
33
:param limit:
28
34
:return:
29
35
"""
30
36
list_dashboard_path = "/search"
31
- params = []
37
+ params = {}
32
38
33
39
if query :
34
- params . append ( "query=%s" % query )
40
+ params [ "query" ] = query
35
41
36
42
if tag :
37
- params . append ( "tag=%s" % tag )
43
+ params [ "tag" ] = format_param_value ( tag )
38
44
39
45
if type_ :
40
- params . append ( "type=%s" % type_ )
46
+ params [ "type" ] = type_
41
47
42
48
if dashboard_ids :
43
- params .append ("dashboardIds=%s" % dashboard_ids )
49
+ params ["dashboardIds" ] = format_param_value (dashboard_ids )
50
+
51
+ if dashboard_uids :
52
+ params ["dashboardUIDs" ] = format_param_value (dashboard_uids )
44
53
45
54
if folder_ids :
46
- params .append ("folderIds=%s" % folder_ids )
55
+ params ["folderIds" ] = format_param_value (folder_ids )
56
+
57
+ if folder_uids :
58
+ params ["folderUIDs" ] = format_param_value (folder_uids )
47
59
48
60
if starred :
49
- params . append ( "starred=%s" % starred )
61
+ params [ "starred" ] = starred
50
62
51
63
if limit :
52
- params .append ("limit=%s" % limit )
53
-
54
- list_dashboard_path += "?"
55
- list_dashboard_path += "&" .join (params )
64
+ params ["limit" ] = limit
56
65
57
- return self .client .GET (list_dashboard_path )
66
+ return self .client .GET (list_dashboard_path , params = params )
Original file line number Diff line number Diff line change @@ -39,3 +39,10 @@ def as_bool(value: str) -> bool:
39
39
return _STR_BOOLEAN_MAPPING [value .lower ()]
40
40
except KeyError :
41
41
raise ValueError (f"invalid truth value { value } " )
42
+
43
+
44
+ def format_param_value (maybe_list ):
45
+ if isinstance (maybe_list , list ):
46
+ return "," .join ([str (x ) for x in maybe_list ])
47
+ else :
48
+ return maybe_list
You can’t perform that action at this time.
0 commit comments