overleaf/services/web/migrations/20210407085118_token-expiry-with-ttl-index.mjs
Liangjun Song 9e15c73228 Merge pull request #20732 from overleaf/revert-20731-revert-20480-ls-convert-migration-scripts-to-esm
Revert "Revert "Convert migration scripts to ESM""

GitOrigin-RevId: 0430a3cd02b9d23bf0f4573346351dcf4ee17fa6
2024-10-14 10:58:50 +00:00

42 lines
748 B
JavaScript

import Helpers from './lib/helpers.mjs'
const tags = ['server-ce', 'server-pro', 'saas']
const indexes = {
tokens: [
{
// expire all tokens 90 days after they are created
expireAfterSeconds: 90 * 24 * 60 * 60,
key: {
createdAt: 1,
},
name: 'createdAt_1',
},
],
}
const migrate = async client => {
const { db } = client
await Promise.all(
Object.keys(indexes).map(key =>
Helpers.addIndexesToCollection(db[key], indexes[key])
)
)
}
const rollback = async client => {
const { db } = client
await Promise.all(
Object.keys(indexes).map(key =>
Helpers.dropIndexesFromCollection(db[key], indexes[key])
)
)
}
export default {
tags,
migrate,
rollback,
}