dashboards: save provisioning meta data

This commit is contained in:
bergquist
2018-01-23 21:54:30 +01:00
parent 67a9e6a71d
commit 77a4ccb822
4 changed files with 27 additions and 24 deletions
@@ -28,25 +28,25 @@ func SaveProvisionedDashboard(cmd *models.SaveProvisionedDashboardCommand) error
}
cmd.Result = cmd.DashboardCmd.Result
return saveProvionedData(sess, cmd.DashboardProvisioning)
return saveProvionedData(sess, cmd.DashboardProvisioning, cmd.Result)
})
}
func saveProvionedData(sess *DBSession, cmd *models.DashboardProvisioning) error {
results := &models.DashboardProvisioning{}
func saveProvionedData(sess *DBSession, cmd *models.DashboardProvisioning, dashboard *models.Dashboard) error {
result := &models.DashboardProvisioning{}
exist, err := sess.Where("dashboard_id=?", cmd.DashboardId).Get(results)
exist, err := sess.Where("dashboard_id=?", dashboard.Id).Get(result)
if err != nil {
return err
}
cmd.Id = results.Id
cmd.Id = result.Id
cmd.Updated = time.Now()
cmd.DashboardId = dashboard.Id
println("exists", exist)
if exist {
_, err = sess.ID(results.Id).Update(cmd)
_, err = sess.ID(result.Id).Update(cmd)
} else {
_, err = sess.Insert(cmd)
}
@@ -35,6 +35,7 @@ func TestDashboardProvisioningTest(t *testing.T) {
So(err, ShouldBeNil)
So(cmd.Result, ShouldNotBeNil)
So(cmd.Result.Id, ShouldNotEqual, 0)
dashId := cmd.Result.Id
Convey("Can query for provisioned dashboards", func() {
query := &models.GetProvisionedDashboardDataQuery{Name: "default"}
@@ -42,6 +43,7 @@ func TestDashboardProvisioningTest(t *testing.T) {
So(err, ShouldBeNil)
So(len(query.Result), ShouldEqual, 1)
So(query.Result[0].DashboardId, ShouldEqual, dashId)
})
})
})