关于这个问题,还有一个相关的问题。
puppet module install
工具是否有一种方式可以从本地已经下载到磁盘的仓库中安装?
启动服务器,将其指向已下载的模块即可。
puppet-library --module-dir /my/downloaded/modules --port 8888
puppet.conf
中,以指向您的本地模块库:[main]
module_repository=http://localhost:8080/
puppet module install
命令时,模块将从本地资源库安装。如果你使用的是 librarian-puppet,也可以将 Puppetfile
指向本地 forge。puppet module
面的手册页面这里。虽然在安装模块时似乎有指定私有铸造厂的选项,但Puppetlabs的Forge API不是公开的,并且Puppetlabs本身不支持除其Forge之外的任何公共或私有应用程序来构建私有存储库。librarian-puppet
: https://github.com/rodjek/librarian-puppet。它允许您在Puppetfile
中指定模块依赖项,还允许指定Git存储库作为源(因此您也可以安装不在Forge中的模块)。puppet module install ~/puppetlabs-apt-2.0.1.tar.gz --ignore-dependencies --force
这些模块可以直接从 Puppet Forge 下载并保存到本地存储。
如果模块有未安装的依赖项,则需要使用 ignore-dependencies 选项。
在托管自己的puppet forge服务器方面,似乎只有3个选择:
注意:我与以上产品无关。
librarian-puppet
作为解决方案。现在正在尝试在主要的puppet脚本之前将其作为shell脚本运行。 - alonisser