2017-01-24 23 views
0

私は今Antheの代わりにSaltを使い始めました。私はマスターから次のスクリプトを呼び出すか、手動でコマンドを塩状態にするかどうかはわかりません。後者については誰でもcmd.runを使ってこれを達成する方法を提案することができます。複数の引数を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 & 

答えて

5

あなたは、ファイルにスクリプトを保存して、このようなcmd.script state使用してそれを呼び出すことができます。

concourse_script: 
    cmd.script: 
    - name: salt://scripts/concourse.sh 

それとも、コールにコマンドを同じ状態を使用し、引数を渡すことができます。

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にスペースを含む文字列を渡すには、二重引用符を付ける必要があります。

関連する問題