当前位置:  开发笔记 > 编程语言 > 正文

如何将多个参数传递给salt cmd.run?

如何解决《如何将多个参数传递给saltcmd.run?》经验,为你挑选了1个好方法。

我刚刚开始使用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中传递包含空格的字符串,您需要加倍引用它.



1> alejdg..:

您可以将脚本保存到文件中并使用以下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中传递包含空格的字符串,您需要加倍引用它.

推荐阅读
吻过彩虹的脸_378
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有