overleaf/services/filestore/config/settings.defaults.coffee

75 lines
2.6 KiB
CoffeeScript
Raw Normal View History

2014-04-02 16:45:41 +00:00
Path = require "path"
# environment variables renamed for consistency
# use AWS_ACCESS_KEY_ID-style going forward
if process.env['AWS_KEY'] && !process.env['AWS_ACCESS_KEY_ID']
process.env['AWS_ACCESS_KEY_ID'] = process.env['AWS_KEY']
if process.env['AWS_SECRET'] && !process.env['AWS_SECRET_ACCESS_KEY']
process.env['AWS_SECRET_ACCESS_KEY'] = process.env['AWS_SECRET']
2018-03-23 15:26:38 +00:00
settings =
2014-02-14 16:39:05 +00:00
internal:
filestore:
port: 3009
2018-03-23 16:14:30 +00:00
host: process.env['LISTEN_ADDRESS'] or "localhost"
filestore:
2014-04-02 16:45:41 +00:00
# Which backend persistor to use.
# Choices are
# s3 - Amazon S3
# fs - local filesystem
2019-12-16 17:09:38 +00:00
if process.env['AWS_ACCESS_KEY_ID']? or process.env['S3_BUCKET_CREDENTIALS']?
2018-03-23 15:26:38 +00:00
backend: "s3"
s3:
2019-12-16 17:09:38 +00:00
key: process.env['AWS_ACCESS_KEY_ID']
secret: process.env['AWS_SECRET_ACCESS_KEY']
2019-12-05 13:55:08 +00:00
endpoint: process.env['AWS_S3_ENDPOINT']
2018-03-23 15:26:38 +00:00
stores:
user_files: process.env['AWS_S3_USER_FILES_BUCKET_NAME']
template_files: process.env['AWS_S3_TEMPLATE_FILES_BUCKET_NAME']
public_files: process.env['AWS_S3_PUBLIC_FILES_BUCKET_NAME']
2018-09-14 15:49:12 +00:00
# if you are using S3, then fill in your S3 details below,
# or use env var with the same structure.
# s3:
# key: "" # default
# secret: "" # default
#
2018-09-14 15:49:12 +00:00
# s3BucketCreds:
# bucketname1: # secrets for bucketname1
# auth_key: ""
# auth_secret: ""
# bucketname2: # secrets for bucketname2...
s3BucketCreds: JSON.parse process.env['S3_BUCKET_CREDENTIALS'] if process.env['S3_BUCKET_CREDENTIALS']?
2018-03-23 15:26:38 +00:00
else
backend: "fs"
stores:
#
# For local filesystem this is the directory to store the files in.
# Must contain full path, e.g. "/var/lib/sharelatex/data".
# This path must exist, not be tmpfs and be writable to by the user sharelatex is run as.
user_files: Path.resolve(__dirname + "/../user_files")
public_files: Path.resolve(__dirname + "/../public_files")
template_files: Path.resolve(__dirname + "/../template_files")
2014-05-17 20:01:48 +00:00
path:
uploadFolder: Path.resolve(__dirname + "/../uploads")
commands:
# Any commands to wrap the convert utility in, for example ["nice"], or ["firejail", "--profile=/etc/firejail/convert.profile"]
convertCommandPrefix: []
2014-05-17 20:01:48 +00:00
enableConversions: if process.env['ENABLE_CONVERSIONS'] == 'true' then true else false
2018-03-23 15:26:38 +00:00
2019-03-05 17:20:16 +00:00
sentry:
dsn: process.env.SENTRY_DSN
2018-03-23 15:26:38 +00:00
# Filestore health check
# ----------------------
# Project and file details to check in persistor when calling /health_check
if process.env['HEALTH_CHECK_PROJECT_ID']? and process.env['HEALTH_CHECK_FILE_ID']?
settings.health_check =
project_id: process.env['HEALTH_CHECK_PROJECT_ID']
file_id: process.env['HEALTH_CHECK_FILE_ID']
module.exports = settings