compiler.config module

Configuration for the compiler service.

compiler.config.APPLICATION_ROOT = '/'

If the application does not occupy a whole domain or subdomain this can be set to the path where the application is configured to live. This is for session cookie as path value.

compiler.config.AWS_ACCESS_KEY_ID = None

Access key ID for AWS, authorized for S3 access.

compiler.config.AWS_REGION = 'us-east-1'

AWS region. Defaults to us-east-1.

compiler.config.AWS_SECRET_ACCESS_KEY = None

Secret key for AWS, authorized for S3 access.

compiler.config.CONTAINER_SOURCE_ROOT = '/tmp'

Temporary directories containing source packages go in here.

compiler.config.CONVERTER_DOCKER_IMAGE = None

Image name (including tag) for the TeX converter.

compiler.config.DEBUG = False

enable/disable debug mode

compiler.config.FILEMANAGER_CONTENT_PATH = '/{source_id}/content'

Sub-path template for retrieving source packages from the filemanager service.

Should use the curly-brace format syntax. Currently supports the source_id key.

compiler.config.FILEMANAGER_ENDPOINT = 'https://arxiv.org:443/filemanager/api'

Full URI for the base filemanager service API endpoint.

compiler.config.FILEMANAGER_HOST = 'arxiv.org'

Hostname of the filemanager service.

compiler.config.FILEMANAGER_PATH = 'filemanager/api'

Path to the base filemanager service API endpoint.

compiler.config.FILEMANAGER_PORT = '443'

Filemanager service HTTP(S) port.

compiler.config.FILEMANAGER_PROTO = 'https'

Protocol for calling the filemanager service. Default is https.

compiler.config.FILEMANAGER_VERIFY = True

Enable/disable TLS certificate verification for the filemanager service.

compiler.config.HOST_SOURCE_ROOT = '/var/folders/l7/5ygyvtbs29340t2s2nsq4lh00000gp/T/tmpd4gn78t0'

Temporary directories containing source packages go in here.

compiler.config.JWT_SECRET = 'foosecret'

Secret key for auth tokens.

compiler.config.KUBE_TOKEN = 'fookubetoken'

Service account token for authenticating with Vault. May be a file path.

compiler.config.NAMESPACE = None

Namespace in which this service is deployed; to quality keys for secrets.

compiler.config.REDIS_ENDPOINT = None

Hostname of the Redis cluster endpoint.

compiler.config.S3_BUCKETS = [('submission', 'arxiv-compiler-submission')]

Buckets for storing compilation products and logs.

This is a list of 2-tuples, containing a name for the bucket within the compiler service and the name of the bucket on S3.

compiler.config.S3_ENDPOINT = None

AWS S3 endpoint. Default is None (use the “real” S3 service).

compiler.config.S3_VERIFY = True

Enable/disable TLS certificate verification for S3.

compiler.config.SERVER_NAME = None

The name and port number of the server. Required for subdomain support (e.g.: ‘myapp.dev:5000’) Note that localhost does not support subdomains so setting this to ‘localhost’ does not help. Setting a SERVER_NAME also by default enables URL generation without a request context but with an application context.

compiler.config.VAULT_CERT = None

Path to CA certificate for TLS verification when talking to Vault.

compiler.config.VAULT_ENABLED = False

Enable/disable secret retrieval from Vault.

compiler.config.VAULT_HOST = 'foovaulthost'

Vault hostname/address.

compiler.config.VAULT_PORT = '1234'

Vault API port.

compiler.config.VAULT_REQUESTS = [{'type': 'generic', 'name': 'JWT_SECRET', 'mount_point': 'secret-None/', 'path': 'jwt', 'key': 'jwt-secret', 'minimum_ttl': 3600}, {'type': 'aws', 'name': 'AWS_S3_CREDENTIAL', 'mount_point': 'aws-None/', 'role': None}]

Requests for Vault secrets.

compiler.config.VAULT_ROLE = 'compiler'

Vault role linked to this application’s service account.

compiler.config.VAULT_SCHEME = 'https'

Default is https.

compiler.config.VERBOSE_COMPILE = False

If 1 (True), converter image is run in verbose mode.