overleaf/services/web/scripts/sso_id_remove_not_migrated.mjs
Jakob Ackermann a7517eefcb Merge pull request #21427 from overleaf/jpa-populate-db-on-import
[web] populate db with collections on import, ahead of waitForDb() call

GitOrigin-RevId: 7eb4cd61c2052187acd9947d7060f54d9822d314
2024-11-01 09:05:15 +00:00

37 lines
927 B
JavaScript

import SAMLUserIdMigrationHandler from '../modules/saas-authentication/app/src/SAML/SAMLUserIdMigrationHandler.mjs'
import { ensureMongoTimeout } from './helpers/env_variable_helper.mjs'
ensureMongoTimeout(300000)
const institutionId = parseInt(process.argv[2])
if (isNaN(institutionId)) throw new Error('No institution id')
const emitUsers = process.argv.includes('--emit-users')
console.log(
'Remove SSO linking for users not migrated at institution:',
institutionId
)
async function main() {
const result =
await SAMLUserIdMigrationHandler.promises.removeNotMigrated(institutionId)
if (emitUsers) {
console.log(
`\nRemoved: ${result.success}\nFailed to remove: ${result.failed}`
)
}
console.log(
`\nRemoved: ${result.success.length}\nFailed to remove: ${result.failed.length}`
)
process.exit()
}
try {
await main()
} catch (error) {
console.error(error)
process.exit(1)
}