在puppet中需要rbenv :: compile的语法

我有以下代码:

rbenv::compile { "1.9.3-p327": user => "vagrant", home => "/home/vagrant", } exec {"rbenv-global-1.9.3-p327": command => "rbenv global 1.9.3-p327", path => "/home/vagrant/.rbenv/bin", } 

我想添加一个要求“rbenv-global-1.9.3-p327”,因为它应该在rbenv :: compile之后执行,但我不知道正确的语法

如果你不知道正确的语法,为什么不查找它? 木偶文档非常好,特别是“学习木偶”部分。 您需要require关键字,并且您至less要阅读http://docs.puppetlabs.com/learning/index.html的所有内容。

这应该做到这一点:

 rbenv::compile { "1.9.3-p327": user => "vagrant", home => "/home/vagrant", } exec {"rbenv-global-1.9.3-p327": command => "rbenv global 1.9.3-p327", path => "/home/vagrant/.rbenv/bin", require => Rbenv::Compile['1.9.3-p327'] } 

或者,您可以使用链接箭头明确创build关系:

 rbenv::compile { "1.9.3-p327": user => "vagrant", home => "/home/vagrant", } exec {"rbenv-global-1.9.3-p327": command => "rbenv global 1.9.3-p327", path => "/home/vagrant/.rbenv/bin", } Rbenv::Compile['1.9.3-p327'] -> Exec['rbenv-global-1.9.3-p327']