Variáveis extras na linha de comando
Substitua valores em tempo de execução com -e.
Variáveis extras na linha de comando é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.
Valores durante a execução
Às vezes, você quer escolher um valor ao iniciar uma execução, em vez de gravá-lo em um arquivo. É para isso que servem as variáveis extras. 🌟
A opção -e
Passe variáveis extras com a opção -e (ou --extra-vars) no ansible-playbook. Cada uma se torna uma variável disponível durante toda a execução.
ansible-playbook site.yml -e "env=prod"Vários pares key=value
Separe vários valores com espaços dentro de uma única cadeia entre aspas. O Ansible analisa cada par key=value e o transforma em uma variável.
ansible-playbook site.yml -e "env=prod port=443"Repetindo -e
Você também pode passar -e mais de uma vez. Cada ocorrência adiciona sua própria variável, o que mantém comandos longos legíveis.
ansible-playbook site.yml -e env=prod -e port=443JSON para tipos avançados
key=value transforma tudo em texto. Para passar números, listas ou dicionários, use JSON dentro das variáveis extras.
ansible-playbook site.yml -e '{"port": 443}'Carregar variáveis extras de um arquivo
Prefixe o valor com um @ para ler variáveis de um arquivo YAML ou JSON. É ótimo para um conjunto extenso de substituições.
ansible-playbook site.yml -e @overrides.ymlAs variáveis extras prevalecem
Uma variável extra prevalece sobre quase qualquer outra fonte. Se env estiver definido nas variáveis e também na CLI, será usado o valor da linha de comando.
Um padrão seguro para substituições
Combine variáveis extras com o filtro default para que o play continue funcionando quando nenhuma substituição for fornecida.
name: "{{ env | default('dev') }}"Ótimo para ambientes
O mesmo playbook pode ser direcionado a dev, staging ou prod simplesmente alterando uma variável extra ao iniciá-lo. Um arquivo, muitos destinos.
ansible-playbook deploy.yml -e env=stagingAlternar comportamentos com sinalizadores
As variáveis extras funcionam muito bem como interruptores de ativação e desativação. Combine uma delas com uma condição when para ativar ou ignorar uma tarefa.
when: run_migrations | default(false)Coloque espaços entre aspas com cuidado
Se um valor contiver espaços, coloque o par inteiro entre aspas para que o interpretador de comandos não o divida. Tenha cuidado com as aspas do interpretador de comandos.
ansible-playbook s.yml -e "motd=Hello there"Verificação rápida
Você definiu port em vars e também passou -e port=443. Qual valor prevalece?
Recapitulação
Agora você pode substituir valores ao iniciar com -e, passar JSON ou @files e contar com as variáveis extras para prevalecer sobre outras fontes. ✨
Perguntas Frequentes
A aula “Variáveis extras na linha de comando” é grátis?
Sim — o texto completo de “Variáveis extras na linha de comando” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.
O que vou aprender em “Variáveis extras na linha de comando”?
Substitua valores em tempo de execução com -e. Você pratica DevOps Bootcamp com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar DevOps Bootcamp?
Nenhuma experiência prévia é necessária. DevOps Bootcamp no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Variáveis extras na linha de comando”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de DevOps Bootcamp?
Sim. Cada aula de DevOps Bootcamp inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Definindo e usando vars em um play
- A sintaxe de substituição {{ }}
- Variáveis extras na linha de comando
- De onde vêm as variáveis e qual é a precedência