A declarative host provisioning system.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
1.2 KiB

set -ex
# Number of uWSGI workers to handle API requests
# Threads per worker
# HTTP timeout
if [ "$1" = 'server' ]; then
# Run Drydock under uWSGI
# --http - Port to listen for requests on
# --paste - Use DeployPaste for handling requests and use the specified config INI file
# --enable-threads - Enable the Python GIL so that service can be multithreaded
# -L - Turn off uWSGI request logging, rely totally on logging within the application
# --pyargs - Provide some command line arguments to the Python executable
# --threads - Number of threads each uWSGI worker should use for handling requests
# --workers - Number of uWSGI workers/processes for handling requests
# --http-timeout - How long uWSGI will proxy the python code processing before disconnecting a client
exec uwsgi --http :${PORT} --paste config:/etc/drydock/api-paste.ini --enable-threads -L --pyargv "--config-file /etc/drydock/drydock.conf" --threads $DRYDOCK_API_THREADS --workers $DRYDOCK_API_WORKERS --http-timeout $HTTP_TIMEOUT
exec ${CMD} $@