heroku / heroku-airflow

Demo of Author data workflows with Airflow on Heroku (not maintained)
Other
23 stars 6 forks source link

Error on deploy #5

Closed slepkin closed 8 years ago

slepkin commented 8 years ago

When I deploy this repo, with no changes, to a Heroku app, I get a build failure (logs below). This is surprising, since it was meant to be deployed in exactly this way.

-----> Python app detected
-----> Installing python-2.7.9
     $ pip install -r requirements.txt
       Collecting sasl (from -r requirements.txt (line 1))
         Downloading sasl-0.2.1.tar.gz
       Collecting psycopg2 (from -r requirements.txt (line 2))
         Downloading psycopg2-2.6.1.tar.gz (371kB)
       Obtaining airflow[postgres,crypto] from git+git://github.com/airbnb/airflow@ba35124d75a3ad23266c324d729e80d5267e161f#egg=airflow[postgres,crypto] (from -r requirements.txt (line 3))
         Cloning git://github.com/airbnb/airflow (to ba35124d75a3ad23266c324d729e80d5267e161f) to ./.heroku/src/airflow
         Could not find a tag or branch 'ba35124d75a3ad23266c324d729e80d5267e161f', assuming commit.
       Collecting rauth (from -r requirements.txt (line 4))
         Downloading rauth-0.7.2.tar.gz
       Collecting flask-sslify (from -r requirements.txt (line 5))
         Downloading Flask-SSLify-0.1.5.tar.gz
       Collecting six (from sasl->-r requirements.txt (line 1))
         Downloading six-1.10.0-py2.py3-none-any.whl
       Collecting alembic<0.9,>=0.8.0 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading alembic-0.8.6.tar.gz (961kB)
       Collecting celery<4.0,>=3.1.17 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading celery-3.1.23-py2.py3-none-any.whl (520kB)
       Collecting chartkick<0.5,>=0.4.2 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading chartkick-0.4.2.tar.gz
       Collecting dill<0.3,>=0.2.2 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading dill-0.2.5.tgz (60kB)
       Collecting flask<0.11,>=0.10.1 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Flask-0.10.1.tar.gz (544kB)
       Collecting flask-admin==1.2.0 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Flask-Admin-1.2.0.tar.gz (790kB)
       Collecting flask-cache<0.14,>=0.13.1 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Flask-Cache-0.13.1.tar.gz (45kB)
       Collecting flask-login<0.3,>=0.2.11 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Flask-Login-0.2.11.tar.gz
       Collecting flower<0.8,>=0.7.3 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading flower-0.7.3.tar.gz (2.5MB)
       Collecting future<0.16,>=0.15.0 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading future-0.15.2.tar.gz (1.6MB)
       Collecting gunicorn<20.0,>=19.3.0 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading gunicorn-19.4.5-py2.py3-none-any.whl (112kB)
       Collecting jinja2<3.0,>=2.7.3 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Jinja2-2.8-py2.py3-none-any.whl (263kB)
       Collecting markdown<3.0,>=2.5.2 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Markdown-2.6.6.zip (412kB)
       Collecting pandas<1.0.0,>=0.15.2 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading pandas-0.18.0.tar.gz (7.1MB)
       Collecting pygments<3.0,>=2.0.1 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Pygments-2.1.3-py2.py3-none-any.whl (755kB)
       Collecting python-dateutil<3,>=2.3 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading python_dateutil-2.5.3-py2.py3-none-any.whl (201kB)
       Collecting requests<3,>=2.5.1 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading requests-2.9.1-py2.py3-none-any.whl (501kB)
       Collecting setproctitle<2,>=1.1.8 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading setproctitle-1.1.9.tar.gz
       Collecting sqlalchemy<0.10,>=0.9.8 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading SQLAlchemy-0.9.10.tar.gz (4.3MB)
       Collecting statsd<4.0,>=3.0.1 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading statsd-3.2.1-py2.py3-none-any.whl
       Collecting thrift<0.10,>=0.9.2 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading thrift-0.9.3.tar.gz
       Collecting cryptography>=0.9.3 (from airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading cryptography-1.3.1.tar.gz (383kB)
       Collecting Mako (from alembic<0.9,>=0.8.0->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Mako-1.0.4.tar.gz (574kB)
       Collecting python-editor>=0.3 (from alembic<0.9,>=0.8.0->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading python-editor-1.0.tar.gz
       Collecting kombu<3.1,>=3.0.34 (from celery<4.0,>=3.1.17->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading kombu-3.0.35-py2.py3-none-any.whl (240kB)
       Collecting pytz>dev (from celery<4.0,>=3.1.17->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading pytz-2016.4-py2.py3-none-any.whl (480kB)
       Collecting billiard<3.4,>=3.3.0.23 (from celery<4.0,>=3.1.17->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading billiard-3.3.0.23.tar.gz (151kB)
       Collecting Werkzeug>=0.7 (from flask<0.11,>=0.10.1->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading Werkzeug-0.11.9-py2.py3-none-any.whl (306kB)
       Collecting itsdangerous>=0.21 (from flask<0.11,>=0.10.1->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading itsdangerous-0.24.tar.gz (46kB)
       Collecting wtforms (from flask-admin==1.2.0->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading WTForms-2.1.zip (553kB)
       Collecting tornado>=3.2.0 (from flower<0.8,>=0.7.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading tornado-4.3.tar.gz (450kB)
       Collecting MarkupSafe (from jinja2<3.0,>=2.7.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading MarkupSafe-0.23.tar.gz
       Collecting numpy>=1.7.0 (from pandas<1.0.0,>=0.15.2->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading numpy-1.11.0-cp27-cp27m-manylinux1_x86_64.whl (15.3MB)
       Collecting idna>=2.0 (from cryptography>=0.9.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading idna-2.1-py2.py3-none-any.whl (54kB)
       Collecting pyasn1>=0.1.8 (from cryptography>=0.9.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading pyasn1-0.1.9-py2.py3-none-any.whl
       Collecting enum34 (from cryptography>=0.9.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading enum34-1.1.4-py2.py3-none-any.whl (61kB)
       Collecting ipaddress (from cryptography>=0.9.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading ipaddress-1.0.16-py27-none-any.whl
       Collecting cffi>=1.4.1 (from cryptography>=0.9.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading cffi-1.6.0.tar.gz (397kB)
       Collecting anyjson>=0.3.3 (from kombu<3.1,>=3.0.34->celery<4.0,>=3.1.17->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading anyjson-0.3.3.tar.gz
       Collecting amqp<2.0,>=1.4.9 (from kombu<3.1,>=3.0.34->celery<4.0,>=3.1.17->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading amqp-1.4.9-py2.py3-none-any.whl (51kB)
       Collecting backports.ssl-match-hostname (from tornado>=3.2.0->flower<0.8,>=0.7.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading backports.ssl_match_hostname-3.5.0.1.tar.gz
       Collecting singledispatch (from tornado>=3.2.0->flower<0.8,>=0.7.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading singledispatch-3.4.0.3-py2.py3-none-any.whl
       Collecting certifi (from tornado>=3.2.0->flower<0.8,>=0.7.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading certifi-2016.2.28-py2.py3-none-any.whl (366kB)
       Collecting backports-abc>=0.4 (from tornado>=3.2.0->flower<0.8,>=0.7.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading backports_abc-0.4-py2.py3-none-any.whl
       Collecting pycparser (from cffi>=1.4.1->cryptography>=0.9.3->airflow[postgres,crypto]->-r requirements.txt (line 3))
         Downloading pycparser-2.14.tar.gz (223kB)
       Installing collected packages: six, sasl, psycopg2, sqlalchemy, MarkupSafe, Mako, python-editor, alembic, anyjson, amqp, kombu, pytz, billiard, celery, chartkick, dill, Werkzeug, jinja2, itsdangerous, flask, wtforms, flask-admin, flask-cache, flask-login, backports.ssl-match-hostname, singledispatch, certifi, backports-abc, tornado, flower, future, gunicorn, markdown, python-dateutil, numpy, pandas, pygments, requests, setproctitle, statsd, thrift, idna, pyasn1, enum34, ipaddress, pycparser, cffi, cryptography, airflow, rauth, flask-sslify
         Running setup.py install for sasl: started
           Running setup.py install for sasl: finished with status 'error'
           Complete output from command /app/.heroku/python/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-1eO0Xp/sasl/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-eDjHFH-record/install-record.txt --single-version-externally-managed --compile:
           running install
           running build
           running build_py
           creating build
           creating build/lib.linux-x86_64-2.7
           creating build/lib.linux-x86_64-2.7/sasl
           copying sasl/__init__.py -> build/lib.linux-x86_64-2.7/sasl
           running egg_info
           writing requirements to sasl.egg-info/requires.txt
           writing sasl.egg-info/PKG-INFO
           writing top-level names to sasl.egg-info/top_level.txt
           writing dependency_links to sasl.egg-info/dependency_links.txt
           warning: manifest_maker: standard file '-c' not found

           reading manifest file 'sasl.egg-info/SOURCES.txt'
           reading manifest template 'MANIFEST.in'
           writing manifest file 'sasl.egg-info/SOURCES.txt'
           copying sasl/saslwrapper.cpp -> build/lib.linux-x86_64-2.7/sasl
           copying sasl/saslwrapper.h -> build/lib.linux-x86_64-2.7/sasl
           copying sasl/saslwrapper.pyx -> build/lib.linux-x86_64-2.7/sasl
           running build_ext
           building 'sasl.saslwrapper' extension
           creating build/temp.linux-x86_64-2.7
           creating build/temp.linux-x86_64-2.7/sasl
           gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -Isasl -I/app/.heroku/python/include/python2.7 -c sasl/saslwrapper.cpp -o build/temp.linux-x86_64-2.7/sasl/saslwrapper.o
           cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++ [enabled by default]
           In file included from sasl/saslwrapper.cpp:254:0:
           sasl/saslwrapper.h:22:23: fatal error: sasl/sasl.h: No such file or directory
            #include <sasl/sasl.h>
                                  ^
           compilation terminated.
           error: command 'gcc' failed with exit status 1

           ----------------------------------------
       Command "/app/.heroku/python/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-1eO0Xp/sasl/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-eDjHFH-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-1eO0Xp/sasl/
 !     Push rejected, failed to compile Python app
slepkin commented 8 years ago

This is caused when you try to deploy the app the typical way (directly from a GitHub repo) instead of via heroku docker:release.