@@ -41,31 +41,46 @@ def _create_user(cluster_id, grafana_url,grafana_secret,user_secret,update_secre
41
41
}
42
42
43
43
if update_secret :
44
- oldsecret = get_secret (cluster_id )
44
+ url = f"{ grafana_url } /api/users/lookup?loginOrEmail={ cluster_id } "
45
+ response = session .request ("GET" , url , headers = headers )
46
+ userid = response .json ().get ("id" )
47
+
45
48
payload = json .dumps ({
46
- "old_password" : oldsecret ,
47
- "new_password" : user_secret
49
+ "password" : user_secret
48
50
})
49
- url = f"{ grafana_url } /api/user/password"
51
+
52
+ url = f"{ grafana_url } /api/admin/users/{ userid } /password"
53
+
54
+ while True :
55
+ response = session .request ("PUT" , url , headers = headers , data = payload )
56
+ if response .status_code == 200 :
57
+ logger .debug (f"user create/update { cluster_id } succeeded" )
58
+ break
59
+ logger .debug (response .status_code )
60
+ logger .debug ("waiting for grafana api to come up" )
61
+ time .sleep (5 )
62
+
63
+ return response .status_code == 200
50
64
else :
51
65
payload = json .dumps ({
52
66
"name" : cluster_id ,
53
67
"login" : cluster_id ,
54
68
"password" : user_secret
55
69
})
56
70
url = f"{ grafana_url } /api/admin/users"
71
+ while True :
72
+ response = session .request ("POST" , url , headers = headers , data = payload )
73
+ if response .status_code == 200 :
74
+ logger .debug (f"user create/update { cluster_id } succeeded" )
75
+ break
76
+ logger .debug (response .status_code )
77
+ logger .debug ("waiting for grafana api to come up" )
78
+ time .sleep (5 )
79
+
80
+ return response .status_code == 200
57
81
58
82
59
- while True :
60
- response = session .request ("POST" , url , headers = headers , data = payload )
61
- if response .status_code == 200 :
62
- logger .debug (f"user create/update { cluster_id } succeeded" )
63
- break
64
- logger .debug (response .status_code )
65
- logger .debug ("waiting for grafana api to come up" )
66
- time .sleep (5 )
67
-
68
- return response .status_code == 200
83
+
69
84
70
85
71
86
0 commit comments