2017-07-03 3 views
1

Deisのコンパイル後のフックは、Herokuとは機能が異なるようです。私は単純に含むビン/ポスト・コンパイルファイル追加することができHerokuの上ビルドパックのデプロイメントを使用する場合、Deisで自動的にDjangoのマイグレーションを実行しますか?

:これは私のトレースバック

Traceback (most recent call last):   
    File "manage.py", line 8, in <module>   
     from django.core.management import execute_from_command_line   
No module named django.core.management  

を与えるDEISで

#!/usr/bin/env bash 

python manage.py migrate --noinput 

はbuildpacksを使用してDEIS上ジャンゴを実行している誰ですと持っていますこれの実例?

答えて

1

私は最終的に2つの解決策を見つけました。

単純な答えは、単にPythonに完全なパスを提供することです。私はあなたがある場合は、最も可能性が高い場合は、あなたの設定変数のいずれかにアクセスする必要がある場合は動作しませんdeis/example-python-django

#!/usr/bin/env bash 

/app/.heroku/python/bin/python manage.py migrate --noinput 

にこのソリューションをビン/ポストコンパイルしたファイルを追加することで、これをテストしてみました12 Factorアプリの方法論に従っています。

残念ながら、deisは、Herokuがやっているのと全く同じ方法でコンパイル後のフックを実行しないので、最初に環境変数をエクスポートする必要があります。 のsub-env機能をガイドとして使用して、私はこれを思いつきました...

関連する問題