и посмотреть медиа
OrangeDevOps - para los administradores de sistemas
и посмотреть медиа
Materiales interesantes y notas personales para los administradores de sistemas y los ingenieros DevOps.
Materiales interesantes y notas personales para los administradores de sistemas y los ingenieros DevOps.
Canal con enlaces a artículos útiles, tutoriales y notas sobre DevOps y administración del sistema. Adecuado para el trabajo diario.
Часто в работе с некоторыми инструментами возникают неочевидные #нюансы. Например c #ansible. Используя when надеешься на то что данный таск в playbook не выполнится, если условие не соблюдено, но каждый блок register выполняется независимо от этого условия. Допустим: - name: task1 shell: some command register: var1 when: var2 == 1 - name: task2 shell: some command2 register: var1 when: var2 === 2 То получаем в выводе: "changed": false, "skip_reason": "Conditional result was False" и var1={skip_reason: .... Решение: 1) Делать отдельный ямлик (с register уже в нем),включить его по условию when (если вариантов var2 не много): - include: tasks1.yaml when: var2 == 1 - include: tasks2.yaml when: var2 == 2 2) Использовать set_fact c третьей переменной: - name: task1 shell: some command register: var1 when: var2 == 1 - set_fact: var3="{{ var1 }}" when: var1.changed - name: task2 shell: some command2 register: var1 when: var2 === 2 - set_fact: var3="{{ var1 }}" when: var1.changed
Открыть канал и посмотреть медиаSolo los usuarios registrados pueden compartir su opinión.
¡Sé el primero en compartir tu experiencia con este recurso!