2017-12-14 10 views
8

私は大規模なSymfonyプロジェクトをいくつか持ち、Symfony 4(Flex)にすべてをアップデートした後、予想通りSymfony Flexと--no-devを使用してプロダクション環境にデプロイ

Symfony operations: 2 recipes (72fad9713126cf1479bb25a53d64d744) 
    - Unconfiguring symfony/maker-bundle (>=1.0): From github.com/symfony/recipes:master 
    - Unconfiguring phpunit/phpunit (>=4.7): From github.com/symfony/recipes:master 

そして、これはsymfony.lockconfig/bundles.phpに変更になり、プラス任意の他、中に含まれていたものに応じて:私たちは、この(例えば)で終わる

composer install --no-dev

require-devcomposer.jsonに設定します。

これはまったく壊れていませんが、実際に展開されたものについて混乱を招く恐れがあります。

は、例えばその原料を導入するには実害がないので、私はちょうどrequireはなくrequire-devにすべてをかけることができ、または私が作曲コマンドの--no-dev一部を省略することができ、これにはさまざまな回避策があります。

しかし、本当に、ここで適切な練習は何ですか?ロックされたソフトウェアを配備するだけであれば、構成に変更を加えないようにFlexに指示する方法がないことは奇妙に思えます。これは機能要求ですか、ここで設定を少し忘れましたか?

+0

あなたは 'symfony.lock'ファイルをリポジトリにコミットしていますか?デプロイ時にこの問題を回避する必要があります。 – yceruto

+0

多分https://stackoverflow.com/q/47071211/4224384に関連しています – yceruto

+0

@ycerutoはい、 'symfony.lock'はバージョンコントロールの下にあります。実際には反対の問題です: '--no-dev'が指定されているので、Flexは' require-dev'のメンバーが削除されていると考えて、適切な 'manifest.json'に基づいてunconfigureのステップを実行しますレシピ。私の例では、それは 'phpunit.xml.dist'ファイルを削除し、Makerバンドルを' config/bundleles.php'から削除することを意味します。プロダクションデプロイメントでこの動作を防ぐ方法があるように思えます。 – futureal

答えて

関連する問題