How to skip ansible roles for certain servers

30 Views Asked by At

I have following code wherein I have 3 roles as below. I do not want to execute "def" role for hosts which has group_name "er". So when servers also belong to "er" group, skip def role.

hosts: qw
vars:
roles:
  abc
  def
  fgh

1

There are 1 best solutions below

0
ednxzu On BEST ANSWER

You can use Conditionals with roles

- hosts: qw
  vars:
  roles:
    - role: abc
    - role: def
      when: 'er' not in group_names
    - role: fgh

Something like that would likely work for your usecase.