16.4. 从 Git 存储库同步 Puppet 模块
Red Hat Satellite 6 包含一个称为 pulp-puppet-module-builder
的实用程序,您可以在其他系统上安装 pulp-puppet-tools
RPM。此工具会签出 Git 存储库,构建所有模块,并以 Satellite 6 可以同步的结构发布它们。种常见的方法是在卫星服务器本身上运行 实用程序,发布到本地目录,并对该目录进行同步。例如:
# mkdir /modules # chmod 755 /modules # pulp-puppet-module-builder \ --output-dir=/modules \ --url=git@mygitserver.com:mymodules.git \ --branch=develop
本例从 git@mygitserver.com:mymodules.git
检查 Git 存储库的 develop
分支,并将其发布到 /modules
。添加此目录作为 Satellite 服务器上新存储库的 URL (file:///modules
)。
在远程 HTTP 服务器上发布 Puppet 模块
相同的进程也适用于在远程 HTTP 服务器上发布模块。例如,如果您使用 webserver.example.com
作为标准 Web 主机来发布 Puppet 模块。
# mkdir /var/www/html/modules/ # chmod 755 /var/www/html/modules/ # pulp-puppet-module-builder \ --output-dir=/var/www/html/modules/ \ --url=git@mygitserver.com:mymodules.git \ --branch=develop
在 Satellite 服务器上,将存储库的 URL 设置为 http://webserver.example.com/modules/
。
使用 Web UI 从 Git 存储库同步 Puppet 模块
使用以下步骤从 Git 存储库同步 Puppet 模块。
流程
- 创建自定义产品,再单击创建存储库。
- 从 Type 列表中,选择 puppet。
-
在 URL 字段中,输入外部 Git 存储库的 URL,以用作源,格式为
file:///modules
。
对于 CLI 用户
创建 Puppet Forge 存储库:
# hammer repository create \ --name "Modules from Git" \ --content-type "puppet" \ --product "MyProduct" \ --organization "My_Organization" \ --url file:///modules