sso_id_remove_not_migrated.mjs 1012 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. import { waitForDb } from '../app/src/infrastructure/mongodb.js'
  2. import SAMLUserIdMigrationHandler from '../modules/saas-authentication/app/src/SAML/SAMLUserIdMigrationHandler.mjs'
  3. import { ensureMongoTimeout } from './helpers/env_variable_helper.mjs'
  4. ensureMongoTimeout(300000)
  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(
  9. 'Remove SSO linking for users not migrated at institution:',
  10. institutionId
  11. )
  12. async function main() {
  13. const result =
  14. await SAMLUserIdMigrationHandler.promises.removeNotMigrated(institutionId)
  15. if (emitUsers) {
  16. console.log(
  17. `\nRemoved: ${result.success}\nFailed to remove: ${result.failed}`
  18. )
  19. }
  20. console.log(
  21. `\nRemoved: ${result.success.length}\nFailed to remove: ${result.failed.length}`
  22. )
  23. process.exit()
  24. }
  25. try {
  26. await waitForDb()
  27. await main()
  28. } catch (error) {
  29. console.error(error)
  30. process.exit(1)
  31. }