change-compile-timeout.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. const minimist = require('minimist')
  2. const {
  3. db,
  4. ObjectId,
  5. waitForDb,
  6. } = require('../../../app/src/infrastructure/mongodb')
  7. async function main() {
  8. await waitForDb()
  9. const argv = minimist(process.argv.slice(2), {
  10. string: ['user-id', 'compile-timeout'],
  11. })
  12. const { 'user-id': userId, 'compile-timeout': rawCompileTimeout } = argv
  13. const compileTimeout = parseInt(rawCompileTimeout, 10)
  14. if (
  15. !userId ||
  16. !ObjectId.isValid(userId) ||
  17. !rawCompileTimeout ||
  18. Number.isNaN(compileTimeout)
  19. ) {
  20. console.error(
  21. `Usage: node ${__filename} --user-id=5a9414f259776c7900b300e6 --timeout=90`
  22. )
  23. process.exit(101)
  24. }
  25. if (compileTimeout < 1 || compileTimeout > 600) {
  26. console.error(
  27. `The compile timeout must be positive number of seconds, below 10 minutes (600).`
  28. )
  29. process.exit(101)
  30. }
  31. await db.users.updateOne(
  32. { _id: new ObjectId(userId) },
  33. { $set: { 'features.compileTimeout': compileTimeout } }
  34. )
  35. }
  36. main()
  37. .then(() => {
  38. console.error('Done.')
  39. process.exit(0)
  40. })
  41. .catch(err => {
  42. console.error(err)
  43. process.exit(1)
  44. })