Puppet:如何在自定义类型中要求其他资源

时间:2016-01-25 12:36:31

标签: ruby puppet custom-type

我正在为Puppet编写自定义类型,并使用以下代码将puppet url指定的模块文件复制到用户的主目录:

def generate
  if self[:source]
    uri = URI.parse(self[:source])
    path = File.join(Etc.getpwnam(self[:user])[:dir], File.basename(uri.path))
    file_opts = {}
    file_opts[:name] = File.join(Etc.getpwnam(self[:user])[:dir], File.basename(uri.path))
    file_opts[:ensure] = self[:ensure] == :absent ? :absent : :file
    file_opts[:source] = self[:source]
    file_opts[:owner] = self[:user]
    self[:source] = path

    Puppet::Type.type(:file).new(file_opts)
  end
end

到目前为止,情况正常。资源将添加到目录并在代理端创建。但我有一个问题......

如何指定在执行实际类型之前必须创建此附加文件资源? Unfortunatley,我找不到一个示例,说明如何指定对generate方法中定义的可选资源的依赖。

0 个答案:

没有答案