Commit 7d838341 authored by jxltom's avatar jxltom

Merge remote-tracking branch 'upstream/master'

parents 1caa6c92 e094c546
# Python Buildpack Changelog # Python Buildpack Changelog
# 139 # 141 (2018-10-10)
Switch to cautious upgrade for Pipenv install to ensure the pinned pip version
is used with Pipenv
# 140 (2018-10-09)
Add support for detecting SLUGIFY_USES_TEXT_UNIDECODE, which is required to
install Apache Airflow version 1.10 or higher.
# 139 (2018-10-08)
Improvements to Python install messaging Improvements to Python install messaging
......
...@@ -8,10 +8,24 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then ...@@ -8,10 +8,24 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
# Install dependencies with Pip. # Install dependencies with Pip.
puts-step "Installing requirements with pip" puts-step "Installing requirements with pip"
# Set PIP_EXTRA_INDEX_URL # Set Pip env vars
if [[ -r $ENV_DIR/PIP_EXTRA_INDEX_URL ]]; then # This reads certain environment variables set on the Heroku app config
# and makes them accessible to the pip install process.
#
# PIP_EXTRA_INDEX_URL allows for an alternate pypi URL to be used.
if [[ -r "$ENV_DIR/PIP_EXTRA_INDEX_URL" ]]; then
PIP_EXTRA_INDEX_URL="$(cat "$ENV_DIR/PIP_EXTRA_INDEX_URL")" PIP_EXTRA_INDEX_URL="$(cat "$ENV_DIR/PIP_EXTRA_INDEX_URL")"
export PIP_EXTRA_INDEX_URL export PIP_EXTRA_INDEX_URL
mcount "buildvar.PIP_EXTRA_INDEX_URL"
fi
set +e
# Set SLUGIFY_USES_TEXT_UNIDECODE, required for Airflow versions >=1.10
if [[ -r "$ENV_DIR/SLUGIFY_USES_TEXT_UNIDECODE" ]]; then
SLUGIFY_USES_TEXT_UNIDECODE="$(cat "$ENV_DIR/SLUGIFY_USES_TEXT_UNIDECODE")"
export SLUGIFY_USES_TEXT_UNIDECODE
mcount "buildvar.SLUGIFY_USES_TEXT_UNIDECODE"
fi fi
set +e set +e
......
...@@ -20,7 +20,6 @@ if [[ -f Pipfile.lock ]]; then ...@@ -20,7 +20,6 @@ if [[ -f Pipfile.lock ]]; then
export SKIP_PIPENV_INSTALL=1 export SKIP_PIPENV_INSTALL=1
export SKIP_PIP_INSTALL=1 export SKIP_PIP_INSTALL=1
fi fi
fi fi
fi fi
fi fi
...@@ -32,15 +31,30 @@ if [ ! "$SKIP_PIPENV_INSTALL" ]; then ...@@ -32,15 +31,30 @@ if [ ! "$SKIP_PIPENV_INSTALL" ]; then
# Measure that we're using Pipenv. # Measure that we're using Pipenv.
mcount "tool.pipenv" mcount "tool.pipenv"
# Set PIP_EXTRA_INDEX_URL # Set Pip env vars
if [[ -r $ENV_DIR/PIP_EXTRA_INDEX_URL ]]; then # This reads certain environment variables set on the Heroku app config
# and makes them accessible to the pip install process.
#
# PIP_EXTRA_INDEX_URL allows for an alternate pypi URL to be used.
if [[ -r "$ENV_DIR/PIP_EXTRA_INDEX_URL" ]]; then
PIP_EXTRA_INDEX_URL="$(cat "$ENV_DIR/PIP_EXTRA_INDEX_URL")" PIP_EXTRA_INDEX_URL="$(cat "$ENV_DIR/PIP_EXTRA_INDEX_URL")"
export PIP_EXTRA_INDEX_URL export PIP_EXTRA_INDEX_URL
mcount "buildvar.PIP_EXTRA_INDEX_URL"
fi
# Set SLUGIFY_USES_TEXT_UNIDECODE, required for Airflow versions >=1.10
if [[ -r "$ENV_DIR/SLUGIFY_USES_TEXT_UNIDECODE" ]]; then
SLUGIFY_USES_TEXT_UNIDECODE="$(cat "$ENV_DIR/SLUGIFY_USES_TEXT_UNIDECODE")"
export SLUGIFY_USES_TEXT_UNIDECODE
mcount "buildvar.SLUGIFY_USES_TEXT_UNIDECODE"
fi fi
export PIPENV_VERSION="11.9.0" export PIPENV_VERSION="11.9.0"
# Install pipenv. # Install pipenv.
# Due to weird old pip behavior and pipenv behavior, pipenv upgrades pip
# to latest if only --upgrade is specified. Specify upgrade strategy to
# avoid this eager behavior.
/app/.heroku/python/bin/pip install pipenv==$PIPENV_VERSION --upgrade --upgrade-strategy only-if-needed &> /dev/null /app/.heroku/python/bin/pip install pipenv==$PIPENV_VERSION --upgrade --upgrade-strategy only-if-needed &> /dev/null
# Install the dependencies. # Install the dependencies.
......
#!/usr/bin/env bash #!/usr/bin/env bash
testAirflow() {
export SLUGIFY_USES_TEXT_UNIDECODE="yes"
compile "airflow"
assertCaptured "apache-airflow==1.10"
assertCapturedSuccess
}
testPipenv() { testPipenv() {
compile "pipenv" compile "pipenv"
assertCapturedSuccess assertCapturedSuccess
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment