forked from TACC/abaco
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathabaco.conf
137 lines (98 loc) · 4.58 KB
/
abaco.conf
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
[general]
TAG: :dev
[logs]
# global configs for all of abaco
level = DEBUG
# configs for specific modules
level.spawner = DEBUG
level.controllers = DEBUG
[store]
# url for the mongo instance
mongo_host: 172.17.0.1
# port for the mongo instance
mongo_port: 27017
# uncomment the next two lines for authenticated mongo
#mongo_user: abaco
#mongo_password: the_mongo_password
[rabbit]
# url and port for the rabbitmq instance
uri: amqp://172.17.0.1:5672
[spawner]
# For scalability, worker containers can run on separate physical hosts. At least one
# spawner and one health check worker should be launched on each worker host, and the
# host_id should be the unique for each worker host.
host_id: 0
# An addressable IP for the spawner's host. This config is not currently used but could
# be at a future date to support a conatiner scheduler like swarm or mesos.
host_ip: 172.17.0.1
# When new workers are spawned, a config file must be mounted for communication with rabbit.
# This path should be an absolute path *on the host* where such a config file exists. By default, spawners
# read this path from an environment variable, abaco_conf_host_path, but if this variable isn't set spawners
# will fall back to using this configuration.
# abaco_conf_host_path: /path/to/abaco.conf
[docker]
# url to use for docker daemon by spawners and workers. Currently only the unix socket is
# supported but other options could be implemented in the future.
dd: unix://var/run/docker.sock
[workers]
# number of worker containers to initially start when an actor is created
init_count: 1
# set whether autoscaling is enabled
autoscaling = false
# max length of time, in seconds, an actor container is allowed to execute before being killed.
# set to -1 for indefinite execution time.
max_run_time: -1
# length of time, in seconds, to keep an idle worker alive. Set to -1 to keep workers
# alive indefinitely.
# Set the ttl to 10 minutes.
worker_ttl: 600
# Set the ttl to 24 hours.
# worker_ttl: 86400
# Whether the workers should have OAuth clients generated for them:
generate_clients: False
# a list of mounts to make for every actor container, separated by comma (,) characters.
# Mounts should be of the form <absolute_host_path>:<absolute_container_path>:<mode>
# where mode is either ro for read-only or rw for read-write.
global_mounts: /data1:/_abaco_data1:ro,/data2:/_abaco_data2:rw
# whether to leave the actor containers or remove them. Should be False in
# staging/production but setting True can be helpful when debugging locally.
leave_containers: False
# whether to run the actor containers as the UID associated with the owner of the actor.
# requires TAS_ROLE_ACCT and TAS_ROLE_PASS passes as environment variables.
# Default value is False in which case the container run as the UID set in the container image.
use_tas_uid: False
# path on the workers host to use for mounting temporary fifo's for processing binary messages.
fifo_host_path_dir: /_abaco_fifos
[web]
# type of access control for the web front end. supports: 'jwt', and 'none'
# access_control: none
access_control: jwt
# the name of the tenant when not using jwt
tenant_name: dev_staging
# public key for the apim instance when deployed behind apim (jwt access control)
apim_public_key: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCUp/oV1vWc8/TkQSiAvTousMzOM4asB2iltr2QKozni5aVFu818MpOLZIr8LMnTzWllJvvaA5RAAdpbECb+48FjbBe0hseUdN5HpwvnH/DW8ZccGvk53I6Orq7hLCv1ZHtuOCokghz/ATrhyPq+QktMfXnRS4HrKGJTzxaCcU7OQIDAQAB
# whether the web apps return a stacktrace or a nice JSON object on an APIException:
# 'true' or 'false'
show_traceback: false
# Amount of time, in seconds, to store log data. Set to -1 to store indefinitely.
# Here we set the to 12 hours.
log_ex: 43200
# Max amount of time that any log can be set.
log_ex_limit: 86400
# Amount of time, in seconds, to which sd2e's logs will be set.
sd2e_log_ex: 10800
# Max amount of time, in seconds, to which sd2e's logs can be set.
sd2e_log_ex_limit: 21600
# Max amount of time, in seconds, to which this DEV's logs can be set.
DEV_log_ex_limit: 30000
# Amount of time, in seconds, to which this DEV's logs will be set.
DEV_log_ex: 15000
# Max length (in bytes) to store an actor execution's log. If a log exceeds this length, the log will be truncated.
# Note: max_log_length must not exceed the maximum document length for the log store.
# here we default it to 1 MB
max_log_length: 1000000
# Either camel or snake: Whether to return responses in camel case or snake. Default is snake.
case: snake
# The maximum content length, in bytes, allowed for raw (binary) data messages.
# Below we set it to 500M:
max_content_length: 500000000