2012-03-08 13 views
18

ソースからPHPをビルドするシェフのレシピに取り組んでいます。しかし、レシピを変更してもう一度実行したいときは、時間がかかります(約20分)。汚れのないシェフのレシピをデバッグして再プロビジョニングする

私たちは使用して、その後私たちの変更を行っているやっている:

vagrant destroy 

続い:

vagrant up 

何とか私達はちょうど私たちは私たちの単一のレシピを再実行することができれば、それはいいだろう更新しようとしています。

誰かがこれを行う方法を知っていますか?または、どのように私たちのPHPレシピがインストール/実行されているかを迷惑メールプログラムが判断するのでしょうか?

+0

申し訳ありませんが、これは全く私には意味がありません。 – GordonM

+3

@GordonM私がどのように明確にできるかを示してください。 –

答えて

20

vagrant provisionこれを行う必要があります。シェフは、変更されたレシピのように、実行する必要があるものだけを実行するように注意しなければなりません。

+0

「乱用防止策」はレシピの変更を受け入れていないようです。なぜ歓迎されるのかについての考えはありません。 –

+0

レシピをインストールするかどうかを判断するためにチェックしていた各レシピのセクションを見つけるだけでした。この場合、それは単純な 'どのphp'でした –

5

あなたは使用することができます。

vagrant provision 

これはvagrant sshを行い、シェフをキックオフプロビジョニングステップを、再実行します。

シェフクライアントでシェフサーバーを使用している場合は、ローカル修正後にナイフを使用してサーバーにCookbookをアップロードする必要があります。その後、迷惑メールマシンのchef-clientが変更されたファイルをダウンロードします。

シェフソロを使用している場合は、VMとフォルダを共有できます。そのため、変更内容はVMにコピーする必要はなく、すぐに取得されます。

+0

しかし、それは元の状態に戻ってVMを取ることはありません? – kristianp

関連する問題