Просмотр исходного кода

Merge pull request #8735 from overleaf/msm-unset-allow-downgrade

[web] script to unset `history.allowDowngrade` in projects

GitOrigin-RevId: c30dfa64bfdd492d659cce308628f9e118449d5c
Miguel Serrano 4 лет назад
Родитель
Сommit
88575dc58e
1 измененных файлов с 46 добавлено и 0 удалено
  1. 46 0
      services/web/scripts/history/unset_allow_downgrade.js

+ 46 - 0
services/web/scripts/history/unset_allow_downgrade.js

@@ -0,0 +1,46 @@
+const BATCH_SIZE = parseInt(process.env.BATCH_SIZE, 10) || 100
+// persist fallback in order to keep batchedUpdate in-sync
+process.env.BATCH_SIZE = BATCH_SIZE
+
+const PROJECT_ID = process.env.PROJECT_ID
+
+const {
+  db,
+  waitForDb,
+  ObjectId,
+} = require('../../app/src/infrastructure/mongodb')
+const { batchedUpdate } = require('../helpers/batchedUpdate')
+
+console.log({
+  PROJECT_ID,
+  BATCH_SIZE,
+  VERBOSE_LOGGING: process.env.VERBOSE_LOGGING, // for batchedUpdate() logging
+})
+
+async function main() {
+  if (PROJECT_ID) {
+    await waitForDb()
+    const { modifiedCount } = await db.projects.updateOne(
+      { _id: ObjectId(PROJECT_ID), 'overleaf.history.allowDowngrade': true },
+      { $unset: { 'overleaf.history.allowDowngrade': 1 } }
+    )
+    console.log(`modifiedCount: ${modifiedCount}`)
+  } else {
+    await batchedUpdate(
+      'projects',
+      { 'overleaf.history.allowDowngrade': true },
+      { $unset: { 'overleaf.history.allowDowngrade': 1 } }
+    )
+  }
+  console.log('Final')
+}
+
+main()
+  .then(() => {
+    console.error('Done.')
+    process.exit(0)
+  })
+  .catch(error => {
+    console.error({ error })
+    process.exit(1)
+  })