sso_id_remove_not_migrated.js 959 B

12345678910111213141516171819202122232425262728293031323334353637
  1. process.env.MONGO_SOCKET_TIMEOUT = '300000'
  2. const { waitForDb } = require('../app/src/infrastructure/mongodb')
  3. const SAMLUserIdMigrationHandler = require('../modules/overleaf-integration/app/src/SAML/SAMLUserIdMigrationHandler')
  4. const institutionId = parseInt(process.argv[2])
  5. if (isNaN(institutionId)) throw new Error('No institution id')
  6. const emitUsers = process.argv.includes('--emit-users')
  7. console.log(
  8. 'Remove SSO linking for users not migrated at institution:',
  9. institutionId
  10. )
  11. waitForDb()
  12. .then(main)
  13. .catch(error => {
  14. console.error(error)
  15. process.exit(1)
  16. })
  17. async function main() {
  18. const result = await SAMLUserIdMigrationHandler.promises.removeNotMigrated(
  19. institutionId
  20. )
  21. if (emitUsers) {
  22. console.log(
  23. `\nRemoved: ${result.success}\nFailed to remove: ${result.failed}`
  24. )
  25. }
  26. console.log(
  27. `\nRemoved: ${result.success.length}\nFailed to remove: ${result.failed.length}`
  28. )
  29. process.exit()
  30. }