依赖循环使用apt源

问题描述:

我试图安装木偶模块在https://github.com/dwerder/puppet-mongodb依赖循环使用apt源

一个为它工作的要求是要有MongoDB的仓库设置。因为我想将它部署在Debian我试着用下面的类添加源:

class mongodb::apt::repo { 
    include apt 

    apt::source { '10gen': 
    location => 'http://downloads-distro.mongodb.org/repo/debian-sysvinit', 
    release  => 'dist', 
    repos  => '10gen', 
    key   => '7F0CEB10', 
    key_server => 'keyserver.ubuntu.com', 
    include_src => false 
    } 
} 

然而,在尝试安装模块(测试节点上)我得到以下的输出:

[email protected]:/etc/puppet/modules# puppet agent --test 
info: Caching catalog for debian.lan 
info: Applying configuration version '1353946258' 
err: Could not apply complete catalog: Found 1 dependency cycle: 
(Exec[apt_update] => Class[Apt::Update] => Anchor[apt::source::10gen] => Anchor[apt::source::10gen] => Apt::Source[10gen] => Class[Mongodb::Apt::Repo] => Package[mongodb-10gen] => Anchor[mongodb::install::end] => Anchor[mongodb::install::end] => File[10gen.list] => Apt::Source[10gen]) 
Try the '--graph' option and opening the resulting '.dot' file in OmniGraffle or GraphViz 

通知:在0.06秒

成品目录运行的类包含在模块的安装类在https://github.com/dwerder/puppet-mongodb/blob/master/manifests/install.pp

我不是曲确定为什么这个依赖周期发生,任何想法?

+1

你有没有想过这个?我有类似的问题。 – 2013-04-30 17:20:58

你最后的改变是什么(这可能是你添加周期的那一刻)。

尝试建议来生成图。将生成的点文件作为要点发布,以便我们可以进一步调查。请参阅Debugging cycle or missing dependency

请注意,某些依赖项是显式的(require, - >)或隐式的(资源提供者通过它自己添加依赖项)...查看点文件应该有所帮助。