dan*_*y74 17 ansible ansible-2.x
继承人我的if else 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
Run Code Online (Sandbox Code Playgroud)
此代码归结为:
IF证书存在
续签证书
其他
创建证书
万一
这是正确的方法还是有更好的方法来处理ans ELSE的IF ELSE?
Wil*_*ich 16
你有什么应该工作,是一种方法.
或者,您可以使用Jinja查询将其减少为2个任务,例如:
- 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' }}"
Run Code Online (Sandbox Code Playgroud)
然而,这更多的是个人偏好而不是其他任何事情,你的方式更具可读性,所以我会坚持使用那个恕我直言.
TRi*_*s43 10
那么以下情况呢:
condition_arg: >-
{%- if ansible_distribution == 'Ubuntu' -%}
'param for ubuntu'
{%- elif ansible_distribution == 'Debian' -%}
'params for debian'
{%- else -%}
'what else'
{%- end -%}
Run Code Online (Sandbox Code Playgroud)
某种if-else
声明..?它们已与 Ansible 一起用于一些项目中。此表单无法从官方文档中获得,但可以从stackexchange上的活动线程中获得。
归档时间: |
|
查看次数: |
41562 次 |
最近记录: |