ansible when条件语句用法

参考

基本用法

- hosts: all
  tasks:
    - include: Ubuntu.yml
      when: ansible_os_family == "Ubuntu"
    
    - include: RHEL.yml
      when: ansible_os_family == "RedHat"

语法

When: condition1 and/or condition2

举例

when:
  ansible_distribution in ['RedHat', 'CentOS', 'ScientificLinux'] and
  (ansible_distribution_version|version_compare('7', '<') or
  ansible_distribution_version|version_compare('8', '>='))
  or
  ansible_distribution == 'Fedora'
  or
  ansible_distribution == 'Ubuntu' and
  ansible_distribution_version|version_compare('15.04', '>=')

and 还有一种写法,这种写法更简洁

when:
  - ansible_distribution in ['RedHat', 'CentOS', 'ScientificLinux']
  - ansible_distribution_version|version_compare('15.04', '>=')

相关文章:

  • 2022-12-23
  • 2021-04-12
  • 2021-07-30
  • 2022-12-23
  • 2021-12-06
  • 2021-11-10
  • 2022-02-05
  • 2021-07-08
猜你喜欢
  • 2021-08-09
  • 2021-06-11
  • 2022-02-28
  • 2022-12-23
  • 2022-01-01
  • 2022-12-23
  • 2021-11-14
相关资源
相似解决方案