2017-07-07 44 views
1

我做了一些自定义模块。R10K puppetfile安装时没有清除自定义模块

这些自定义模块存储在我的R10K control-repo中。所以,如果我运行R10K deploy environment模块在/etc/puppetlabs/code/environments/MY_BRANCH/modules/和工作。

我现在想用从木偶伪造所以我加入他们几个模块来我Puppetfile,但是当我运行r10k puppetfile install modules目录中被完全清除出来,只有傀儡锐意模块离开。

这是最好的解决方案是什么?


前:

-modules/ 
    -custom_facts/ 
    -custom_files/ 

后:

-modules/ 
    -certregen/ 
    -inifile/ 

期望:

-modules/ 
    -custom_facts/ 
    -custom_files/ 
    -certregen/ 
    -inifile/ 

回答

2

有一个模块安装在Puppetfile一个不太知名的选项。这是local选项:https://github.com/puppetlabs/r10k/blob/master/doc/puppetfile.mkd#local

您可以在Puppetfile其设置为true避免清除存储在控制回购内部模块:

mod 'custom_facts', local: true 
mod 'custom_files', local: true 

修改Puppetfile像上面后,使用r10k deploy display确认令人满意的结果。

请注意,另一个选项是将本地模块移动到另一个模块目录。例如:

repo root dir 
|── Puppetfile 
|── local_modules 
| |── custom_facts 
| |── custom_files 

R10K会忽略(在你的控制回购的环境中部署而不是)在模块部署该目录模块将不会被清除。但是,您需要设置您的enviroment.conf以查找附加路径中的模块:https://docs.puppet.com/puppet/5.0/config_file_environment.html#modulepath