我使用木偶来维护越来越多的debian机器。 这些将从初始化开始维护。 这意味着一步将设置apt'sources.list'文件,然后更新它。
还有其他模块依赖于这个列表是最新的,如果apt-get update没有被调用,将会失败。 我想知道的是,我应该引入某种sorting过程(使用阶段或类似)来确保在尝试安装应用程序之前更新包列表,或者假设在第一次运行时可能会失败,但在后续运行一旦清单更新?
傀儡的精神似乎宣告了一个“最后的状态”,而不是一个过程。 这使我相信,让错误发生可能是要走的路。
您可以使用refreshonly => true的exec资源, refreshonly => true在sources.list文件更改时得到通知。 并且将包含文件pipe理资源和exec资源的类作为需要它们的package资源的需求。
我build议以更简单的方式来处理这个问题的方法是通过Puppet Labs的apt模块中的apt::source资源types来pipe理源apt::source ,Puppet Labs也处理更新。