Case statement for setting var in Ansible/Jinja2

前端 未结 3 1577
眼角桃花
眼角桃花 2020-12-30 04:02

I\'m using Ansible with Jinja2 templates, and this is a scenario that I can\'t find a solution for in Ansible\'s documentation or googling around for Jinja2 examples. Here\'

3条回答
  •  暖寄归人
    2020-12-30 04:35

    Something like this would work, but it's ugly. And as @podarok mentioned in his answer, it's likely unnecessary depending on exactly what you're attempting to do:

    - name: set default
      set_fact: new_ansible_var= ""
    
    - name: set to 'a'
      set_fact: new_ansible_var= "a"
      when: "{{ existing_ansible_var }} == string1"
    
    - name: set to 'b'
      set_fact: new_ansible_var= "b"
      when: "{{ existing_ansible_var }} == string2"
    

    etc.

提交回复
热议问题