backfill_users_sso_attribute.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. const SAMLUserIdAttributeBatchHandler = require('../modules/overleaf-integration/app/src/SAML/SAMLUserIdAttributeBatchHandler')
  2. const COMMIT = process.argv.includes('--commit')
  3. const startInstitutionId = parseInt(process.argv[2])
  4. const endInstitutionId = parseInt(process.argv[3])
  5. process.env.LOG_LEVEL = 'info'
  6. let method = 'check'
  7. if (COMMIT) {
  8. method = 'run'
  9. console.log('Setting attribute for linked users')
  10. } else {
  11. process.env.MONGO_CONNECTION_STRING =
  12. process.env.READ_ONLY_MONGO_CONNECTION_STRING
  13. console.log('Doing a dry run without --commit')
  14. console.log('Checking users at institutions')
  15. }
  16. console.log(
  17. 'Start institution ID:',
  18. startInstitutionId ||
  19. 'none provided, will start at beginning of ordered list.'
  20. )
  21. console.log(
  22. 'End institution ID:',
  23. endInstitutionId || 'none provided, will go to end of ordered list.'
  24. )
  25. SAMLUserIdAttributeBatchHandler[method](startInstitutionId, endInstitutionId)
  26. .then(result => {
  27. console.log(result)
  28. process.exit(0)
  29. })
  30. .catch(error => {
  31. console.error(error)
  32. process.exit(1)
  33. })