Se esta abordagem funciona para você, então vá com ela. Não há nada de bom ou ruim na maneira como você define a configuração. Além disso, você pode usar variáveis.
A condicional deve, no entanto, ser semelhante à seguinte:
- include_tasks: tasks/remove-dhcp.yml
when: 'dhcp' not in group_names
group_names
é magic variable que contém uma lista de todos os grupos aos quais o alvo em execução pertence.