[supervisord]
nodaemon=true
logfile=/dev/null
logfile_maxbytes=0
pidfile=/tmp/supervisord.pid

[program:api]
command=python -m api
directory=/app
environment=PROCESS_ROLE="api"
autostart=true
autorestart=unexpected
startsecs=3
stopasgroup=true
killasgroup=true
stopwaitsecs=300
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0

[program:scheduler]
command=python -m supply_infra.scheduler
directory=/app
environment=PROCESS_ROLE="scheduler"
autostart=true
autorestart=unexpected
startsecs=3
stopasgroup=true
killasgroup=true
stopwaitsecs=300
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0

[program:pipeline-worker]
command=python -m supply_infra.pipeline.cli worker
directory=/app
environment=PROCESS_ROLE="worker"
numprocs=%(ENV_PIPELINE_WORKER_PROCESSES)s
process_name=%(program_name)s-%(process_num)02d
autostart=true
autorestart=unexpected
startsecs=3
stopasgroup=true
killasgroup=true
stopwaitsecs=300
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0

[program:pipeline-reconciler]
command=python -m supply_infra.pipeline.cli reconciler
directory=/app
environment=PROCESS_ROLE="reconciler"
autostart=true
autorestart=unexpected
startsecs=3
stopasgroup=true
killasgroup=true
stopwaitsecs=300
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
