0

application_ruby クックブックを使用して Rails アプリをデプロイしようとしています。いくつかの 1 回限りのセットアップ アクティビティを実行する必要があります (を使用してデータベースをシードするなどrake db:seed)。これらは、その後のchefの実行中に行うべきではありません。これらのタスクを定義する正しい方法は何ですか?

4

2 に答える 2

1
  1. after_party gemで試してみてください。このようにして、マイグレーションのような多くの rake タスク (どのタスクを言うか) を実行します。これは、2 回実行しないことを意味します。次に、この rake タスクの 1 つによって以前に実行された何かを変更したい場合は、新しいものを作成する必要があることに注意してください (移行など)。

  2. シードの目的で、seed_fuを試すことができます。制約テクニックの使用。これはシードには正しいと思いますが、seed_fu 構文があります。

  3. シードやデータを移行に入れる人もいます(私は好きではありません)。この質問/回答を見てください 。これは、移行を伴う最悪のマージ シードは良い考えではないと私は信じています。シードの変更は新しい移行を意味し、環境によるシードの変更はほとんど不可能です。

于 2014-04-01T13:01:21.790 に答える