Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
H
heroku-buildpack-python
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Evili del Rio
heroku-buildpack-python
Commits
fe5da9a0
Unverified
Commit
fe5da9a0
authored
Oct 09, 2019
by
Casey
Committed by
GitHub
Oct 09, 2019
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' into update-sqlite-tests
parents
0c78978e
4eed56e2
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
43 additions
and
43 deletions
+43
-43
CHANGELOG.md
CHANGELOG.md
+0
-1
bin/compile
bin/compile
+16
-16
bin/steps/collectstatic
bin/steps/collectstatic
+2
-1
bin/steps/gdal
bin/steps/gdal
+1
-1
bin/steps/geo-libs
bin/steps/geo-libs
+1
-1
bin/steps/mercurial
bin/steps/mercurial
+1
-1
bin/steps/pip-install
bin/steps/pip-install
+3
-4
bin/steps/pip-uninstall
bin/steps/pip-uninstall
+1
-1
bin/steps/pipenv
bin/steps/pipenv
+6
-5
bin/steps/pipenv-python-version
bin/steps/pipenv-python-version
+4
-4
bin/steps/python
bin/steps/python
+4
-4
builds/libraries/vendor/gdal
builds/libraries/vendor/gdal
+1
-1
builds/libraries/vendor/geos
builds/libraries/vendor/geos
+1
-1
builds/libraries/vendor/libffi
builds/libraries/vendor/libffi
+1
-1
builds/libraries/vendor/proj
builds/libraries/vendor/proj
+1
-1
No files found.
CHANGELOG.md
View file @
fe5da9a0
...
@@ -4,7 +4,6 @@
...
@@ -4,7 +4,6 @@
-
Sqlite3 Update:
-
Sqlite3 Update:
-
Add Tests
-
Add Tests
-
Refactor: use variable rather than hardcoded /app
-
Bug fix: pipenv no longer installs twice on CI
-
Bug fix: pipenv no longer installs twice on CI
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
...
...
bin/compile
View file @
fe5da9a0
...
@@ -90,7 +90,6 @@ export PATH=$PATH:$ROOT_DIR/vendor/:$ROOT_DIR/vendor/pip-pop
...
@@ -90,7 +90,6 @@ export PATH=$PATH:$ROOT_DIR/vendor/:$ROOT_DIR/vendor/pip-pop
unset
GIT_DIR PYTHONHOME PYTHONPATH
unset
GIT_DIR PYTHONHOME PYTHONPATH
unset
RECEIVE_DATA RUN_KEY BUILD_INFO DEPLOY LOG_TOKEN
unset
RECEIVE_DATA RUN_KEY BUILD_INFO DEPLOY LOG_TOKEN
unset
CYTOKINE_LOG_FILE GEM_PATH
unset
CYTOKINE_LOG_FILE GEM_PATH
export
PYTHONPATH
=
"
$BUILD_DIR
"
# Import the utils script, which contains helper functions used throughout the buildpack.
# Import the utils script, which contains helper functions used throughout the buildpack.
# shellcheck source=bin/utils
# shellcheck source=bin/utils
...
@@ -105,7 +104,7 @@ source "$BIN_DIR/warnings"
...
@@ -105,7 +104,7 @@ source "$BIN_DIR/warnings"
# to `/app`.
# to `/app`.
# Symlinks are required, since Python is not a portable installation.
# Symlinks are required, since Python is not a portable installation.
# More on this topic later.
# More on this topic later.
mkdir
-p
"BUILD_DIR/.heroku"
mkdir
-p
/app/.heroku
# This buildpack programatically generates (or simply copies) a number of files for
# This buildpack programatically generates (or simply copies) a number of files for
# buildpack machinery: an export script, and a number of `.profile.d` scripts. This
# buildpack machinery: an export script, and a number of `.profile.d` scripts. This
...
@@ -123,7 +122,7 @@ export BUILD_DIR CACHE_DIR BIN_DIR PROFILE_PATH EXPORT_PATH
...
@@ -123,7 +122,7 @@ export BUILD_DIR CACHE_DIR BIN_DIR PROFILE_PATH EXPORT_PATH
# Notes on each variable included.
# Notes on each variable included.
# PATH is relatively obvious, we need to be able to execute 'python'.
# PATH is relatively obvious, we need to be able to execute 'python'.
export
PATH
=
"
$BUILD_DIR
/.heroku/python/bin:
$BUILD_DIR
/.heroku/vendor/bin:
$PATH
"
export
PATH
=
/app/.heroku/python/bin:/app/.heroku/vendor/bin:
$PATH
# Tell Python to not buffer it's stdin/stdout.
# Tell Python to not buffer it's stdin/stdout.
export
PYTHONUNBUFFERED
=
1
export
PYTHONUNBUFFERED
=
1
# Set the locale to a well-known and expected standard.
# Set the locale to a well-known and expected standard.
...
@@ -131,11 +130,11 @@ export LANG=en_US.UTF-8
...
@@ -131,11 +130,11 @@ export LANG=en_US.UTF-8
# `~/.heroku/vendor` is an place where the buildpack may stick pre-build binaries for known
# `~/.heroku/vendor` is an place where the buildpack may stick pre-build binaries for known
# C dependencies (e.g. libmemcached on cedar-14). This section configures Python (GCC, more specifically)
# C dependencies (e.g. libmemcached on cedar-14). This section configures Python (GCC, more specifically)
# and pip to automatically include these paths when building binaries.
# and pip to automatically include these paths when building binaries.
export
C_INCLUDE_PATH
=
"
$BUILD_DIR
/.heroku/vendor/include:
$BUILD_DIR
/.heroku/python/include:
$C_INCLUDE_PATH
"
export
C_INCLUDE_PATH
=
/app/.heroku/vendor/include:/app/.heroku/python/include:
$C_INCLUDE_PATH
export
CPLUS_INCLUDE_PATH
=
"
$BUILD_DIR
/.heroku/vendor/include:
$BUILD_DIR
/.heroku/python/include:
$CPLUS_INCLUDE_PATH
"
export
CPLUS_INCLUDE_PATH
=
/app/.heroku/vendor/include:/app/.heroku/python/include:
$CPLUS_INCLUDE_PATH
export
LIBRARY_PATH
=
"
$BUILD_DIR
/.heroku/vendor/lib:
$BUILD_DIR
/.heroku/python/lib:
$LIBRARY_PATH
"
export
LIBRARY_PATH
=
/app/.heroku/vendor/lib:/app/.heroku/python/lib:
$LIBRARY_PATH
export
LD_LIBRARY_PATH
=
"
$BUILD_DIR
/.heroku/vendor/lib:
$BUILD_DIR
/.heroku/python/lib:
$LD_LIBRARY_PATH
"
export
LD_LIBRARY_PATH
=
/app/.heroku/vendor/lib:/app/.heroku/python/lib:
$LD_LIBRARY_PATH
export
PKG_CONFIG_PATH
=
"
$BUILD_DIR
/.heroku/vendor/lib/pkg-config:
$BUILD_DIR
/.heroku/python/lib/pkg-config:
$PKG_CONFIG_PATH
"
export
PKG_CONFIG_PATH
=
/app/.heroku/vendor/lib/pkg-config:/app/.heroku/python/lib/pkg-config:
$PKG_CONFIG_PATH
# The Application Code
# The Application Code
# --------------------
# --------------------
...
@@ -212,16 +211,15 @@ fi
...
@@ -212,16 +211,15 @@ fi
# Create the directory for .profile.d, if it doesn't exist.
# Create the directory for .profile.d, if it doesn't exist.
mkdir
-p
"
$(
dirname
"
$PROFILE_PATH
"
)
"
mkdir
-p
"
$(
dirname
"
$PROFILE_PATH
"
)
"
# Create the directory for editable source code installation, if it doesn't exist.
# Create the directory for editable source code installation, if it doesn't exist.
mkdir
-p
"
$BUILD_DIR
/.heroku/src"
mkdir
-p
/app/.heroku/src
# On Heroku CI, builds happen in `/app`. Otherwise, on the Heroku platform,
# On Heroku CI, builds happen in `/app`. Otherwise, on the Heroku platform,
# they occur in a temp directory. Beacuse Python is not portable, we must create
# they occur in a temp directory. Beacuse Python is not portable, we must create
# symlinks to emulate that we are operating in `/app` during the build process.
# symlinks to emulate that we are operating in `/app` during the build process.
# This is (hopefully obviously) because apps end up running from `/app` in production.
# This is (hopefully obviously) because apps end up running from `/app` in production.
if
[[
"
$BUILD_DIR
"
!=
'/app'
]]
;
then
if
[[
$BUILD_DIR
!=
'/app'
]]
;
then
# python expects to reside in /app, so set up symlinks
# python expects to reside in /app, so set up symlinks
# we will not remove these later so subsequent buildpacks can still invoke it
# we will not remove these later so subsequent buildpacks can still invoke it
mkdir
-p
/app/.heroku
ln
-nsf
"
$BUILD_DIR
/.heroku/python"
/app/.heroku/python
ln
-nsf
"
$BUILD_DIR
/.heroku/python"
/app/.heroku/python
ln
-nsf
"
$BUILD_DIR
/.heroku/vendor"
/app/.heroku/vendor
ln
-nsf
"
$BUILD_DIR
/.heroku/vendor"
/app/.heroku/vendor
# Note: .heroku/src is copied in later.
# Note: .heroku/src is copied in later.
...
@@ -312,7 +310,8 @@ mtime "nltk.download.time" "${start}"
...
@@ -312,7 +310,8 @@ mtime "nltk.download.time" "${start}"
# and copying it into the proper place (the logical place to do this was early, but it must be done here).
# and copying it into the proper place (the logical place to do this was early, but it must be done here).
# In CI, $BUILD_DIR is /app.
# In CI, $BUILD_DIR is /app.
if
[[
!
"
$BUILD_DIR
"
==
"/app"
]]
;
then
if
[[
!
"
$BUILD_DIR
"
==
"/app"
]]
;
then
ln
-nsf
"
$BUILD_DIR
/.heroku/src"
/app/.heroku/src
rm
-fr
"
$BUILD_DIR
/.heroku/src"
deep-cp /app/.heroku/src
"
$BUILD_DIR
/.heroku/src"
fi
fi
...
@@ -344,12 +343,13 @@ set_default_env PYTHONHASHSEED random
...
@@ -344,12 +343,13 @@ set_default_env PYTHONHASHSEED random
# Tell Python to look for Python modules in the /app dir. Don't change this.
# Tell Python to look for Python modules in the /app dir. Don't change this.
set_default_env PYTHONPATH
"
\$
HOME"
set_default_env PYTHONPATH
"
\$
HOME"
# Python expects to be in
"$BUILD_DIR,"
if at runtime, it is not, set
# Python expects to be in
/app,
if at runtime, it is not, set
# up symlinks… this can occur when the subdir buildpack is used.
# up symlinks… this can occur when the subdir buildpack is used.
cat
<<
EOT
>> "
$PROFILE_PATH
"
cat
<<
EOT
>> "
$PROFILE_PATH
"
if [[
\$
HOME != "
$BUILD_DIR
" ]]; then
if [[
\$
HOME != "/app" ]]; then
ln -nsf "
\$
HOME/.heroku/python" "
$BUILD_DIR
/.heroku/python"
mkdir -p /app/.heroku
ln -nsf "
\$
HOME/.heroku/vendor" "
$BUILD_DIR
/.heroku/vendor"
ln -nsf "
\$
HOME/.heroku/python" /app/.heroku/python
ln -nsf "
\$
HOME/.heroku/vendor" /app/.heroku/vendor
fi
fi
EOT
EOT
...
...
bin/steps/collectstatic
View file @
fe5da9a0
...
@@ -30,11 +30,12 @@ if [ ! "$DISABLE_COLLECTSTATIC" ] && [ -f "$MANAGE_FILE" ] && [ "$DJANGO_INSTALL
...
@@ -30,11 +30,12 @@ if [ ! "$DISABLE_COLLECTSTATIC" ] && [ -f "$MANAGE_FILE" ] && [ "$DJANGO_INSTALL
puts-step
"
$
python
$MANAGE_FILE
collectstatic --noinput"
puts-step
"
$
python
$MANAGE_FILE
collectstatic --noinput"
# Run collectstatic, cleanup some of the noisy output.
# Run collectstatic, cleanup some of the noisy output.
PYTHONPATH
=
${
PYTHONPATH
:-
$BUILD_DIR
}
PYTHONPATH
=
${
PYTHONPATH
:-
.
}
export
PYTHONPATH
export
PYTHONPATH
# Create a temporary file for collecting the collectstaic logs.
# Create a temporary file for collecting the collectstaic logs.
COLLECTSTATIC_LOG
=
$(
mktemp
)
COLLECTSTATIC_LOG
=
$(
mktemp
)
python
"
$MANAGE_FILE
"
collectstatic
--noinput
--traceback
2>&1 |
tee
"
$COLLECTSTATIC_LOG
"
|
sed
'/^Post-processed/d;/^Copying/d;/^$/d'
| indent
python
"
$MANAGE_FILE
"
collectstatic
--noinput
--traceback
2>&1 |
tee
"
$COLLECTSTATIC_LOG
"
|
sed
'/^Post-processed/d;/^Copying/d;/^$/d'
| indent
COLLECTSTATIC_STATUS
=
"
${
PIPESTATUS
[0]
}
"
COLLECTSTATIC_STATUS
=
"
${
PIPESTATUS
[0]
}
"
...
...
bin/steps/gdal
View file @
fe5da9a0
...
@@ -12,7 +12,7 @@
...
@@ -12,7 +12,7 @@
# The location of the pre-compiled cryptography binary.
# The location of the pre-compiled cryptography binary.
VENDORED_GDAL
=
"
${
VENDOR_URL
}
/libraries/vendor/gdal.tar.gz"
VENDORED_GDAL
=
"
${
VENDOR_URL
}
/libraries/vendor/gdal.tar.gz"
PKG_CONFIG_PATH
=
"
$BUILD_DIR
/.heroku/vendor/lib/pkgconfig:
$PKG_CONFIG_PATH
"
PKG_CONFIG_PATH
=
"
/app
/.heroku/vendor/lib/pkgconfig:
$PKG_CONFIG_PATH
"
# Syntax sugar.
# Syntax sugar.
# shellcheck source=bin/utils
# shellcheck source=bin/utils
...
...
bin/steps/geo-libs
View file @
fe5da9a0
...
@@ -14,7 +14,7 @@ VENDORED_GDAL="${VENDOR_URL}/libraries/vendor/gdal.tar.gz"
...
@@ -14,7 +14,7 @@ VENDORED_GDAL="${VENDOR_URL}/libraries/vendor/gdal.tar.gz"
VENDORED_GEOS
=
"
${
VENDOR_URL
}
/libraries/vendor/geos.tar.gz"
VENDORED_GEOS
=
"
${
VENDOR_URL
}
/libraries/vendor/geos.tar.gz"
VENDORED_PROJ
=
"
${
VENDOR_URL
}
/libraries/vendor/proj.tar.gz"
VENDORED_PROJ
=
"
${
VENDOR_URL
}
/libraries/vendor/proj.tar.gz"
PKG_CONFIG_PATH
=
"
$BUILD_DIR
/.heroku/vendor/lib/pkgconfig:
$PKG_CONFIG_PATH
"
PKG_CONFIG_PATH
=
"
/app
/.heroku/vendor/lib/pkgconfig:
$PKG_CONFIG_PATH
"
# Syntax sugar.
# Syntax sugar.
# shellcheck source=bin/utils
# shellcheck source=bin/utils
...
...
bin/steps/mercurial
View file @
fe5da9a0
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
# Install Mercurial if it appears to be required.
# Install Mercurial if it appears to be required.
if
[[
-f
"requirements.txt"
]]
;
then
if
[[
-f
"requirements.txt"
]]
;
then
if
(
grep
-Fiq
"hg+"
requirements.txt
)
then
if
(
grep
-Fiq
"hg+"
requirements.txt
)
then
"
$BUILD_DIR
/.heroku/python/bin/pip"
install
mercurial | cleanup | indent
/app/.heroku/python/bin/pip
install
mercurial | cleanup | indent
mcount
"steps.mercurial"
mcount
"steps.mercurial"
fi
fi
fi
fi
bin/steps/pip-install
View file @
fe5da9a0
...
@@ -41,8 +41,7 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
...
@@ -41,8 +41,7 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
if
[
!
-f
"
$BUILD_DIR
/.heroku/python/bin/pip"
]
;
then
if
[
!
-f
"
$BUILD_DIR
/.heroku/python/bin/pip"
]
;
then
exit
1
exit
1
fi
fi
/app/.heroku/python/bin/pip
install
-r
"
$BUILD_DIR
/requirements.txt"
--exists-action
=
w
--src
=
/app/.heroku/src
--disable-pip-version-check
--no-cache-dir
2>&1 |
tee
"
$WARNINGS_LOG
"
| cleanup | indent
"
$BUILD_DIR
/.heroku/python/bin/pip"
install
-r
"
$BUILD_DIR
/requirements.txt"
--exists-action
=
w
--src
=
"
$BUILD_DIR
/.heroku/src"
--disable-pip-version-check
--no-cache-dir
2>&1 |
tee
"
$WARNINGS_LOG
"
| cleanup | indent
PIP_STATUS
=
"
${
PIPESTATUS
[0]
}
"
PIP_STATUS
=
"
${
PIPESTATUS
[0]
}
"
set
-e
set
-e
...
@@ -55,7 +54,7 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
...
@@ -55,7 +54,7 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
# Smart Requirements handling
# Smart Requirements handling
cp
requirements.txt .heroku/python/requirements-declared.txt
cp
requirements.txt .heroku/python/requirements-declared.txt
"
$BUILD_DIR
/.heroku/python/bin/pip"
freeze
--disable-pip-version-check
>
.heroku/python/requirements-installed.txt
/app/.heroku/python/bin/pip
freeze
--disable-pip-version-check
>
.heroku/python/requirements-installed.txt
echo
echo
...
@@ -63,7 +62,7 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
...
@@ -63,7 +62,7 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
if
[
"
$INSTALL_TEST
"
]
;
then
if
[
"
$INSTALL_TEST
"
]
;
then
if
[[
-f
"
$1
/requirements-test.txt"
]]
;
then
if
[[
-f
"
$1
/requirements-test.txt"
]]
;
then
puts-step
"Installing test dependencies…"
puts-step
"Installing test dependencies…"
"
$BUILD_DIR
/.heroku/python/bin/pip"
install
-r
"
$1
/requirements-test.txt"
--exists-action
=
w
--src
=
./.heroku/src
--disable-pip-version-check
--no-cache-dir
2>&1 | cleanup | indent
/app/.heroku/python/bin/pip
install
-r
"
$1
/requirements-test.txt"
--exists-action
=
w
--src
=
./.heroku/src
--disable-pip-version-check
--no-cache-dir
2>&1 | cleanup | indent
fi
fi
fi
fi
fi
fi
bin/steps/pip-uninstall
View file @
fe5da9a0
...
@@ -20,7 +20,7 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
...
@@ -20,7 +20,7 @@ if [ ! "$SKIP_PIP_INSTALL" ]; then
if
[[
-s
.heroku/python/requirements-stale.txt
]]
;
then
if
[[
-s
.heroku/python/requirements-stale.txt
]]
;
then
puts-step
"Uninstalling stale dependencies"
puts-step
"Uninstalling stale dependencies"
"
$BUILD_DIR
/.heroku/python/bin/pip"
uninstall
-r
.heroku/python/requirements-stale.txt
-y
--exists-action
=
w
--disable-pip-version-check
| cleanup | indent
/app/.heroku/python/bin/pip
uninstall
-r
.heroku/python/requirements-stale.txt
-y
--exists-action
=
w
--disable-pip-version-check
| cleanup | indent
fi
fi
fi
fi
...
...
bin/steps/pipenv
View file @
fe5da9a0
...
@@ -12,7 +12,7 @@ if [[ -f Pipfile.lock ]]; then
...
@@ -12,7 +12,7 @@ if [[ -f Pipfile.lock ]]; then
# Measure that we're using Pipenv.
# Measure that we're using Pipenv.
mcount
"tool.pipenv"
mcount
"tool.pipenv"
# Don't skip installation
i
f there are git deps.
# Don't skip installation
o
f there are git deps.
if
!
grep
-q
'git'
Pipfile.lock
;
then
if
!
grep
-q
'git'
Pipfile.lock
;
then
echo
"Skipping installation, as Pipfile.lock hasn't changed since last deploy."
| indent
echo
"Skipping installation, as Pipfile.lock hasn't changed since last deploy."
| indent
...
@@ -58,17 +58,18 @@ if [ ! "$SKIP_PIPENV_INSTALL" ]; then
...
@@ -58,17 +58,18 @@ if [ ! "$SKIP_PIPENV_INSTALL" ]; then
# Due to weird old pip behavior and pipenv behavior, pipenv upgrades pip
# Due to weird old pip behavior and pipenv behavior, pipenv upgrades pip
# to latest if only --upgrade is specified. Specify upgrade strategy to
# to latest if only --upgrade is specified. Specify upgrade strategy to
# avoid this eager behavior.
# avoid this eager behavior.
"
$BUILD_DIR
/.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 test dependencies, for CI.
# Install the test dependencies, for CI.
if
[
"
$INSTALL_TEST
"
]
;
then
if
[
"
$INSTALL_TEST
"
]
;
then
puts-step
"Installing test dependencies…"
puts-step
"Installing test dependencies…"
"
$BUILD_DIR
/.heroku/python/bin/pipenv"
install
--dev
--system
--deploy
2>&1 | cleanup | indent
/app/.heroku/python/bin/pipenv
install
--dev
--system
--deploy
2>&1 | cleanup | indent
# Install the dependencies.
# Install the dependencies.
elif
[[
!
-f
Pipfile.lock
]]
;
then
elif
[[
!
-f
Pipfile.lock
]]
;
then
puts-step
"Installing dependencies with Pipenv
$PIPENV_VERSION
…"
puts-step
"Installing dependencies with Pipenv
$PIPENV_VERSION
…"
"
$BUILD_DIR
/.heroku/python/bin/pipenv"
install
--system
--skip-lock
2>&1 | indent
/app/.heroku/python/bin/pipenv
install
--system
--skip-lock
2>&1 | indent
else
else
pipenv-to-pip Pipfile.lock
>
requirements.txt
pipenv-to-pip Pipfile.lock
>
requirements.txt
"
$BIN_DIR
/steps/pip-uninstall"
"
$BIN_DIR
/steps/pip-uninstall"
...
@@ -76,7 +77,7 @@ if [ ! "$SKIP_PIPENV_INSTALL" ]; then
...
@@ -76,7 +77,7 @@ if [ ! "$SKIP_PIPENV_INSTALL" ]; then
openssl dgst
-sha256
Pipfile.lock
>
.heroku/python/Pipfile.lock.sha256
openssl dgst
-sha256
Pipfile.lock
>
.heroku/python/Pipfile.lock.sha256
puts-step
"Installing dependencies with Pipenv
$PIPENV_VERSION
…"
puts-step
"Installing dependencies with Pipenv
$PIPENV_VERSION
…"
"
$BUILD_DIR
/.heroku/python/bin/pipenv"
install
--system
--deploy
2>&1 | indent
/app/.heroku/python/bin/pipenv
install
--system
--deploy
2>&1 | indent
fi
fi
fi
fi
else
else
...
...
bin/steps/pipenv-python-version
View file @
fe5da9a0
...
@@ -2,13 +2,13 @@
...
@@ -2,13 +2,13 @@
# Detect Python-version with Pipenv.
# Detect Python-version with Pipenv.
if
[[
-f
"
$BUILD_DIR
/Pipfile"
]]
;
then
if
[[
-f
$BUILD_DIR
/Pipfile
]]
;
then
if
[[
!
-f
"
$BUILD_DIR
/runtime.txt"
]]
;
then
if
[[
!
-f
$BUILD_DIR
/runtime.txt
]]
;
then
if
[[
!
-f
"
$BUILD_DIR
/Pipfile.lock"
]]
;
then
if
[[
!
-f
$BUILD_DIR
/Pipfile.lock
]]
;
then
puts-warn
"No 'Pipfile.lock' found! We recommend you commit this into your repository."
puts-warn
"No 'Pipfile.lock' found! We recommend you commit this into your repository."
fi
fi
if
[[
-f
"
$BUILD_DIR
/Pipfile.lock"
]]
;
then
if
[[
-f
$BUILD_DIR
/Pipfile.lock
]]
;
then
set
+e
set
+e
PYTHON
=
$(
jq
-r
'._meta.requires.python_full_version'
"
$BUILD_DIR
/Pipfile.lock"
)
PYTHON
=
$(
jq
-r
'._meta.requires.python_full_version'
"
$BUILD_DIR
/Pipfile.lock"
)
if
[[
"
$PYTHON
"
!=
"null"
]]
;
then
if
[[
"
$PYTHON
"
!=
"null"
]]
;
then
...
...
bin/steps/python
View file @
fe5da9a0
...
@@ -113,11 +113,11 @@ if [ "$FRESH_PYTHON" ] || [[ ! $(pip --version) == *$PIP_UPDATE* ]]; then
...
@@ -113,11 +113,11 @@ if [ "$FRESH_PYTHON" ] || [[ ! $(pip --version) == *$PIP_UPDATE* ]]; then
puts-step
"Installing pip"
puts-step
"Installing pip"
# Remove old installations.
# Remove old installations.
rm
-fr
"
$BUILD_DIR
/.heroku/python/lib/python*/site-packages/pip-*"
rm
-fr
/app/.heroku/python/lib/python
*
/site-packages/pip-
*
rm
-fr
"
$BUILD_DIR
/.heroku/python/lib/python*/site-packages/setuptools-*"
rm
-fr
/app/.heroku/python/lib/python
*
/site-packages/setuptools-
*
"
$BUILD_DIR
/.heroku/python/bin/python"
"
$ROOT_DIR
/get-pip.py"
pip
==
"
$PIP_UPDATE
"
&> /dev/null
/app/.heroku/python/bin/python
"
$ROOT_DIR
/get-pip.py"
pip
==
"
$PIP_UPDATE
"
&> /dev/null
"
$BUILD_DIR
/.heroku/python/bin/pip"
install
"
$ROOT_DIR
/vendor/setuptools-39.0.1-py2.py3-none-any.whl"
&> /dev/null
/app/.heroku/python/bin/pip
install
"
$ROOT_DIR
/vendor/setuptools-39.0.1-py2.py3-none-any.whl"
&> /dev/null
fi
fi
set
-e
set
-e
...
...
builds/libraries/vendor/gdal
View file @
fe5da9a0
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
OUT_PREFIX
=
$1
OUT_PREFIX
=
$1
# Use new path, containing autoconf.
# Use new path, containing autoconf.
export
PATH
=
"
$BUILD_DIR
/.heroku/python/bin/:
$PATH
"
export
PATH
=
"
/app
/.heroku/python/bin/:
$PATH
"
hash
-r
hash
-r
...
...
builds/libraries/vendor/geos
View file @
fe5da9a0
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
OUT_PREFIX
=
$1
OUT_PREFIX
=
$1
# Use new path, containing autoconf.
# Use new path, containing autoconf.
export
PATH
=
"
$BUILD_DIR
.heroku/python/bin/:
$PATH
"
export
PATH
=
"
/app/
.heroku/python/bin/:
$PATH
"
hash
-r
hash
-r
...
...
builds/libraries/vendor/libffi
View file @
fe5da9a0
...
@@ -9,7 +9,7 @@ if [[ $S3_PREFIX == "heroku-16" ]]; then
...
@@ -9,7 +9,7 @@ if [[ $S3_PREFIX == "heroku-16" ]]; then
fi
fi
# Use new path, containing autoconf.
# Use new path, containing autoconf.
export
PATH
=
"
$BUILD_DIR
/.heroku/python/bin/:
$PATH
"
export
PATH
=
"
/app
/.heroku/python/bin/:
$PATH
"
hash
-r
hash
-r
...
...
builds/libraries/vendor/proj
View file @
fe5da9a0
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
OUT_PREFIX
=
$1
OUT_PREFIX
=
$1
# Use new path, containing autoconf.
# Use new path, containing autoconf.
export
PATH
=
"
$BUILD_DIR
/.heroku/python/bin/:
$PATH
"
export
PATH
=
"
/app
/.heroku/python/bin/:
$PATH
"
hash
-r
hash
-r
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment