| 1234567891011121314151617181920212223242526272829303132333435363738 |
- import Helpers from './lib/helpers.mjs'
- const tags = ['saas']
- const indexes = [
- {
- key: { 'overleaf.userId': 1, 'dropbox.id': 1 },
- name: 'overleaf.userId_1_dropbox.id_1',
- unique: true,
- partialFilterExpression: { 'dropbox.id': { $exists: true } },
- },
- {
- key: { 'overleaf.userId': 1, 'overleaf.id': 1 },
- name: 'overleaf.userId_1_overleaf.id_1',
- unique: true,
- partialFilterExpression: { 'overleaf.id': { $exists: true } },
- },
- { key: { 'overleaf.userId': 1, 'dropbox.pathLower': 'hashed' } },
- ]
- const migrate = async client => {
- const { db } = client
- // Forcibly drop the dropboxEntities collection. The new structure is
- // different and we don't want to keep the data with the old structure around.
- await db.dropboxEntities.drop()
- await Helpers.addIndexesToCollection(db.dropboxEntities, indexes)
- }
- const rollback = async client => {
- const { db } = client
- await Helpers.dropIndexesFromCollection(db.dropboxEntities, indexes)
- }
- export default {
- tags,
- migrate,
- rollback,
- }
|