企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
一、条件判断,主要用于cmd状态模块 unless: 用于检查的命令,仅当unless选项指向的命令返回false才执行name执行的命令 案例: ~~~ cmd.run: - name: cd /usr/local/src && sudo tar xf haproxy-1.8.3.tar.gz && cd haproxy-1.8.3 && sudo make TARGET=linux26 PREFIX=/usr/local/haproxy && sudo make install prefix=/usr/local/haproxy - unless: test -d /usr/local/haproxy 说明:如果目录haproxy不存在,则执行上面的命令,如果存在就不执行 ~~~ 二、依赖(requisites) 常用方法: require: 我依赖别的,只有别的安装成功后,在执行这个 案例: ~~~ include: - pkg.pkg-init haproxy-install: file.managed: - name: /usr/local/src/haproxy-1.8.3.tar.gz - source: salt://haproxy/files/haproxy-1.8.3.tar.gz - user: root - group: root - mode: 755 cmd.run: - name: cd /usr/local/src && sudo tar xf haproxy-1.8.3.tar.gz && cd haproxy-1.8.3 && sudo make TARGET=linux26 PREFIX=/usr/local/haproxy && sudo make install prefix=/usr/local/haproxy - unless: test -d /usr/local/haproxy - require: (我依赖一下2个) - pkg: pkg-init (pkg-init是id,pkg是一个模块) - file: haproxy-install (haproxy-install是id名,file是一个模块) ~~~ 三、我关注某个文件 watch,我关注某个状态,某个文件发生改变 - watch: - file: haproxy-service 当配置文件发生改变咯,就重启reload