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

Merge pull request #9291 from overleaf/jpa-dropbox-project-id

[third-party-datastore] tracking of dropboxId for project folder

GitOrigin-RevId: fd47441c81ba1a845dac6d34557ceed2dcbdd7fe
Jakob Ackermann 4 лет назад
Родитель
Сommit
7225f3ea75

+ 1 - 0
services/web/app/src/infrastructure/mongodb.js

@@ -39,6 +39,7 @@ async function setupDb() {
   db.deletedSubscriptions = internalDb.collection('deletedSubscriptions')
   db.deletedUsers = internalDb.collection('deletedUsers')
   db.dropboxEntities = internalDb.collection('dropboxEntities')
+  db.dropboxProjects = internalDb.collection('dropboxProjects')
   db.docHistory = internalDb.collection('docHistory')
   db.docHistoryIndex = internalDb.collection('docHistoryIndex')
   db.docOps = internalDb.collection('docOps')

+ 24 - 0
services/web/migrations/20220815105500_create_dropboxProjects_index.js

@@ -0,0 +1,24 @@
+const Helpers = require('./lib/helpers')
+
+exports.tags = ['saas']
+
+const indexes = [
+  {
+    key: {
+      userId: 1,
+      projectId: 1,
+    },
+    unique: true,
+    name: 'projectId_userId_1',
+  },
+]
+
+exports.migrate = async client => {
+  const { db } = client
+  await Helpers.addIndexesToCollection(db.dropboxProjects, indexes)
+}
+
+exports.rollback = async client => {
+  const { db } = client
+  await Helpers.dropIndexesFromCollection(db.dropboxProjects, indexes)
+}