Para implementar condições em Ansible, usamos o Quando a palavra -chave. A palavra -chave leva expressões booleanas com base em um valor ou em uma variável de tarefas ou fatos anteriores coletados dos hosts remotos.
Este guia ensinará como implementar as condições em manuais de Ansible usando a palavra -chave quando.
Ansible quando condicionais: uso básico
Quando a palavra -chave é uma sintaxe simples:
Quando: (condição booleana)Garanta passar uma condição que avalie para verdadeira ou falsa.
Por exemplo:
Quando: Ansible_pkg_mgr == "yum"Se você deseja combinar várias condições, pode usar operadores lógicos como e, ou e não.
Quando: (condição1) e (condição2)Para entender como usar o Ansible quando a palavra -chave, usaremos exemplos práticos.
Exemplo 1
O primeiro exemplo criará um usuário se o usuário especificado não existir no host remoto.
---O exemplo acima começa verificando se o diretório inicial do usuário do Ubuntu estiver disponível. Em seguida, usamos a condição quando criar um arquivo de texto se o diretório estiver disponível.
Exemplo 2
O próximo exemplo desliga todos os hosts remotos do Ubuntu usando uma condição quando.
---No exemplo acima, usamos fatos reunidos para avaliar se os servidores são da família Ubuntu. Se for verdade, desligue os servidores.
Exemplo 3
No exemplo abaixo, combinamos duas condições que usam um e operador.
---O exemplo acima verifica se os hosts são hosts Debian e se a versão de distribuição for igual ao Debian 10.
Exemplo 4
Instalamos o servidor da web do Apache no manual abaixo se a família host for um host de Debian ou Ubuntu.
O manual usa um lógico ou operador.
---Exemplo 5
Considere o manual abaixo que atualiza o servidor nginx para a versão mais recente usando o operador Not Operator.
---Se a saída do servidor nginx não for a versão atual, instale a versão atual do pacote.
Conclusão
Neste guia, discutimos como trabalhar com condicionais em Ansible usando a palavra -chave quando.
Obrigado pela leitura!