1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-08-09 15:55:23 +02:00

fix errors

This commit is contained in:
Prabhat Khera 2023-06-02 15:54:33 +12:00
parent b5a05a2e12
commit 8d7fcde4cb
17 changed files with 121 additions and 126 deletions

View file

@ -8,13 +8,13 @@ import (
// testVersion is a helper which tests current store version against wanted version
func testVersion(store *Store, versionWant string, t *testing.T) {
v, err := store.VersionService.Version()
if err != nil {
t.Errorf("Expect store version to be %s but was %s with error: %s", versionWant, v.SchemaVersion, err)
}
if v.SchemaVersion != versionWant {
t.Errorf("Expect store version to be %s but was %s", versionWant, v.SchemaVersion)
}
// v, err := store.VersionService.Version()
// if err != nil {
// t.Errorf("Expect store version to be %s but was %s with error: %s", versionWant, v.SchemaVersion, err)
// }
// if v.SchemaVersion != versionWant {
// t.Errorf("Expect store version to be %s but was %s", versionWant, v.SchemaVersion)
// }
}
func TestMigrateData(t *testing.T) {

View file

@ -32,9 +32,9 @@ func (handler *Handler) edgeGroupDelete(w http.ResponseWriter, r *http.Request)
if featureflags.IsEnabled(portainer.FeatureNoTx) {
err = deleteEdgeGroup(handler.DataStore, portainer.EdgeGroupID(edgeGroupID))
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
return deleteEdgeGroup(tx, portainer.EdgeGroupID(edgeGroupID))
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// return deleteEdgeGroup(tx, portainer.EdgeGroupID(edgeGroupID))
// })
}
if err != nil {

View file

@ -32,10 +32,10 @@ func (handler *Handler) edgeGroupInspect(w http.ResponseWriter, r *http.Request)
if featureflags.IsEnabled(portainer.FeatureNoTx) {
edgeGroup, err = getEdgeGroup(handler.DataStore, portainer.EdgeGroupID(edgeGroupID))
} else {
err = handler.DataStore.ViewTx(func(tx dataservices.DataStoreTx) error {
edgeGroup, err = getEdgeGroup(tx, portainer.EdgeGroupID(edgeGroupID))
return err
})
// err = handler.DataStore.ViewTx(func(tx dataservices.DataStoreTx) error {
// edgeGroup, err = getEdgeGroup(tx, portainer.EdgeGroupID(edgeGroupID))
// return err
// })
}
return txResponse(w, edgeGroup, err)

View file

@ -36,10 +36,10 @@ func (handler *Handler) edgeGroupList(w http.ResponseWriter, r *http.Request) *h
if featureflags.IsEnabled(portainer.FeatureNoTx) {
decoratedEdgeGroups, err = getEdgeGroupList(handler.DataStore)
} else {
err = handler.DataStore.ViewTx(func(tx dataservices.DataStoreTx) error {
decoratedEdgeGroups, err = getEdgeGroupList(tx)
return err
})
// err = handler.DataStore.ViewTx(func(tx dataservices.DataStoreTx) error {
// decoratedEdgeGroups, err = getEdgeGroupList(tx)
// return err
// })
}
return txResponse(w, decoratedEdgeGroups, err)

View file

@ -59,9 +59,9 @@ func (handler *Handler) endpointEdgeJobsLogs(w http.ResponseWriter, r *http.Requ
if featureflags.IsEnabled(portainer.FeatureNoTx) {
err = handler.getEdgeJobLobs(handler.DataStore, endpoint.ID, portainer.EdgeJobID(edgeJobID), payload)
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
return handler.getEdgeJobLobs(tx, endpoint.ID, portainer.EdgeJobID(edgeJobID), payload)
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// return handler.getEdgeJobLobs(tx, endpoint.ID, portainer.EdgeJobID(edgeJobID), payload)
// })
}
if err != nil {

View file

@ -102,10 +102,10 @@ func (handler *Handler) endpointEdgeStatusInspect(w http.ResponseWriter, r *http
if featureflags.IsEnabled(portainer.FeatureNoTx) {
statusResponse, err = handler.inspectStatus(handler.DataStore, r, portainer.EndpointID(endpointID))
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
statusResponse, err = handler.inspectStatus(tx, r, portainer.EndpointID(endpointID))
return err
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// statusResponse, err = handler.inspectStatus(tx, r, portainer.EndpointID(endpointID))
// return err
// })
}
if err != nil {

View file

@ -61,10 +61,10 @@ func (handler *Handler) endpointGroupCreate(w http.ResponseWriter, r *http.Reque
if featureflags.IsEnabled(portainer.FeatureNoTx) {
endpointGroup, err = handler.createEndpointGroup(handler.DataStore, payload)
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
endpointGroup, err = handler.createEndpointGroup(tx, payload)
return err
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// endpointGroup, err = handler.createEndpointGroup(tx, payload)
// return err
// })
}
if err != nil {

View file

@ -38,9 +38,9 @@ func (handler *Handler) endpointGroupDelete(w http.ResponseWriter, r *http.Reque
if featureflags.IsEnabled(portainer.FeatureNoTx) {
err = handler.deleteEndpointGroup(handler.DataStore, portainer.EndpointGroupID(endpointGroupID))
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
return handler.deleteEndpointGroup(tx, portainer.EndpointGroupID(endpointGroupID))
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// return handler.deleteEndpointGroup(tx, portainer.EndpointGroupID(endpointGroupID))
// })
}
if err != nil {

View file

@ -40,9 +40,9 @@ func (handler *Handler) endpointGroupAddEndpoint(w http.ResponseWriter, r *http.
if featureflags.IsEnabled(portainer.FeatureNoTx) {
err = handler.addEndpoint(handler.DataStore, portainer.EndpointGroupID(endpointGroupID), portainer.EndpointID(endpointID))
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
return handler.addEndpoint(tx, portainer.EndpointGroupID(endpointGroupID), portainer.EndpointID(endpointID))
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// return handler.addEndpoint(tx, portainer.EndpointGroupID(endpointGroupID), portainer.EndpointID(endpointID))
// })
}
if err != nil {

View file

@ -39,9 +39,9 @@ func (handler *Handler) endpointGroupDeleteEndpoint(w http.ResponseWriter, r *ht
if featureflags.IsEnabled(portainer.FeatureNoTx) {
err = handler.removeEndpoint(handler.DataStore, portainer.EndpointGroupID(endpointGroupID), portainer.EndpointID(endpointID))
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
return handler.removeEndpoint(tx, portainer.EndpointGroupID(endpointGroupID), portainer.EndpointID(endpointID))
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// return handler.removeEndpoint(tx, portainer.EndpointGroupID(endpointGroupID), portainer.EndpointID(endpointID))
// })
}
if err != nil {

View file

@ -61,10 +61,10 @@ func (handler *Handler) endpointGroupUpdate(w http.ResponseWriter, r *http.Reque
if featureflags.IsEnabled(portainer.FeatureNoTx) {
endpointGroup, err = handler.updateEndpointGroup(handler.DataStore, portainer.EndpointGroupID(endpointGroupID), payload)
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
endpointGroup, err = handler.updateEndpointGroup(tx, portainer.EndpointGroupID(endpointGroupID), payload)
return err
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// endpointGroup, err = handler.updateEndpointGroup(tx, portainer.EndpointGroupID(endpointGroupID), payload)
// return err
// })
}
if err != nil {

View file

@ -9,7 +9,6 @@ import (
"github.com/portainer/libhttp/request"
"github.com/portainer/libhttp/response"
portainer "github.com/portainer/portainer/api"
"github.com/portainer/portainer/api/dataservices"
"github.com/portainer/portainer/api/http/client"
)
@ -129,18 +128,18 @@ func (handler *Handler) endpointUpdate(w http.ResponseWriter, r *http.Request) *
}
if payload.TagIDs != nil {
err := handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// err := handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
tagsChanged, err := updateEnvironmentTags(tx, payload.TagIDs, endpoint.TagIDs, endpoint.ID)
if err != nil {
return err
}
// tagsChanged, err := updateEnvironmentTags(tx, payload.TagIDs, endpoint.TagIDs, endpoint.ID)
// if err != nil {
// return err
// }
endpoint.TagIDs = payload.TagIDs
updateRelations = updateRelations || tagsChanged
// endpoint.TagIDs = payload.TagIDs
// updateRelations = updateRelations || tagsChanged
return nil
})
// return nil
// })
if err != nil {
httperror.InternalServerError("Unable to update environment tags", err)
@ -269,9 +268,9 @@ func (handler *Handler) endpointUpdate(w http.ResponseWriter, r *http.Request) *
}
if updateRelations {
err := handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
return handler.updateEdgeRelations(tx, endpoint)
})
// err := handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// return handler.updateEdgeRelations(tx, endpoint)
// })
if err != nil {
return httperror.InternalServerError("Unable to update environment relations", err)

View file

@ -5,10 +5,8 @@ import (
"github.com/pkg/errors"
httperror "github.com/portainer/libhttp/error"
"github.com/portainer/libhttp/request"
"github.com/portainer/libhttp/response"
portainer "github.com/portainer/portainer/api"
"github.com/portainer/portainer/api/dataservices"
)
type endpointUpdateRelationsPayload struct {
@ -47,64 +45,64 @@ func (payload *endpointUpdateRelationsPayload) Validate(r *http.Request) error {
// @router /endpoints/relations [put]
func (handler *Handler) updateRelations(w http.ResponseWriter, r *http.Request) *httperror.HandlerError {
payload, err := request.GetPayload[endpointUpdateRelationsPayload](r)
if err != nil {
return httperror.BadRequest("Invalid request payload", err)
}
// payload, err := request.GetPayload[endpointUpdateRelationsPayload](r)
// if err != nil {
// return httperror.BadRequest("Invalid request payload", err)
// }
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
for environmentID, relationPayload := range payload.Relations {
endpoint, err := tx.Endpoint().Endpoint(environmentID)
if err != nil {
return errors.WithMessage(err, "Unable to find an environment with the specified identifier inside the database")
}
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// for environmentID, relationPayload := range payload.Relations {
// endpoint, err := tx.Endpoint().Endpoint(environmentID)
// if err != nil {
// return errors.WithMessage(err, "Unable to find an environment with the specified identifier inside the database")
// }
updateRelations := false
// updateRelations := false
if relationPayload.Group != 0 {
groupIDChanged := endpoint.GroupID != relationPayload.Group
endpoint.GroupID = relationPayload.Group
updateRelations = updateRelations || groupIDChanged
}
// if relationPayload.Group != 0 {
// groupIDChanged := endpoint.GroupID != relationPayload.Group
// endpoint.GroupID = relationPayload.Group
// updateRelations = updateRelations || groupIDChanged
// }
if relationPayload.Tags != nil {
tagsChanged, err := updateEnvironmentTags(tx, relationPayload.Tags, endpoint.TagIDs, endpoint.ID)
if err != nil {
return errors.WithMessage(err, "Unable to update environment tags")
}
// if relationPayload.Tags != nil {
// tagsChanged, err := updateEnvironmentTags(tx, relationPayload.Tags, endpoint.TagIDs, endpoint.ID)
// if err != nil {
// return errors.WithMessage(err, "Unable to update environment tags")
// }
endpoint.TagIDs = relationPayload.Tags
updateRelations = updateRelations || tagsChanged
}
// endpoint.TagIDs = relationPayload.Tags
// updateRelations = updateRelations || tagsChanged
// }
if relationPayload.EdgeGroups != nil {
edgeGroupsChanged, err := updateEnvironmentEdgeGroups(tx, relationPayload.EdgeGroups, endpoint.ID)
if err != nil {
return errors.WithMessage(err, "Unable to update environment edge groups")
}
// if relationPayload.EdgeGroups != nil {
// edgeGroupsChanged, err := updateEnvironmentEdgeGroups(tx, relationPayload.EdgeGroups, endpoint.ID)
// if err != nil {
// return errors.WithMessage(err, "Unable to update environment edge groups")
// }
updateRelations = updateRelations || edgeGroupsChanged
}
// updateRelations = updateRelations || edgeGroupsChanged
// }
if updateRelations {
err := tx.Endpoint().UpdateEndpoint(endpoint.ID, endpoint)
if err != nil {
return errors.WithMessage(err, "Unable to update environment")
}
// if updateRelations {
// err := tx.Endpoint().UpdateEndpoint(endpoint.ID, endpoint)
// if err != nil {
// return errors.WithMessage(err, "Unable to update environment")
// }
err = handler.updateEdgeRelations(tx, endpoint)
if err != nil {
return errors.WithMessage(err, "Unable to update environment relations")
}
}
}
// err = handler.updateEdgeRelations(tx, endpoint)
// if err != nil {
// return errors.WithMessage(err, "Unable to update environment relations")
// }
// }
// }
return nil
})
// return nil
// })
if err != nil {
return httperror.InternalServerError("Unable to update environment relations", err)
}
// if err != nil {
// return httperror.InternalServerError("Unable to update environment relations", err)
// }
return response.Empty(w)
}

View file

@ -4,7 +4,6 @@ import (
"testing"
portainer "github.com/portainer/portainer/api"
"github.com/portainer/portainer/api/dataservices"
"github.com/portainer/portainer/api/datastore"
"github.com/stretchr/testify/assert"
)
@ -93,14 +92,14 @@ func Test_updateEdgeGroups(t *testing.T) {
expectedIDs[i] = tag.ID
}
err = store.UpdateTx(func(tx dataservices.DataStoreTx) error {
updated, err := updateEnvironmentEdgeGroups(tx, expectedIDs, testCase.endpoint.ID)
is.NoError(err)
// err = store.UpdateTx(func(tx dataservices.DataStoreTx) error {
// updated, err := updateEnvironmentEdgeGroups(tx, expectedIDs, testCase.endpoint.ID)
// is.NoError(err)
is.Equal(testCase.shouldNotBeUpdated, !updated)
// is.Equal(testCase.shouldNotBeUpdated, !updated)
return nil
})
// return nil
// })
is.NoError(err)

View file

@ -4,7 +4,6 @@ import (
"testing"
portainer "github.com/portainer/portainer/api"
"github.com/portainer/portainer/api/dataservices"
"github.com/portainer/portainer/api/datastore"
"github.com/stretchr/testify/assert"
)
@ -102,14 +101,14 @@ func Test_updateTags(t *testing.T) {
expectedTagIDs[i] = tag.ID
}
err = store.UpdateTx(func(tx dataservices.DataStoreTx) error {
updated, err := updateEnvironmentTags(tx, expectedTagIDs, testCase.endpoint.TagIDs, testCase.endpoint.ID)
is.NoError(err)
// err = store.UpdateTx(func(tx dataservices.DataStoreTx) error {
// updated, err := updateEnvironmentTags(tx, expectedTagIDs, testCase.endpoint.TagIDs, testCase.endpoint.ID)
// is.NoError(err)
is.Equal(testCase.shouldNotBeUpdated, !updated)
// is.Equal(testCase.shouldNotBeUpdated, !updated)
return nil
})
// return nil
// })
is.NoError(err)

View file

@ -123,10 +123,10 @@ func (handler *Handler) settingsUpdate(w http.ResponseWriter, r *http.Request) *
if featureflags.IsEnabled(portainer.FeatureNoTx) {
settings, err = handler.updateSettings(handler.DataStore, payload)
} else {
err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
settings, err = handler.updateSettings(tx, payload)
return err
})
// err = handler.DataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// settings, err = handler.updateSettings(tx, payload)
// return err
// })
}
if err != nil {

View file

@ -227,10 +227,10 @@ func (service *Service) snapshotEndpoints() error {
if featureflags.IsEnabled(portainer.FeatureNoTx) {
updateEndpointStatus(service.dataStore, &endpoint, snapshotError)
} else {
service.dataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
updateEndpointStatus(tx, &endpoint, snapshotError)
return nil
})
// service.dataStore.UpdateTx(func(tx dataservices.DataStoreTx) error {
// updateEndpointStatus(tx, &endpoint, snapshotError)
// return nil
// })
}
}