Saltar al contenido

¿Cómo puedo pasar la variable al libro de jugadas ansible en la línea de comando?

Solución:

Al leer los documentos, encuentro la sección Pasando variables en la línea de comandos, que da este ejemplo:

ansible-playbook release.yml --extra-vars "version=1.23.45 other_variable=foo"

Otros ejemplos demuestran cómo cargar desde JSON cuerda (≥1.2) o archivo (≥1.3)

Otras respuestas indican cómo pasar las variables de la línea de comando pero no cómo acceder a ellas, así que si lo hace:

--extra-vars "version=1.23.45 other_variable=foo"

En su archivo yml, los asigna a variables ansible de ámbito haciendo algo como:

vars:
    my_version: "{{ version }}"
    my_other_variable: {{ other_variable }}

Una alternativa al uso de argumentos de línea de comando es utilizar variables ambientales que ya están definidas dentro de su sesión, puede hacer referencia a ellas dentro de sus archivos ansible yml de esta manera:

vars:
    my_version: "{{ lookup('env', 'version') }}"
    my_other_variable: {{ lookup('env', 'other_variable') }}

ansible-playbook release.yml -e "version=1.23.45 other_variable=foo"
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *