settings.defaults.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. * decaffeinate suggestions:
  3. * DS207: Consider shorter variations of null checks
  4. * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
  5. */
  6. const http = require('http')
  7. http.globalAgent.maxSockets = 300
  8. const Settings = {
  9. internal: {
  10. docstore: {
  11. port: 3016,
  12. host: process.env.LISTEN_ADDRESS || 'localhost'
  13. }
  14. },
  15. mongo: {},
  16. docstore: {
  17. healthCheck: {
  18. project_id: process.env.HEALTH_CHECK_PROJECT_ID
  19. }
  20. },
  21. max_doc_length: parseInt(process.env.MAX_DOC_LENGTH) || 2 * 1024 * 1024 // 2mb
  22. }
  23. if (process.env.MONGO_CONNECTION_STRING != null) {
  24. Settings.mongo.url = process.env.MONGO_CONNECTION_STRING
  25. } else if (process.env.MONGO_HOST != null) {
  26. Settings.mongo.url = `mongodb://${process.env.MONGO_HOST}/sharelatex`
  27. } else {
  28. Settings.mongo.url = 'mongodb://127.0.0.1/sharelatex'
  29. }
  30. if (
  31. process.env.AWS_ACCESS_KEY_ID != null &&
  32. process.env.AWS_SECRET_ACCESS_KEY != null &&
  33. process.env.AWS_BUCKET != null
  34. ) {
  35. Settings.docstore.s3 = {
  36. key: process.env.AWS_ACCESS_KEY_ID,
  37. secret: process.env.AWS_SECRET_ACCESS_KEY,
  38. bucket: process.env.AWS_BUCKET
  39. }
  40. }
  41. module.exports = Settings