У меня такой код:
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, но я не знаю правильный синтаксис
Если вы не знаете правильный синтаксис, почему бы вам не поискать его? Документация Puppet превосходна, особенно разделы «Learning Puppet». Вы хотите require
ключевое слово, и вы хотите прочитать по крайней мере все 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']
}
В качестве альтернативы вы можете использовать стрелки цепочки для явного создания отношения:
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']