Fix consistency issue in grafana_dashboard module. (#47459)
* Move check for 'dashboard' key to before the create/update if statement.
* Add changelog fragment for PR #47459
(cherry picked from commit 880762e07e
)
This commit is contained in:
parent
1abd90e3e6
commit
483226cdce
2 changed files with 6 additions and 2 deletions
|
@ -0,0 +1,2 @@
|
|||
bugfixes:
|
||||
- Fix consistency issue in grafana_dashboard module where the module would detect absence of 'dashboard' key on dashboard create but not dashboard update.
|
|
@ -226,6 +226,10 @@ def grafana_create_dashboard(module, data):
|
|||
except Exception as e:
|
||||
raise GrafanaAPIException("Can't load json file %s" % to_native(e))
|
||||
|
||||
# Check that the dashboard JSON is nested under the 'dashboard' key
|
||||
if 'dashboard' not in payload:
|
||||
payload = {'dashboard': payload}
|
||||
|
||||
# define http header
|
||||
headers = grafana_headers(module, data)
|
||||
|
||||
|
@ -278,8 +282,6 @@ def grafana_create_dashboard(module, data):
|
|||
raise GrafanaAPIException('Unable to update the dashboard %s : %s' % (uid, body['message']))
|
||||
else:
|
||||
# create
|
||||
if 'dashboard' not in payload:
|
||||
payload = {'dashboard': payload}
|
||||
r, info = fetch_url(module, '%s/api/dashboards/db' % data['grafana_url'], data=json.dumps(payload), headers=headers, method='POST')
|
||||
if info['status'] == 200:
|
||||
result['msg'] = "Dashboard %s created" % uid
|
||||
|
|
Loading…
Reference in a new issue