2017-11-15 6 views
0

私はシンプルなフラスコのアプリを持っています。ここで私は自分の依存関係を管理するためにvirtualenvを使います。しかし、私は自分の依存関係を分離したいと思います。テストのために私はFlask-Testingを使用しますが、これは私の運用環境には含めたくない依存関係です。virtualenvと開発とプロダクションの依存関係を分離する

私の依存関係を分けることができるので、私は開発と本番用に別々の依存関係がありますか?

+0

2つの異なる 'requirements.txt'ファイルを使用しますか? –

+0

環境ごとに異なるファイルを作成できます。 [この回答を確認](https://stackoverflow.com/a/20720019/5741172) –

答えて

1

異なる環境に複数のrequirements.txtファイルを含めることができます。例えば。 requirements_dev.txt,requirements_prod.txt ...

これらのファイルには、固定された(バージョンもあります)パッケージがあります。パッケージを手動でピップインストールしてからpip freezeの出力をファイルにパイプすることで生成できます。

+0

もし私がそうすれば、ローカルマシン上のさまざまな環境をどうやって使うことができますか?私は別のrequirement.txtファイルに基づいて環境を切り替えることはできますか?どのrequirements.txtファイルにも入っているすべての単一のパッケージをインストールしていますが、テスト環境にパッケージがない場合は、サーバー上でテストを実行した場合にしかわかりません。 – handris

+0

@handris一般的に、要件 - * .txtファイルには、他の場所では必要ない特別なパッケージしかありません。たとえば、requirements-dev.txtにはデバッガなどがあり、requirements_test.txtにはテストライブラリが含まれています。ですから、それらをすべてインストールすれば問題にはならないはずです(つまり、base/mainファイルは常にインストールされますが、test/dev/prod環境に依存します)。それ以外の場合は、 'pip install -r requirement_file.txt'を使って、異なる仮想ファイルに異なる要件ファイルをインストールすることもできます。 – tayfun

関連する問題