From 7e7127831d02b8104f0abdc00c685d011e5beeb0 Mon Sep 17 00:00:00 2001 From: Chaim Lev-Ari Date: Wed, 24 Feb 2021 23:27:49 +0200 Subject: [PATCH] fix(db): skip resource control migration if stack doesn't exist (#4879) --- api/bolt/migrator/migrate_dbversion26.go | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/api/bolt/migrator/migrate_dbversion26.go b/api/bolt/migrator/migrate_dbversion26.go index f894db435..c073532f2 100644 --- a/api/bolt/migrator/migrate_dbversion26.go +++ b/api/bolt/migrator/migrate_dbversion26.go @@ -1,9 +1,9 @@ package migrator import ( - "fmt" - portainer "github.com/portainer/portainer/api" + "github.com/portainer/portainer/api/bolt/errors" + "github.com/portainer/portainer/api/internal/stackutils" ) func (m *Migrator) updateStackResourceControlToDB27() error { @@ -18,16 +18,17 @@ func (m *Migrator) updateStackResourceControlToDB27() error { } stackName := resource.ResourceID - if err != nil { - return err - } stack, err := m.stackService.StackByName(stackName) if err != nil { + if err == errors.ErrObjectNotFound { + continue + } + return err } - resource.ResourceID = fmt.Sprintf("%d_%s", stack.EndpointID, stack.Name) + resource.ResourceID = stackutils.ResourceControlID(stack.EndpointID, stack.Name) err = m.resourceControlService.UpdateResourceControl(resource.ID, &resource) if err != nil {