mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-13 08:42:21 -05:00
Change how the bash script is started.
By adding `exec` to the entrypoint bash script for the application, we can trap an EXIT from the script and execute our custom `on_exit` method with checks if the application process is busy before terminating, waiting up to 10 seconds. We don't need to trap `TERM` so that's been removed again. Written by: @servingupaces @tlwr
This commit is contained in:
@@ -2,55 +2,55 @@
|
|||||||
case $NOTIFY_APP_NAME in
|
case $NOTIFY_APP_NAME in
|
||||||
api)
|
api)
|
||||||
unset GUNICORN_CMD_ARGS
|
unset GUNICORN_CMD_ARGS
|
||||||
scripts/run_app_paas.sh gunicorn -c /home/vcap/app/gunicorn_config.py application
|
exec scripts/run_app_paas.sh gunicorn -c /home/vcap/app/gunicorn_config.py application
|
||||||
;;
|
;;
|
||||||
delivery-worker-retry-tasks)
|
delivery-worker-retry-tasks)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
||||||
-Q retry-tasks 2> /dev/null
|
-Q retry-tasks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-worker-letters)
|
delivery-worker-letters)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
||||||
-Q create-letters-pdf-tasks,letter-tasks 2> /dev/null
|
-Q create-letters-pdf-tasks,letter-tasks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-worker-jobs)
|
delivery-worker-jobs)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
||||||
-Q database-tasks,job-tasks 2> /dev/null
|
-Q database-tasks,job-tasks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-worker-research)
|
delivery-worker-research)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=5 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=5 \
|
||||||
-Q research-mode-tasks 2> /dev/null
|
-Q research-mode-tasks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-worker-sender)
|
delivery-worker-sender)
|
||||||
scripts/run_multi_worker_app_paas.sh celery multi start 3 -c 10 -A run_celery.notify_celery --loglevel=INFO \
|
exec scripts/run_multi_worker_app_paas.sh celery multi start 3 -c 10 -A run_celery.notify_celery --loglevel=INFO \
|
||||||
-Q send-sms-tasks,send-email-tasks
|
-Q send-sms-tasks,send-email-tasks
|
||||||
;;
|
;;
|
||||||
delivery-worker-periodic)
|
delivery-worker-periodic)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=2 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=2 \
|
||||||
-Q periodic-tasks 2> /dev/null
|
-Q periodic-tasks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-worker-reporting)
|
delivery-worker-reporting)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
||||||
-Q reporting-tasks 2> /dev/null
|
-Q reporting-tasks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-worker-priority)
|
delivery-worker-priority)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=5 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=5 \
|
||||||
-Q priority-tasks 2> /dev/null
|
-Q priority-tasks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
# Only consume the notify-internal-tasks queue on this app so that Notify messages are processed as a priority
|
# Only consume the notify-internal-tasks queue on this app so that Notify messages are processed as a priority
|
||||||
delivery-worker-internal)
|
delivery-worker-internal)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
||||||
-Q notify-internal-tasks 2> /dev/null
|
-Q notify-internal-tasks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-worker-receipts)
|
delivery-worker-receipts)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
||||||
-Q ses-callbacks 2> /dev/null
|
-Q ses-callbacks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-worker-service-callbacks)
|
delivery-worker-service-callbacks)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery worker --loglevel=INFO --concurrency=11 \
|
||||||
-Q service-callbacks 2> /dev/null
|
-Q service-callbacks 2> /dev/null
|
||||||
;;
|
;;
|
||||||
delivery-celery-beat)
|
delivery-celery-beat)
|
||||||
scripts/run_app_paas.sh celery -A run_celery.notify_celery beat --loglevel=INFO
|
exec scripts/run_app_paas.sh celery -A run_celery.notify_celery beat --loglevel=INFO
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Unknown notify_app_name $NOTIFY_APP_NAME"
|
echo "Unknown notify_app_name $NOTIFY_APP_NAME"
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ echo "Run script pid: $$"
|
|||||||
|
|
||||||
check_params
|
check_params
|
||||||
|
|
||||||
trap "on_exit" EXIT TERM
|
trap "on_exit" EXIT
|
||||||
|
|
||||||
configure_aws_logs
|
configure_aws_logs
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user