diff --git a/src/Model/Migration/Definitions.hs b/src/Model/Migration/Definitions.hs index 8a8515098..a3fe8cda7 100644 --- a/src/Model/Migration/Definitions.hs +++ b/src/Model/Migration/Definitions.hs @@ -1069,10 +1069,9 @@ customMigrations = mapF $ \case Migration20220519WorkflowArchivation -> do now <- liftIO getCurrentTime - mArchiveAfter <- lift $ view _appWorkflowWorkflowArchiveAfter - - whenM (and2M (return $ is _Just mArchiveAfter) (not <$> columnExists "workflow_workflow" "archived")) $ do + whenM (and2M (tableExists "workflow_workflow") $ not <$> columnExists "workflow_workflow" "archived") $ do [executeQQ| ALTER TABLE "workflow_workflow" ADD "archived" timestamp with time zone; |] + mArchiveAfter <- lift $ view _appWorkflowWorkflowArchiveAfter let getWorkflows = [queryQQ| SELECT "workflow_workflow"."id", "workflow_workflow".("state"->>-1)::json->'time', "workflow_workflow".("state"->>-1)::json->'to', "shared_workflow_graph"."graph"->'nodes' FROM "workflow_workflow" INNER JOIN "shared_workflow_graph" ON "workflow_workflow"."graph" = "shared_workflow_graph"."hash"; |] migrateArchived [ fromPersistValue -> Right (wwId :: WorkflowWorkflowId), fromPersistValue -> Right (wpTime :: UTCTime), fromPersistValue -> Right (wpTo :: WorkflowGraphNodeLabel), fromPersistValue -> Right (wGraph :: DBWorkflowGraph) ] = maybeT (return ()) $ do archiveAfter <- hoistMaybe mArchiveAfter