Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
H
heroku-buildpack-python
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Evili del Rio i Silvan
heroku-buildpack-python
Commits
19513067
Commit
19513067
authored
8 years ago
by
Kenneth Reitz
Browse files
Options
Downloads
Plain Diff
Merge branch 'dash-e'
# Conflicts: # bin/compile
parents
753c912e
94514a81
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
bin/compile
+29
-30
29 additions, 30 deletions
bin/compile
with
29 additions
and
30 deletions
bin/compile
+
29
−
30
View file @
19513067
...
@@ -27,8 +27,9 @@ BUILD_DIR=$1
...
@@ -27,8 +27,9 @@ BUILD_DIR=$1
CACHE_DIR
=
$2
CACHE_DIR
=
$2
ENV_DIR
=
$3
ENV_DIR
=
$3
# Export path environment variables for sub-scripts.
# Static configurations for virtualenv caches.
export
BIN_DIR ROOT_DIR BUILD_DIR CACHE_DIR ENV_DIR
VIRTUALENV_LOC
=
".heroku/venv"
LEGACY_TRIGGER
=
"lib/python2.7"
DEFAULT_PYTHON_VERSION
=
"python-2.7.13"
DEFAULT_PYTHON_VERSION
=
"python-2.7.13"
DEFAULT_PYTHON_STACK
=
"cedar-14"
DEFAULT_PYTHON_STACK
=
"cedar-14"
...
@@ -132,35 +133,33 @@ fi
...
@@ -132,35 +133,33 @@ fi
# Prepare the cache.
# Prepare the cache.
mkdir
-p
$CACHE_DIR
mkdir
-p
$CACHE_DIR
# Purge "old-style" virtualenvs.
bpwatch start clear_old_venvs
[
-d
$CACHE_DIR
/
$LEGACY_TRIGGER
]
&&
rm
-fr
$CACHE_DIR
/.heroku/bin
$CACHE_DIR
/.heroku/lib
$CACHE_DIR
/.heroku/include
[
-d
$CACHE_DIR
/
$VIRTUALENV_LOC
]
&&
rm
-fr
$CACHE_DIR
/.heroku/venv
$CACHE_DIR
/.heroku/src
bpwatch stop clear_old_venvs
# Restore old artifacts from the cache.
# Restore old artifacts from the cache.
bpwatch start restore_cache
bpwatch start restore_cache
mkdir
-p
.heroku
mkdir
-p
.heroku
cp
-R
$CACHE_DIR
/.heroku/python .heroku/ &> /dev/null
||
true
cp
-R
$CACHE_DIR
/.heroku/python-stack .heroku/ &> /dev/null
||
true
cp
-R
$CACHE_DIR
/.heroku/python-version .heroku/ &> /dev/null
||
true
cp
-R
$CACHE_DIR
/.heroku/vendor .heroku/ &> /dev/null
||
true
cp
-R
$CACHE_DIR
/.heroku/venv .heroku/ &> /dev/null
||
true
if
[[
-d
$CACHE_DIR
/.heroku/src
]]
;
then
cp
-R
$CACHE_DIR
/.heroku/src .heroku/ &> /dev/null
||
true
fi
cp
-R
$CACHE_DIR
/.heroku/python .heroku/ &> /dev/null
||
true
cp
-R
$CACHE_DIR
/.heroku/python-stack .heroku/ &> /dev/null
||
true
cp
-R
$CACHE_DIR
/.heroku/python-version .heroku/ &> /dev/null
||
true
cp
-R
$CACHE_DIR
/.heroku/vendor .heroku/ &> /dev/null
||
true
cp
-R
$CACHE_DIR
/.heroku/venv .heroku/ &> /dev/null
||
true
bpwatch stop restore_cache
bpwatch stop restore_cache
mkdir
-p
$(
dirname
$PROFILE_PATH
)
mkdir
-p
$(
dirname
$PROFILE_PATH
)
# Make the directory for -e pip installations.
mkdir
-p
/app/.heroku/src
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
ln
-s
$BUILD_DIR
/.heroku/python /app/.heroku/python
ln
-s
$BUILD_DIR
/.heroku/python /app/.heroku/python
ln
-s
$BUILD_DIR
/.heroku/
vendor
/app/.heroku/
vendor
ln
-s
$BUILD_DIR
/.heroku/
src
/app/.heroku/
src
ln
-s
$BUILD_DIR
/.heroku/ven
v
/app/.heroku/ven
v
ln
-s
$BUILD_DIR
/.heroku/ven
dor
/app/.heroku/ven
dor
# NOTE: /app/.heroku/src also exists, but is copied manually later.
ln
-s
$BUILD_DIR
/.heroku/venv /app/.heroku/venv
fi
fi
# Install Python.
# Install Python.
...
@@ -187,13 +186,20 @@ sub-env $BIN_DIR/steps/geo-libs
...
@@ -187,13 +186,20 @@ sub-env $BIN_DIR/steps/geo-libs
# GDAL support.
# GDAL support.
source
$BIN_DIR
/steps/gdal
source
$BIN_DIR
/steps/gdal
# rewrite any existing egg links to point to the build dir so pip does not fail with a mismatch error
find .heroku/python/lib/python
*
/site-packages/
-name
"*.egg-link"
-print0
| xargs
-r
-0
-n
1
sed
-i
-e
"s#/app/#
$(
pwd
)
/#"
find .heroku/python/lib/python
*
/site-packages/
-name
"*.pth"
-print0
| xargs
-r
-0
-n
1
sed
-i
-e
"s#/app/#/
$(
pwd
)
/#"
# Install dependencies with Pip.
# Install dependencies with Pip.
source
$BIN_DIR
/steps/pip-install
source
$BIN_DIR
/steps/pip-install
# rewrite build dir in egg links to /app so things are found at runtime
find .heroku/python/lib/python
*
/site-packages/
-name
"*.egg-link"
-print0
| xargs
-r
-0
-n
1
sed
-i
-e
"s#
$(
pwd
)
/#/app/#"
find .heroku/python/lib/python
*
/site-packages/
-name
"*.pth"
-print0
| xargs
-r
-0
-n
1
sed
-i
-e
"s#
$(
pwd
)
/#/app/#"
# Django collectstatic support.
# Django collectstatic support.
sub-env
$BIN_DIR
/steps/collectstatic
sub-env
$BIN_DIR
/steps/collectstatic
# Create .profile script for application runtime environment variables.
# Create .profile script for application runtime environment variables.
set-env PATH
'$HOME/.heroku/python/bin:$PATH'
set-env PATH
'$HOME/.heroku/python/bin:$PATH'
set-env PYTHONUNBUFFERED
true
set-env PYTHONUNBUFFERED
true
...
@@ -207,11 +213,6 @@ set-default-env PYTHONPATH /app/
...
@@ -207,11 +213,6 @@ set-default-env PYTHONPATH /app/
# Install sane-default script for $WEB_CONCURRENCY and $FORWARDED_ALLOW_IPS.
# Install sane-default script for $WEB_CONCURRENCY and $FORWARDED_ALLOW_IPS.
cp
$ROOT_DIR
/vendor/python.gunicorn.sh
$GUNICORN_PROFILE_PATH
cp
$ROOT_DIR
/vendor/python.gunicorn.sh
$GUNICORN_PROFILE_PATH
# Symlink the directory for -e pip installations
if
[[
$BUILD_DIR
!=
'/app'
]]
;
then
deep-cp /app/.heroku/src
$BUILD_DIR
/.heroku/src
ln
-s
/app/.heroku/src
$BUILD_DIR
/.heroku/src
fi
# Experimental post_compile hook.
# Experimental post_compile hook.
bpwatch start post_compile
bpwatch start post_compile
...
@@ -226,7 +227,6 @@ bpwatch start dump_cache
...
@@ -226,7 +227,6 @@ bpwatch start dump_cache
rm
-rf
$CACHE_DIR
/.heroku/python-stack
rm
-rf
$CACHE_DIR
/.heroku/python-stack
rm
-rf
$CACHE_DIR
/.heroku/vendor
rm
-rf
$CACHE_DIR
/.heroku/vendor
rm
-rf
$CACHE_DIR
/.heroku/venv
rm
-rf
$CACHE_DIR
/.heroku/venv
rm
-rf
$CACHE_DIR
/.heroku/src
mkdir
-p
$CACHE_DIR
/.heroku
mkdir
-p
$CACHE_DIR
/.heroku
cp
-R
.heroku/python
$CACHE_DIR
/.heroku/
cp
-R
.heroku/python
$CACHE_DIR
/.heroku/
...
@@ -234,7 +234,6 @@ bpwatch start dump_cache
...
@@ -234,7 +234,6 @@ bpwatch start dump_cache
cp
-R
.heroku/python-stack
$CACHE_DIR
/.heroku/ &> /dev/null
||
true
cp
-R
.heroku/python-stack
$CACHE_DIR
/.heroku/ &> /dev/null
||
true
cp
-R
.heroku/vendor
$CACHE_DIR
/.heroku/ &> /dev/null
||
true
cp
-R
.heroku/vendor
$CACHE_DIR
/.heroku/ &> /dev/null
||
true
cp
-R
.heroku/venv
$CACHE_DIR
/.heroku/ &> /dev/null
||
true
cp
-R
.heroku/venv
$CACHE_DIR
/.heroku/ &> /dev/null
||
true
cp
-R
.heroku/src
$CACHE_DIR
/.heroku/ &> /dev/null
||
true
bpwatch stop dump_cache
bpwatch stop dump_cache
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment