Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
H
heroku-buildpack-python
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Python-Dev
heroku-buildpack-python
Commits
359a3b0d
Commit
359a3b0d
authored
Feb 05, 2016
by
Kenneth Reitz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
collectstatic improvements.
parent
d46e0efc
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
27 additions
and
3 deletions
+27
-3
collectstatic
bin/steps/collectstatic
+27
-3
No files found.
bin/steps/collectstatic
View file @
359a3b0d
#!/usr/bin/env bash
# Django Collectstatic runner. If you have Django installed, collectstatic will
# automatically be executed as part of the build process. If collectstatic
# fails, your build fails.
# This functionality will only activate if Django is in requirements.txt.
# Runtime arguments:
# - $DISABLE_COLLECTSTATIC: disables this functionality.
# - $DEBUG_COLLECTSTATIC: upon failure, print out environment variables.
source
$BIN_DIR
/utils
# Location of 'manage.py', if it exists.
MANAGE_FILE
=
$(
find
.
-maxdepth
3
-type
f
-name
'manage.py'
-printf
'%d\t%P\n'
|
sort
-nk1
|
cut
-f2
|
head
-1
)
MANAGE_FILE
=
${
MANAGE_FILE
:-
fakepath
}
# Legacy file-based support for $DISABLE_COLLECTSTATIC
[
-f
.heroku/collectstatic_disabled
]
&&
DISABLE_COLLECTSTATIC
=
1
# Ensure that Django is explicitily specified in requirments.txt
pip-grep
-s
requirements.txt django Django
&&
DJANGO_INSTALLED
=
1
bpwatch start collectstatic
bpwatch start collectstatic
# metrics collection
if
[
!
"
$DISABLE_COLLECTSTATIC
"
]
&&
[
-f
"
$MANAGE_FILE
"
]
&&
[
"
$DJANGO_INSTALLED
"
]
;
then
set
+e
echo
"-----> Preparing static assets with 'collectstatic'."
echo
" Running collectstatic..."
# Run collectstatic, cleanup some of the noisy output.
python
$MANAGE_FILE
collectstatic
--noinput
2>&1 |
sed
'/^Copying/d;/^$/d;/^ /d'
| indent
# Display a warning if collectstatic failed.
...
...
@@ -23,6 +37,16 @@ if [ ! "$DISABLE_COLLECTSTATIC" ] && [ -f "$MANAGE_FILE" ] && [ "$DJANGO_INSTALL
echo
" ! Error while runnning '
$
python
$MANAGE_FILE
collectstatic --noinput'."
echo
" See traceback above for more details."
echo
" More info: http://devcenter.heroku.com/articles/django-assets"
# Additionally, dump out the environment, if debug mode is on.
if
[
"
$DEBUG_COLLECTSTATIC
"
]
;
then
echo
echo
"****** Collectstatic environment variables:"
echo
env
fi
# Abort the build.
exit
1
}
...
...
@@ -30,4 +54,4 @@ if [ ! "$DISABLE_COLLECTSTATIC" ] && [ -f "$MANAGE_FILE" ] && [ "$DJANGO_INSTALL
echo
fi
bpwatch stop collectstatic
bpwatch stop collectstatic
# metrics collection
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