LImit bulk operations from server (#2947)

Signed-off-by: Andrey Sobolev <haiodo@gmail.com>
This commit is contained in:
Andrey Sobolev
2023-04-12 00:43:37 +07:00
committed by GitHub
parent 269d585638
commit 751a65f37e
5 changed files with 33 additions and 22 deletions
+11 -4
View File
@@ -206,13 +206,20 @@ export function devTool (
program
.command('upgrade')
.description('upgrade')
.action(async (cmd) => {
.option('-p|--parallel', 'Parallel upgrade', false)
.action(async (cmd: { parallel: boolean }) => {
const { mongodbUri, version, txes, migrateOperations } = prepareTools()
return await withDatabase(mongodbUri, async (db) => {
const workspaces = await listWorkspaces(db, productId)
for (const ws of workspaces) {
console.log('---UPGRADING----', ws.workspace)
await upgradeWorkspace(version, txes, migrateOperations, productId, db, ws.workspace)
if (cmd.parallel) {
await Promise.all(
workspaces.map((ws) => upgradeWorkspace(version, txes, migrateOperations, productId, db, ws.workspace))
)
} else {
for (const ws of workspaces) {
console.log('---UPGRADING----', ws.workspace)
await upgradeWorkspace(version, txes, migrateOperations, productId, db, ws.workspace)
}
}
})
})