本文中用的top.sls
/srv/salt/top.sls test: 'minion1': - file
创建
1. 空文件
/srv/salt/test/file.sls /tmp/a.txt: file.managed
2. 根据模板文件生成文件
/srv/salt/test/file.sls /tmp/a.txt: file.managed: - source: salt://files/a.txt /srv/salt/test/files/a.txt just a test
3. 根据变量生成文件
/srv/salt/test/file.sls /tmp/a.txt: file.managed: - source: salt://files/a.txt - template: jinja /srv/salt/test/files/a.txt {{ pillar['os'] }}
4. 创建多个文件
/srv/salt/test/file.sls {% set create_files = ['/tmp/a', '/tmp/b', '/tmp/c'] %} {% for eachfile in create_files %} {{eachfile}}: file.managed: - source: salt://files/tmp - template: jinja {% endfor %}
删除
/srv/salt/test/file.sls /tmp/a.txt: file.absent
添加内容
/srv/salt/test/file.sls /tmp/a.txt: file.append: - text: - 'this is append line1' - 'this is append line2'
重命名
/srv/salt/test/file.sls /tmp/new: file.rename: - source: /tmp/old
目录
/srv/salt/test/file.sls /var/log/httpd: file.directory: - user: root - group: root - dir_mode: 755 - file_mode: 644 - recurse: - user - group - mode sed /srv/salt/test/file.sls /etc/yum.repos.d/epel.repo: file.sed: - before: 1 - after: 0 - limit: ^enabled=
软连
/srv/salt/test/file.sls /tmp/new: file.symlink: - target: /tmp/old
是否存在
/srv/salt/test/file.sls /tmp/new: file.exists
利用saltstack中file.recurse方法,运用该模块可以将定义的目录下所有文件都推送到远端服务器指定的位置,
这里为了方便测试,所以直接将salt的资源路径改到了nginx指向的项目根目录。
1 [root@iz2ze4j1iyce3b7muq6jtiz web]# pwd 2 /home/web 3 [root@iz2ze4j1iyce3b7muq6jtiz web]# vim 4 .idea/ index.php mall-api-salt/ swoole/ test.sls 5 [root@iz2ze4j1iyce3b7muq6jtiz web]# vim test.sls 6 test: 7 file.recurse: 8 - source: salt://mall-api-salt 9 - name: /var/www/mall-api 10 - user: nginx 11 - group: nginx 12 - dir_mode: 755 13 - file_mode: 644 14 - include_enpty: True
本文出自http://blog.kukafei520.net/html/2014/942.html
https://www.cnblogs.com/jim-hwg/p/4615583.html
https://www.cnblogs.com/loveyouyou616/p/8745068.html
转载于:https://blog.51cto.com/lookingdream/2177320