2017-05-28 12 views
0

私はBitBucketからHerokuにパイプラインを使ってすべてをプッシュしています。私がcollectstaticに電話をかけたときに、すべてのsassファイル(nodejsとgulpを使用)をコンパイルするdjango-gulpを使用しているので、問題は静的ファイルです。Dokujoとノードビルドを持つHeroku

最初にHerokuにコードをプッシュして実行しますが、他のすべてのスクリプト(pip install、npm install ...など)は、HerokuではなくBitBucket側で実行されます。私のProfileはこれを内部に持っています:

web: gunicorn magistrska_web.wsgi --log-file - 

ウェブサイトは実行中ですが、静的ファイルはありません。

常にDISABLE_COLLECTSTATIC=1で実行した場合、それ以外の場合は私は私が行う必要があるだろう何

remote: -----> $ python manage.py collectstatic --noinput   
remote:  /bin/sh: 1: gulp: not found 

次取得collectstatic前に、最初に実行npm installにHerokuのためであるか、それは動作しませんが、私は苦労していますこれに関するドキュメンテーションを見つける。

heroku local webは、ローカルではcollectstaticの前に実行されたため、問題なく動作します。


bitbucket-pipelines.yml設定:

image: nikolaik/python-nodejs 

pipelines: 
    default: 
    - step: 
     script: 
      - git push https://heroku:[email protected]/$HEROKU_APP_NAME.git HEAD 
      - pip install -r requirements.txt 
      - npm install 
      - npm install -g gulp 
      - python manage.py collectstatic --noinput 

答えて

0

ソリューションは、あまりにも簡単でした!

私は別のnodejs buildpackをHerokuに追加する必要がありました。以下の例

enter image description here

関連する問題