2017-02-04 2 views
4

を構築..他の場合は相続人は、私の場合はそうでないAnsibleロジック

- name: Check certs exist 
    stat: path=/etc/letsencrypt/live/{{ rootDomain }}/fullchain.pem 
    register: st 

- include: ./_common/check-certs-renewable.yaml 
    when: st.stat.exists 

- include: ./_common/create-certs.yaml 
    when: not st.stat.exists 

このコードは、つまるところ:本命は

が本命

ELSE

を更新存在する場合

証明書を作成

END

IFは、ELSE IFへのより良いアプローチはansibleに構築これは正しいアプローチですかありますか?

答えて

5

あなたが所持しているものはうまくいくはずであり、その方法の1つです。そう、

- name: Check certs exist 
    stat: path=/etc/letsencrypt/live/{{ rootDomain }}/fullchain.pem 
    register: st 

- include: "{{ './_common/check-certs-renewable.yaml' if st.stat.exists else './_common/create-certs.yaml' }}" 

はしかし、それはより多くのが何よりも個人の好みの問題だし、あなたの方法は、より読みやすい:

また、あなたは、このようなことを、2つのタスクにそれを減らすために神社のクエリを使用することができます私はそのIMHOに固執します。

関連する問題