remove_password_fields_from_migrated_users.js 937 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. const { db } = require('../app/js/infrastructure/mongojs')
  2. const minimist = require('minimist')
  3. const argv = minimist(process.argv.slice(2))
  4. const commit = argv.commit !== undefined
  5. if (!commit) {
  6. console.log('DOING DRY RUN. TO SAVE CHANGES PASS --commit')
  7. }
  8. function main(callback) {
  9. const query = { 'overleaf.id': { $exists: true } }
  10. db.users.count(query, (err, result) => {
  11. if (err) {
  12. return callback(err)
  13. }
  14. console.log(`>> Count: ${result}`)
  15. if (!commit) {
  16. return callback()
  17. }
  18. db.users.update(query, { $unset: { hashedPassword: 1 } }, (err, result) => {
  19. if (err) {
  20. return callback(err)
  21. }
  22. console.log(`>> Updated users: ${JSON.stringify(result)}`)
  23. return callback()
  24. })
  25. })
  26. }
  27. if (require.main === module) {
  28. main(err => {
  29. if (err) {
  30. console.error(err)
  31. return process.exit(1)
  32. }
  33. console.log('>> done')
  34. process.exit(0)
  35. })
  36. }