application_ruby クックブックを使用して Rails アプリをデプロイしようとしています。いくつかの 1 回限りのセットアップ アクティビティを実行する必要があります (を使用してデータベースをシードするなどrake db:seed
)。これらは、その後のchefの実行中に行うべきではありません。これらのタスクを定義する正しい方法は何ですか?
2 に答える
1
after_party gemで試してみてください。このようにして、マイグレーションのような多くの rake タスク (どのタスクを言うか) を実行します。これは、2 回実行しないことを意味します。次に、この rake タスクの 1 つによって以前に実行された何かを変更したい場合は、新しいものを作成する必要があることに注意してください (移行など)。
シードの目的で、seed_fuを試すことができます。制約テクニックの使用。これはシードには正しいと思いますが、seed_fu 構文があります。
シードやデータを移行に入れる人もいます(私は好きではありません)。この質問/回答を見てください 。これは、移行を伴う最悪のマージ シードは良い考えではないと私は信じています。シードの変更は新しい移行を意味し、環境によるシードの変更はほとんど不可能です。
于 2014-04-01T13:01:21.790 に答える