mirror of
https://github.com/kennethreitz/heroku-buildpack-python.git
synced 2026-06-05 15:00:19 +00:00
update python.gunicorn.sh to WEB_CONCURRENCY.sh (#373)
* update python.gunicorn.sh to WEB_CONCURRENCY.sh * don't remove WEB_CONCURRENCY for prefixed 0s * split gunicorn functionality into its own file * cleanup comments * fix var ordering * add retry to curl * use proper url for buildpack stdlib
This commit is contained in:
@@ -68,6 +68,7 @@ mkdir -p /app/.heroku
|
||||
PROFILE_PATH="$BUILD_DIR/.profile.d/python.sh"
|
||||
EXPORT_PATH="$BIN_DIR/../export"
|
||||
GUNICORN_PROFILE_PATH="$BUILD_DIR/.profile.d/python.gunicorn.sh"
|
||||
WEB_CONCURRENCY_PROFILE_PATH="$BUILD_DIR/.profile.d/WEB_CONCURRENCY.sh"
|
||||
|
||||
# We'll need to send these statics to other scripts we `source`.
|
||||
export BUILD_DIR CACHE_DIR BIN_DIR PROFILE_PATH EXPORT_PATH
|
||||
@@ -211,8 +212,10 @@ set-default-env PYTHONHASHSEED random
|
||||
set-default-env PYTHONPATH /app/
|
||||
|
||||
# Install sane-default script for $WEB_CONCURRENCY and $FORWARDED_ALLOW_IPS.
|
||||
cp $ROOT_DIR/vendor/WEB_CONCURRENCY.sh $WEB_CONCURRENCY_PROFILE_PATH
|
||||
cp $ROOT_DIR/vendor/python.gunicorn.sh $GUNICORN_PROFILE_PATH
|
||||
|
||||
|
||||
# Experimental post_compile hook.
|
||||
source $BIN_DIR/steps/hooks/post_compile
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ shopt -s extglob
|
||||
|
||||
# The standard library.
|
||||
if [[ ! -f /tmp/stdlib.sh ]]; then
|
||||
curl -s https://raw.githubusercontent.com/heroku/buildpack-stdlib/v2/stdlib.sh > /tmp/stdlib.sh
|
||||
curl --retry 3 -s https://lang-common.s3.amazonaws.com/buildpack-stdlib/v2/stdlib.sh > /tmp/stdlib.sh
|
||||
fi
|
||||
source /tmp/stdlib.sh
|
||||
|
||||
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
case $(ulimit -u) in
|
||||
|
||||
# Automatic configuration for Gunicorn's Workers setting.
|
||||
|
||||
# Standard-1X (+Free, +Hobby) Dyno
|
||||
256)
|
||||
export DYNO_RAM=512
|
||||
export WEB_CONCURRENCY=${WEB_CONCURRENCY:-02}
|
||||
;;
|
||||
|
||||
# Standard-2X Dyno
|
||||
512)
|
||||
export DYNO_RAM=1024
|
||||
export WEB_CONCURRENCY=${WEB_CONCURRENCY:-04}
|
||||
;;
|
||||
|
||||
# Performance-M Dyno
|
||||
16384)
|
||||
export DYNO_RAM=2560
|
||||
export WEB_CONCURRENCY=${WEB_CONCURRENCY:-08}
|
||||
;;
|
||||
|
||||
# Performance-L Dyno
|
||||
32768)
|
||||
export DYNO_RAM=6656
|
||||
export WEB_CONCURRENCY=${WEB_CONCURRENCY:-011}
|
||||
;;
|
||||
|
||||
esac
|
||||
Vendored
-36
@@ -1,38 +1,2 @@
|
||||
if [[ "${WEB_CONCURRENCY:-}" == 0* ]]; then
|
||||
# another buildpack set a default value, with leading zero
|
||||
unset WEB_CONCURRENCY
|
||||
fi
|
||||
|
||||
case $(ulimit -u) in
|
||||
|
||||
# Automatic configuration for Gunicorn's Workers setting.
|
||||
# Leading zero padding so a subsequent buildpack can figure out that we set a value, and not the user
|
||||
|
||||
# Standard-1X (+Free, +Hobby) Dyno
|
||||
256)
|
||||
export DYNO_RAM=512
|
||||
export WEB_CONCURRENCY=${WEB_CONCURRENCY:-02}
|
||||
;;
|
||||
|
||||
# Standard-2X Dyno
|
||||
512)
|
||||
export DYNO_RAM=1024
|
||||
export WEB_CONCURRENCY=${WEB_CONCURRENCY:-04}
|
||||
;;
|
||||
|
||||
# Performance-M Dyno
|
||||
16384)
|
||||
export DYNO_RAM=2560
|
||||
export WEB_CONCURRENCY=${WEB_CONCURRENCY:-08}
|
||||
;;
|
||||
|
||||
# Performance-L Dyno
|
||||
32768)
|
||||
export DYNO_RAM=6656
|
||||
export WEB_CONCURRENCY=${WEB_CONCURRENCY:-011}
|
||||
;;
|
||||
|
||||
esac
|
||||
|
||||
# Automatic configuration for Gunicorn's ForwardedAllowIPS setting.
|
||||
export FORWARDED_ALLOW_IPS='*'
|
||||
|
||||
Reference in New Issue
Block a user