SaltStack Git
Git 是一个开源分布式版本控制系统。它可用于跟踪任何文件中的更改。 Salt 使用 Git 文件服务器从 Git 存储库发送文件。您可以将 Git 配置为
fileserver_backend 列表选项,如果您需要配置一个或多个存储库,可以使用
gitfs_remotes 选项来实现。
本章介绍了如何安装和配置 Git 文件服务器。在开始安装之前,您必须具备以下先决条件。
使用 Git 的 Salt Server 先决条件
salt 服务器使用 Git 作为文件服务器的最低要求如下-
pygit2
Dulwich
Pygit2 和 Dulwich 使用主配置文件中的
gitfs_provider 参数进行配置。如果
gitfs_provider 未在主文件中配置,则 Salt 将更喜欢 pygit2,如果有合适的版本,然后是
GitPython 和
Dulwich。
安装pygit2
以下命令用于在基于 Fedora 和 Ubuntu 的系统中安装 pygit2-
基于 Fedora 的系统
yum install python-pygit2
基于 Ubuntu 的系统
apt-get install python-pygit2
这里pygit2支持的最低版本是0.20.3、
安装 GitPYTHON
GitPython 可以使用
yum/apt 命令 轻松安装在 master 上,如下所示。
基于 Fedora 的系统
基于 Ubuntu 的系统
apt-get install python-git
安装德威
可以使用 yum 命令轻松地将 Dulwich 安装到主服务器上。
基于 Fedora 的系统
yum install python-dulwich
基于 Ubuntu 的系统
apt-get install python-dulwich
现在,我们已经安装了 Git 文件服务器的所有依赖项。现在让我们使用
master config 文件中的
fileserver_backend 部分来配置这个 Git 文件服务器。
后端配置
为了使用 Git 文件服务器,您需要在主配置文件的 fileserver_backend 列表中添加 Git。描述如下-
让我们进一步了解如何在远程配置中配置 Git 文件服务器。
gitfs_remotes 配置
您可以为主文件中的 gitfs_remotes 配置指定任何一个或所有 URL,例如 git://、https://、file://或 ssh://。这用于搜索请求的文件。
简单的 https URL 规范定义如下。
gitfs_remotes:
-https://github.com
ssh 配置如下所示。
gitfs_remotes:
-git@github.com:user1/sample.git
-ssh://user@domain.tld/path/to/sample.git
现在,我们已经使用
fileserver_backend 和
gitfs_remotes 两个选项配置了 Git 文件服务器。
重启主控
在 master 文件中进行所有更改后,现在重新启动 master 以加载 Git 文件服务器中的所有配置。
多遥控器配置
以下命令用于主文件中
gitfs_remotes的多重配置。
gitfs_remotes:
-git://github.com/sample/sample1.git
-https://github.com/sample/sample2.git
-file:///root/user/sample
此处,存储库
sample1.git、sample2.git、 和
sample.doc 可能包含以下文件。
sample1.git:
top.sls
sample2.git
edit/vimrc
sample.doc
edit/vimrc