mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Provisioning: fix for cannot save provisioned dashboard (#20218)
Provisioning of dashboards now always overwrite existing ones and does not look at the configuration `allowUiUpdates` anymore
This commit is contained in:
parent
8484b43001
commit
b489c75aaf
@ -1183,7 +1183,7 @@ func (sc *scenarioContext) ToJSON() *simplejson.Json {
|
|||||||
type mockDashboardProvisioningService struct {
|
type mockDashboardProvisioningService struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m mockDashboardProvisioningService) SaveProvisionedDashboard(dto *dashboards.SaveDashboardDTO, provisioning *m.DashboardProvisioning, allowUiUpdates bool) (*m.Dashboard, error) {
|
func (m mockDashboardProvisioningService) SaveProvisionedDashboard(dto *dashboards.SaveDashboardDTO, provisioning *m.DashboardProvisioning) (*m.Dashboard, error) {
|
||||||
panic("implement me")
|
panic("implement me")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ type DashboardService interface {
|
|||||||
|
|
||||||
// DashboardProvisioningService service for operating on provisioned dashboards
|
// DashboardProvisioningService service for operating on provisioned dashboards
|
||||||
type DashboardProvisioningService interface {
|
type DashboardProvisioningService interface {
|
||||||
SaveProvisionedDashboard(dto *SaveDashboardDTO, provisioning *models.DashboardProvisioning, allowUiUpdates bool) (*models.Dashboard, error)
|
SaveProvisionedDashboard(dto *SaveDashboardDTO, provisioning *models.DashboardProvisioning) (*models.Dashboard, error)
|
||||||
SaveFolderForProvisionedDashboards(*SaveDashboardDTO) (*models.Dashboard, error)
|
SaveFolderForProvisionedDashboards(*SaveDashboardDTO) (*models.Dashboard, error)
|
||||||
GetProvisionedDashboardData(name string) ([]*models.DashboardProvisioning, error)
|
GetProvisionedDashboardData(name string) ([]*models.DashboardProvisioning, error)
|
||||||
GetProvisionedDashboardDataByDashboardId(dashboardId int64) (*models.DashboardProvisioning, error)
|
GetProvisionedDashboardDataByDashboardId(dashboardId int64) (*models.DashboardProvisioning, error)
|
||||||
@ -182,14 +182,14 @@ func (dr *dashboardServiceImpl) updateAlerting(cmd *models.SaveDashboardCommand,
|
|||||||
return bus.Dispatch(&alertCmd)
|
return bus.Dispatch(&alertCmd)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (dr *dashboardServiceImpl) SaveProvisionedDashboard(dto *SaveDashboardDTO, provisioning *models.DashboardProvisioning, allowUiUpdates bool) (*models.Dashboard, error) {
|
func (dr *dashboardServiceImpl) SaveProvisionedDashboard(dto *SaveDashboardDTO, provisioning *models.DashboardProvisioning) (*models.Dashboard, error) {
|
||||||
dto.User = &models.SignedInUser{
|
dto.User = &models.SignedInUser{
|
||||||
UserId: 0,
|
UserId: 0,
|
||||||
OrgRole: models.ROLE_ADMIN,
|
OrgRole: models.ROLE_ADMIN,
|
||||||
OrgId: dto.OrgId,
|
OrgId: dto.OrgId,
|
||||||
}
|
}
|
||||||
|
|
||||||
cmd, err := dr.buildSaveDashboardCommand(dto, true, !allowUiUpdates)
|
cmd, err := dr.buildSaveDashboardCommand(dto, true, false)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -180,7 +180,7 @@ func TestDashboardService(t *testing.T) {
|
|||||||
dto.Dashboard = models.NewDashboard("Dash")
|
dto.Dashboard = models.NewDashboard("Dash")
|
||||||
dto.Dashboard.SetId(3)
|
dto.Dashboard.SetId(3)
|
||||||
dto.User = &models.SignedInUser{UserId: 1}
|
dto.User = &models.SignedInUser{UserId: 1}
|
||||||
_, err := service.SaveProvisionedDashboard(dto, nil, true)
|
_, err := service.SaveProvisionedDashboard(dto, nil)
|
||||||
So(err, ShouldBeNil)
|
So(err, ShouldBeNil)
|
||||||
So(provisioningValidated, ShouldBeFalse)
|
So(provisioningValidated, ShouldBeFalse)
|
||||||
})
|
})
|
||||||
|
@ -190,7 +190,7 @@ func (fr *fileReader) saveDashboard(path string, folderId int64, fileInfo os.Fil
|
|||||||
CheckSum: jsonFile.checkSum,
|
CheckSum: jsonFile.checkSum,
|
||||||
}
|
}
|
||||||
|
|
||||||
_, err = fr.dashboardProvisioningService.SaveProvisionedDashboard(dash, dp, fr.Cfg.AllowUiUpdates)
|
_, err = fr.dashboardProvisioningService.SaveProvisionedDashboard(dash, dp)
|
||||||
return provisioningMetadata, err
|
return provisioningMetadata, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -368,7 +368,7 @@ func (s *fakeDashboardProvisioningService) GetProvisionedDashboardData(name stri
|
|||||||
return s.provisioned[name], nil
|
return s.provisioned[name], nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *fakeDashboardProvisioningService) SaveProvisionedDashboard(dto *dashboards.SaveDashboardDTO, provisioning *models.DashboardProvisioning, allowUiUpdates bool) (*models.Dashboard, error) {
|
func (s *fakeDashboardProvisioningService) SaveProvisionedDashboard(dto *dashboards.SaveDashboardDTO, provisioning *models.DashboardProvisioning) (*models.Dashboard, error) {
|
||||||
// Copy the structs as we need to change them but do not want to alter outside world.
|
// Copy the structs as we need to change them but do not want to alter outside world.
|
||||||
var copyProvisioning = &models.DashboardProvisioning{}
|
var copyProvisioning = &models.DashboardProvisioning{}
|
||||||
*copyProvisioning = *provisioning
|
*copyProvisioning = *provisioning
|
||||||
|
Loading…
Reference in New Issue
Block a user