2017-12-11 1 views
-1

私はキー値辞書を持っています。 私はユーザーから取得している(オンまたはオフの)パラメータを使用したいと思い、その値を辞書に書き留めたいと思います。私はそれを実行する方法JSONとシェルで外部変数を使用する可能性があります

ansible-playbook -i $INVENTORY -s --extra-vars "switch='on' PLAYBOOKS/add_or_rm.yml 

コード:

- hosts: docker-first-manager 
vars: 
operationMap: 
    on: add 
    off: rm 


tasks: 
    - name: open_kibana_debug_port 
    shell: 
     docker service update --publish-{{operationMap[switch]}} 5603:5603 my_service 
+0

ちょうどそれが最後に働く –

答えて

1

私の最初の本能ではなくときの条件を使用することです。

- name: Publish kibana debug port 
    shell: docker service update --publish-add 5603:5603 my_service 
    when: switch is defined and switch == "on" 
    - name: Un-publish kibana debug port 
    shell: docker service update --publish-rm 5603:5603 my_service 
    when: switch is not defined or switch != "on" 
関連する問題