14.3. 使用存储库源


您可以使用现有存储库或本地目录来将模板与 Satellite 服务器同步。

14.3.1. 使用现有存储库同步模板

使用这个流程在 Satellite 服务器和现有存储库之间同步模板。

流程

  1. 如果要使用 HTTPS 连接到存储库,并在 Git 服务器上使用自签名证书颁发机构(CA):

    1. /usr/share/foreman/ 目录下创建一个新目录,以存储证书的 Git 配置:

      # mkdir --parents /usr/share/foreman/.config/git
    2. 在新目录中创建一个名为 config 的文件:

      # touch /usr/share/foreman/.config/git/config
    3. 允许 foreman 用户访问 .config 目录:

      # chown --recursive foreman /usr/share/foreman/.config
    4. 使用您自签名 CA 证书的路径为 foreman 用户更新 Git 全局配置:

      # sudo --user foreman git config --global http.sslCAPath Path_To_CA_Certificate
  2. 如果要使用 SSH 连接到存储库:

    1. 如果还没有 SSH 密钥对,请创建一个 SSH 密钥对。不要指定密码短语。

      # sudo --user foreman ssh-keygen
    2. 使用 Satellite 的公钥配置您的版本控制服务器,该密钥位于 /usr/share/foreman/.ssh/id_rsa.pub
    3. foreman 用户身份接受 Git SSH 主机密钥:

      # sudo --user foreman ssh git.example.com
  3. 在 TemplateSync 选项卡中配置 TemplateSync 插件设置。

    1. 更改 Branch 设置,使其与 Git 服务器上的目标分支匹配。
    2. 更改 Repo 设置以匹配 Git 存储库。例如,对于位于 git@git.example.com/templates.git 的存储库,将设置设置为 git@git.example.com/templates.git

14.3.2. 将模板与本地目录同步

如果您在本地目录中配置了版本控制系统,则与本地目录同步模板很有用。这样,您可以编辑模板并跟踪目录中编辑的历史记录。您也可以在编辑模板后将更改同步到 Satellite 服务器。

先决条件

  • 每个模板必须包含模板所属的位置和组织。这适用于所有模板类型。在导入模板前,请确保将以下部分添加到模板中:

    <%#
    kind: provision
    name: My_Provisioning_Template
    oses:
    - My_first_OS
    - My_second_OS
    locations:
    - My_first_Location
    - My_second_Location
    organizations:
    - My_first_Organization
    - My_second_Organization
    %>

流程

  1. /var/lib/foreman 中,创建一个用于存储模板的目录:

    # mkdir /var/lib/foreman/My_Templates_Dir
    注意

    您可以将模板放在 /var/lib/foreman 以外的自定义目录中,但必须确保 Foreman 服务可以读取其内容。目录必须具有正确的文件权限和 foreman_lib_t SELinux 标签。

  2. 将新 templates 目录的所有者改为 foreman 用户:

    # chown foreman /var/lib/foreman/My_Templates_Dir
  3. 更改 TemplateSync 选项卡上的 Repo 设置,以匹配 /var/lib/foreman/My_Templates_Dir/ 目录。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.