在运行ansible任务之前,如何确保某些操作系统版本和发行版可用?

在运行ansible任务之前,如何确保某些操作系统版本和发行版可用?,ansible,Ansible,我是ansible新手,正在寻找一些指导原则,以便在找到所需的操作系统版本/发行版时运行某些任务,或者跳过所有任务(即,存在时带有消息) 如果您希望在变量未设置为所需值的情况下退出,则类似的操作将起作用: - name: Fail if not running on CentOS 6 fail: msg="These tasks should only be run on CentOS 6 servers" when: ansible_distribution != "CentOS" o

我是ansible新手,正在寻找一些指导原则,以便在找到所需的操作系统版本/发行版时运行某些任务,或者跳过所有任务(即,存在时带有消息)

如果您希望在变量未设置为所需值的情况下退出,则类似的操作将起作用:

- name: Fail if not running on CentOS 6
  fail: msg="These tasks should only be run on CentOS 6 servers"
  when: ansible_distribution != "CentOS" or ansible_distribution_version|int != 6
或者如果变量根本不存在:

- name: Fail if variable foo is unknown
  fail: msg="Variable foo is not defined"
  when: foo is not defined
如果您想在操作系统不匹配时跳过任务,但想继续执行,则需要在所有验证操作系统变量的任务中添加“when”子句。

使用