overleaf-cep/services/web/scripts/sso_id_migration_check.mjs
Liangjun Song 4d0f14898d Merge pull request #27518 from overleaf/tm-revert-scriptrunner-ensured-secondary
Remove ScriptRunner usage in institution user checks and SSO ID migration scripts

GitOrigin-RevId: 69bf575f879516e8daeb068f6911856c9d6f226c
2025-07-31 08:05:37 +00:00

35 lines
1.1 KiB
JavaScript

import SAMLUserIdMigrationHandler from '../modules/saas-authentication/app/src/SAML/SAMLUserIdMigrationHandler.mjs'
import { ensureRunningOnMongoSecondaryWithTimeout } from './helpers/env_variable_helper.mjs'
// ScriptRunner can not be used when using this assertion
ensureRunningOnMongoSecondaryWithTimeout(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('Checking SSO user ID migration for institution:', institutionId)
try {
await main()
} catch (error) {
console.error(error)
process.exit(1)
}
async function main() {
const result =
await SAMLUserIdMigrationHandler.promises.checkMigration(institutionId)
if (emitUsers) {
console.log(
`\nMigrated: ${result.migrated}\nNot migrated: ${result.notMigrated}\nMultiple Identifiers: ${result.multipleIdentifiers}`
)
}
console.log(
`\nMigrated: ${result.migrated.length}\nNot migrated: ${result.notMigrated.length}\nMultiple Identifiers: ${result.multipleIdentifiers.length}`
)
process.exit()
}