【发布时间】:2013-07-08 10:21:55
【问题描述】:
关于this问题的另一个问题。
有没有办法从我已经下载到磁盘的本地 repo 安装 puppet module install 工具?
【问题讨论】:
标签: puppet
关于this问题的另一个问题。
有没有办法从我已经下载到磁盘的本地 repo 安装 puppet module install 工具?
【问题讨论】:
标签: puppet
您可以使用Puppet Library 来托管您自己的私人 Puppet Forge。它支持从磁盘服务模块,以及代理远程伪造。
启动服务器,将其指向您下载的模块
puppet-library --module-dir /my/downloaded/modules --port 8888
将以下内容添加到 puppet.conf 以将其指向您的本地模块存储库:
[main]
module_repository=http://localhost:8080/
然后,当您运行puppet module install 时,将从本地存储库安装模块。如果您使用的是图书管理员-puppet,也可以将您的 Puppetfile 指向本地伪造。
【讨论】:
很遗憾,没有。
您可以阅读puppet module 面孔here 的手册页。虽然在安装模块时似乎可以选择指定私有伪造,但 Puppetlabs 的 Forge API 不是公共的,而且 Puppetlabs 本身不支持除 Forge 之外的任何公共或私有应用程序来构建私有存储库。
作为替代方案,您可以尝试librarian-puppet:https://github.com/rodjek/librarian-puppet。
它允许您在 Puppetfile 中指定您的模块依赖项,还允许将 Git 存储库指定为源(因此您也可以安装不在 Forge 中的模块)。
【讨论】:
librarian-puppet 作为解决方案。现在尝试在主 puppet 脚本之前将其作为 shell 脚本运行
这并不能直接回答问题,但您可以从本地文件安装 puppet 模块,而不是使用本地存储库。如果这是一次性的,则可以节省设置额外的东西。
puppet module install ~/puppetlabs-apt-2.0.1.tar.gz --ignore-dependencies --force
模块可以直接从 puppet forge 下载并保存到本地存储。
如果模块有你尚未安装的依赖项,则需要ignore-dependencies。
【讨论】:
托管您自己的 Puppet Forge 服务器似乎只有 3 个选项:
Puppet has published their API
注意:我与上述任何产品都没有关系
【讨论】: