如何处理来自父类的puppet中的依赖项

时间:2014-12-11 19:36:25

标签: include parent puppet user-defined-types

主要问题:我在父类中有一些动态代码,在子类中我包含了额外的资源。我想在执行父级别之前将资源添加到子目录中。

你能给我一个好的依赖命令或提示如何以另一种方式写它。

示例代码在这里可能会有所帮助。

清单文件

class class1 {
    file {'C:/Temp/test1':
        content => 'test1',
    }
}

class parent {
    file {'C:/Temp/test2':
        content => template('parent/test2.erb')
    }
}

class parent::child {
    file {'C:/Temp/test3':
        content => 'test3'
    }
}


Class['class1']->Class['parent::child']

include class1
include parent::child

test2.erb

<% scope.catalog.vertices.each do |resource| -%>
  <%= resource -%>
<% end -%>

结果:test2

  Stage[main]  Class[Settings]  Class[main]  Class[Class1]  File[C:/Temp/test1]  Class[Parent]

我希望它也包括

File[C:/Temp/test3]

1 个答案:

答案 0 :(得分:0)

这不是答案,因为我没有得到你问题的所有信息。

首先,我简化您的代码,如果您认为有意义,我们可以从中开始讨论。

清单文件:

class class1 {
    file {'C:/Temp/test1':
        content => 'test1',
    }
}
->
class parent {
    file {'C:/Temp/test2':
        content => template('parent/test2.erb')
    }
}

include class1
include parent

test2.erb

<% scope.catalog.vertices.each do |resource| -%>
  <%= resource -%>
<% end -%>