Skip to content

Commit

Permalink
Lint fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
Alan Zhang committed Jun 17, 2024
1 parent d6219d0 commit 204076a
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 27 deletions.
17 changes: 7 additions & 10 deletions src/amg/azext_amg/sync.py
Original file line number Diff line number Diff line change
Expand Up @@ -161,25 +161,22 @@ def sync(cmd, source, destination, folders_to_include=None, folders_to_exclude=N

if not dry_run:
logger.info("Syncing library panel: %s", panel_folder_name + "/" + panel_name)
endpoint = f'{destination_endpoint}/api/library-elements/'
payload = {
'uid': content["result"]["uid"],
'folderUid': panel_folder_uid if panel_folder_uid != 'general' else '',
'name': panel_name,
'model': content["result"]["model"],
'kind': content["result"]["kind"],
}
(status, content) = send_grafana_post(f'{destination_endpoint}/api/library-elements/',
json.dumps(payload), http_headers)
(status, content) = send_grafana_post(endpoint, json.dumps(payload), http_headers)
if status >= 400:
if 'name or UID already exists' in content.get('message', ''):
(status, content) = send_grafana_get(f'{destination_endpoint}/api/library-elements/{library_panel_uid}',
http_headers)

payload["version"] = content["result"]["version"] # avoid version mismatch
(status, content) = send_grafana_patch(f'{destination_endpoint}/api/library-elements/{library_panel_uid}',
json.dumps(payload), http_headers)
if status >= 400:
logger.error(json.dumps(content))
endpoint = f'{destination_endpoint}/api/library-elements/{library_panel_uid}'
(status, content) = send_grafana_get(endpoint, http_headers)

payload["version"] = content["result"]["version"] # avoid version mismatch
(status, content) = send_grafana_patch(endpoint, json.dumps(payload), http_headers)
else:
logger.error(json.dumps(content))

Expand Down
36 changes: 19 additions & 17 deletions src/amg/azext_amg/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,23 +39,25 @@ def create_datasource_mapping(source_data_sources, destination_data_sources):


def remap_datasource_uids(dashboard, uid_mapping, data_source_missed):
if isinstance(dashboard, dict):
for key, value in dashboard.items():
if isinstance(value, dict):
if key == "datasource" and isinstance(value, dict) and ("uid" in value):
try:
uuid.UUID(value["uid"]) # validate datasource via uid field
if value["uid"] in uid_mapping:
value["uid"] = uid_mapping[value["uid"]] # sets to destination datasource uid in dashboard
else:
data_source_missed.add(value["uid"])
except:
continue
else:
remap_datasource_uids(value, uid_mapping, data_source_missed)
elif isinstance(value, (list, tuple)):
for v in value:
remap_datasource_uids(v, uid_mapping, data_source_missed)
if not isinstance(dashboard, dict):
return

for key, value in dashboard.items():
if isinstance(value, dict):
if key == "datasource" and isinstance(value, dict) and ("uid" in value):
try:
uuid.UUID(value["uid"]) # validate datasource via uid field
if value["uid"] in uid_mapping:
value["uid"] = uid_mapping[value["uid"]] # sets to destination datasource uid in dashboard
else:
data_source_missed.add(value["uid"])
except ValueError:
pass # ignore invalid uid
else:
remap_datasource_uids(value, uid_mapping, data_source_missed)
elif isinstance(value, (list, tuple)):
for v in value:
remap_datasource_uids(v, uid_mapping, data_source_missed)


def log_response(resp):
Expand Down

0 comments on commit 204076a

Please sign in to comment.