我刚刚开始使用Salt而不是Ansible.我不确定是从主服务器调用以下脚本还是手动将命令输入salt状态.对于后者,任何人都可以建议如何使用cmd.run实现此目的.
#!/bin/bash . /lib/lsb/init-functions cd /opt/concourse/bin/ ./concourse worker \ --name ci_worker01 \ --bind-ip 0.0.0.0 \ --bind-port 7777 \ --work-dir /opt/concourse/worker \ --tsa-host 127.0.0.1 \ --tsa-port 2222 \ --tsa-public-key /opt/concourse/.ssh/id_web_rsa.pub \ --tsa-worker-private-key /opt/concourse/.ssh/id_worker_rsa &>/var/log/concourse/concourse_worker.log &
alejdg.. 5
您可以将脚本保存到文件中并使用以下cmd.script
状态调用它:
concourse_script: cmd.script: - name: salt://scripts/concourse.sh
或者您可以使用相同的状态来调用命令并传递args:
concourse_cmd: cmd.script: - name: ./concourse worker - cwd: /opt/concourse/bin/ - args: "'--name ci_worker01' '--bind-ip 0.0.0.0' '--bind-port 7777' '--work-dir /opt/concourse/worker' '--tsa-host 127.0.0.1' '--tsa-port 2222' '--tsa-public-key /opt/concourse/.ssh/id_web_rsa.pub' '--tsa-public-key /opt/concourse/.ssh/id_web_rsa.pub'"
请注意,要在YAML中传递包含空格的字符串,您需要加倍引用它.
您可以将脚本保存到文件中并使用以下cmd.script
状态调用它:
concourse_script: cmd.script: - name: salt://scripts/concourse.sh
或者您可以使用相同的状态来调用命令并传递args:
concourse_cmd: cmd.script: - name: ./concourse worker - cwd: /opt/concourse/bin/ - args: "'--name ci_worker01' '--bind-ip 0.0.0.0' '--bind-port 7777' '--work-dir /opt/concourse/worker' '--tsa-host 127.0.0.1' '--tsa-port 2222' '--tsa-public-key /opt/concourse/.ssh/id_web_rsa.pub' '--tsa-public-key /opt/concourse/.ssh/id_web_rsa.pub'"
请注意,要在YAML中传递包含空格的字符串,您需要加倍引用它.