Newer
Older
Felix Sperling
committed
import sys
import json
from grafana_backup.api_checks import main as api_checks
from grafana_backup.dashboardApi import set_user_role
def main(args, settings):
users_file = args.get('<users_filename>', None)
print("got users_file {0}".format(users_file))
(status, json_resp, uid_support, paging_support) = api_checks(settings)
# Do not continue if API is unavailable or token is not valid
if not status == 200:
sys.exit(1)
debug = settings.get('DEBUG')
verify_ssl = settings.get('VERIFY_SSL')
client_cert = settings.get('CLIENT_CERT')
grafana_url = settings.get('GRAFANA_URL')
http_post_headers = settings.get('HTTP_POST_HEADERS')
with open(users_file, 'r') as f:
data = f.read()
users = json.loads(data)
print(users)
for user in users:
if user['role'] == 'Editor':
(status, content) = set_user_role(user['userId'], 'Editor', grafana_url, http_post_headers, verify_ssl, client_cert, debug)
print("changed user {0} to Editor".format(user['login']))
if status != 200:
print("changing role of user {0} failed with {1}".format(user['login'], status))