在SaltStack中启用gitfs

新版本的SaltStack有一个很是好的特性,可使用git做为文件服务的源,这样一来,在开发环境中能够很方便的把修改同步到测试环境,同时在生产环境中也能够对sls这些比较重要的配置文件进行方便自然的版本管理git

参照官方教程,在master配置文件中配置了github

fileserver_backend:服务器

  - gitssh

还有gitlab

gitfs_remotes:测试

  - https://github.com/saltstack-formulas/salt-formula.gitfetch

若是想使用git源中的某个子目录做为file_backend目录的话还须要配置这个:spa

gitfs_root: backend_subdir日志

固然,git仓库的地址改为了公司内部搭的内部gitlab
orm

重启salt-masster后发现没生效

检查/var/log/salt/master日志提示以下:

[salt.loaded.int.fileserver.gitfs         ][ERROR   ] Git fileserver backend is enabled in configuration but could not be loaded, is GitPython installed?

既然找不到GitPython,由于服务器能连公网因此果断用yum安装

yum install GitPython

我这会儿用的是 2014.1.4 版本的 salt-stack, 官方文档中提到最好用 0.3.2.RC1,我用yum安装提示的版本是 GitPython-0.3.2-0.6.RC1.el6.noarch.rpm 嗯...EPEL万岁..

高兴的重启salt-master....仍是不行.....

再看日志,提示信息变了

[salt.loaded.int.fileserver.gitfs            ][WARNING ] GitPython exception caught while fetching: len([]) != len(['Host key verification failed.', ''])

忽然想起以前刚用git的时候,貌似有过相似的问题.由于ssh要先创建信任关系,因而尝试下面的命令

ssh -T git@githost.com

这里的git仓库地址固然也要用你本身的仓库地址

而后根据提示输入个yes

再重启salt-master

问题解决!

能够在 /var/cache/salt/master 下面看到名为 gitfs 的目录啦

相关文章
相关标签/搜索