salt gitfs

layout: post

title: “salt-gitfs”

概述

salt默认使用 /srv/salt作为state的文件路径,另外还支持多个路径,或者远程git仓库。

准备工作

GitFS 需要 GitPython 0.3.0 或更新的版本,如果你的系统软件仓库自带的版本不满足需求 (比如 Ubuntu 12.04 LTS),请使用如下方式安装

pip install GitPython

开启配置

GitPython成功安装好后,基本配置实例如下,修改配置文件 /etc/salt/master

fileserver_backend:
  - git
gitfs_remotes:
  - https://domain.com/salt.git

测试

salt \* state.highstate test=True

其他参考

gitfs_root

上面的例子中远端仓库根目录即为base环境的根目录,如果是base环境对应的是git仓库内的一个子目录,可以使用gitfs_root配置项来指定

gitfs_root: salt

gitfs_root: salt/site

fileserver_backend

fileserver_backend 可以指定多个后端存储方式,比如一个典型的应用场景就是SLS文件存在git仓库中,大的文件存储在master本地

fileserver_backend:
  - roots
  - git

gitfs_remotes

  • gitfs_remotes 支持配置使用仓库内的指定的目录
gitfs_remotes:
  - file:///repository.git
    - root: gitfs_root: somefolder/otherfolder
  • 指定多个仓库
gitfs_remotes:
  - git://github.com/example/first.git
  - https://github.com/example/second.git
  - file:///root/third

参考文档

  • http://docs.saltstack.com/en/latest/topics/tutorials/gitfs.html
  • http://docs.saltstack.com/en/latest/ref/configuration/master.html#std:conf_master-fileserver_backend

你可能感兴趣的:(salt gitfs)