-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathexample.env
More file actions
85 lines (69 loc) · 3.42 KB
/
example.env
File metadata and controls
85 lines (69 loc) · 3.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# ==============================================
# API Settings
# ==============================================
# --- Core
REPO_URL='https://github.com/Dewberry/sepex'# Repository URL for links and context.
API_NAME='sepex' # The API will launch all jobs on cloud with this name prefix.
API_PORT='5050' # Default port for the API (Optional).
# --- File & Logging
LOG_LEVEL='INFO' # Log verbosity level (Optional).
LOG_FILE='/.data/logs/api.jsonl' # Location for the main API logs (Optional).
TMP_JOB_LOGS_DIR='/.data/tmp/job_logs' # Directory for temporary job logs.
# --- Database
DB_SERVICE='sqlite' # Options: ['sqlite', 'postgres']
# Policies
EXPIRY_DAYS='7' # Duration after which certain data might expire.
# --- Storage
STORAGE_SERVICE='minio' # Options: ['minio', 'aws-s3']
STORAGE_BUCKET='sepex-storage'
STORAGE_METADATA_PREFIX='metadata'
STORAGE_RESULTS_PREFIX='results'
STORAGE_LOGS_PREFIX='logs'
# --- Auth
AUTH_SERVICE='' # Options: ['', 'keycloak'] (Optional).
AUTH_LEVEL='0' # Options: [0, 1, 2] corresponds to [no auth, some routes protected, all routes protected] (Optional).
AUTH_ADMIN_ROLE='admin'
AUTH_SERVICE_ROLE='service_account'
# --- Plugins
PLUGINS_LOAD_DIR='' # Load plugins from this directory at startup (Optional).
PLUGINS_DIR='/.data/plugins'
# --- Queue Resource Limits
MAX_LOCAL_CPUS='' # Max CPUs for local job queue (default: 80% of system CPUs).
MAX_LOCAL_MEMORY_MB='' # Max memory in MB for local job queue (default: 8192).
# ==============================================
# Providers Settings
# ==============================================
# --- SQLITE
SQLITE_DB_PATH='/.data/db.sqlite' # Path to the database file for sqlite or Connection string for postgres.
# --- PostgreSQL
POSTGRES_CONN_STRING='postgres://user:password@postgres:5432/db?sslmode=disable'
POSTGRES_PASSWORD=password
POSTGRES_USER=user
POSTGRES_DB=db
PG_LOG_CHECKPOINTS='off'
# --- AWS (Used for both S3 and Batch)
AWS_ACCESS_KEY_ID=user
AWS_SECRET_ACCESS_KEY=password
AWS_REGION=us-east-1
BATCH_LOG_STREAM_GROUP='/aws/batch/job' # Log group for AWS Batch.
# --- MinIO (Option for storage and development use)
MINIO_ACCESS_KEY_ID=user
MINIO_SECRET_ACCESS_KEY=password
MINIO_S3_ENDPOINT=http://minio:9000
MINIO_S3_REGION=us-east-1
MINIO_ROOT_USER=user
MINIO_ROOT_PASSWORD=password
# --- Keycloak
KEYOACLK_PUBLIC_KEYS_URL='https://mydomain.com/auth/realms/realm-name/protocol/openid-connect/certs'
# ==============================================
# Process Specific Settings
# ==============================================
# (Add settings specific to local (docker & subprocess) processes here. For example env variables need to be passed to processes.)
# Each container process specific env variable must start with capitalized name of process and _ for example for process `pywrite`
# the env variable should be `PYWRITE_MINIO_AWS_ACCESS_KEY`, this is case sensitive.
# they would be passed to the container with prefix PYWRITE_ removed
PYWRITE_MINIO_ACCESS_KEY_ID=user
PYWRITE_MINIO_SECRET_ACCESS_KEY=password
PYWRITE_MINIO_S3_ENDPOINT=http://minio:9000
PYWRITE_MINIO_S3_REGION=us-east-1
PYWRITE_MINIO_S3_BUCKET=data