sso_id_migration_check.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. process.env.MONGO_CONNECTION_STRING =
  2. process.env.READ_ONLY_MONGO_CONNECTION_STRING
  3. const { waitForDb } = require('../app/src/infrastructure/mongodb')
  4. const SAMLUserIdMigrationHandler = require('../modules/overleaf-integration/app/src/SAML/SAMLUserIdMigrationHandler')
  5. const institutionId = parseInt(process.argv[2])
  6. if (isNaN(institutionId)) throw new Error('No institution id')
  7. const emitUsers = process.argv.includes('--emit-users')
  8. console.log('Checking SSO user ID migration for institution:', institutionId)
  9. waitForDb()
  10. .then(main)
  11. .catch(error => {
  12. console.error(error)
  13. process.exit(1)
  14. })
  15. async function main() {
  16. const result = await SAMLUserIdMigrationHandler.promises.checkMigration(
  17. institutionId
  18. )
  19. if (emitUsers) {
  20. console.log(
  21. `\nMigrated: ${result.migrated}\nNot migrated: ${result.notMigrated}\nMultiple Identifers: ${result.multipleIdentifiers}`
  22. )
  23. }
  24. console.log(
  25. `\nMigrated: ${result.migrated.length}\nNot migrated: ${result.notMigrated.length}\nMultiple Identifers: ${result.multipleIdentifiers.length}`
  26. )
  27. process.exit()
  28. }