2012-03-08 98 views
18

我们正在从源头上构建PHP的厨师食谱。但是,每次我们改变我们的配方,我们想再次运行它需要很长时间(大约20分钟)。调试厨师食谱没有流浪摧毁和重新编制

我们一直在做的是使我们的变化,然后使用:

vagrant destroy 

依次为:

vagrant up 

这将是很好,如果在某种程度上我们可以只重新运行我们的单配方我们试图更新。

任何人都知道我们怎么能做到这一点?或者流浪者如何确定我们的php配方已经安装/执行?

+0

抱歉,这是没有意义的我任何责任。 – GordonM 2012-03-08 22:26:10

+3

@GordonM请指出我可以澄清。 – 2012-03-12 14:04:06

回答

20

vagrant provision应该为你做这个。厨师应该只负责运行需要运行的东西......就像改变食谱一样。

+0

'vagrant provision'似乎并没有改变配方。任何想法为什么会受到欢迎。 – 2012-03-12 14:03:07

+0

我只需在每个配方中找到它正在检查的部分,以确定是否应该安装配方。在这种情况下,这是一个简单的'哪个php' – 2012-03-19 18:29:20

5

您可以使用:

vagrant provision 

这将重新运行准备步骤,这确实vagrant ssh并揭开序幕厨师。

如果您正在厨师服务器上使用厨师服务器,您需要在进行本地修改之后,使用小刀将食谱图上传到服务器。然后,流浪机上的厨师客户端将下载更改后的文件。

如果您使用Chef Solo,您可以与VM共享文件夹,因此所做的更改将立即被选中,而不必将其复制到VM。

+0

但是这并不需要vm回到它的原始状态吗? – kristianp 2014-04-07 03:22:11