Инструменты пользователя

Инструменты сайта


linux:ansible:debug

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
linux:ansible:debug [2023/11/23 23:05]
werwolf создано
linux:ansible:debug [2023/11/23 23:34] (текущий)
werwolf
Строка 1: Строка 1:
 ===== Отладка в ansible ===== ===== Отладка в ansible =====
 +
 +Самое очевидное что приходит на ум это использование вспомогательного отладочного вывода. Тут нам на помощь приходит встроенный модуль debug. Все просто как 3 копейки - дебаг позволяет вывести сообщение или значение переменной.
 +
 +
 +==== debug - отладочный вывод в процессе сборки ==== 
 +
 +Для того что бы увидеть отладочный вывод нужно добавить свойства register и debug
  
 <code yaml> <code yaml>
Строка 18: Строка 25:
  
 </​code>​ </​code>​
 +
 +
 +<code bash>
 +erwolf@werwolf-System-Product-Name:​~/​ansible-demo$ ansible-playbook -i demo-server user.yml -K 
 +...
 +ok: [127.0.0.1] => {
 +    "​out":​ {
 +        "​append":​ false,
 +        "​changed":​ false,
 +        "​comment":​ "​werwolf",​
 +        "​failed":​ false,
 +        "​group":​ 1000,
 +        "​home":​ "/​home/​werwolf",​
 +        "​move_home":​ false,
 +        "​name":​ "​werwolf",​
 +        "​shell":​ "/​bin/​bash",​
 +        "​state":​ "​present",​
 +        "​uid":​ 1000
 +    }
 +}
 +...  ​
 +
 +
 +</​code>​
 +
 +==== debugger - отладка в процессе сборки ==== 
 +
 +Для вкючения отладки необходимо добавить свойство debugger в playbook. У данного свойства есть несколько возможных параметров:​
 +
 +{{ :​linux:​ansible:​debugger.png |}}
 +
 +<code yaml>
 +---
 +- name: user
 +  hosts: demo
 +  tasks:
 +    - name: Create user
 +      vars:
 +        user: werwolf
 +      user:
 +        name: "{{ user }}"
 +        state: present
 +      become: true
 +      debugger: always
 +</​code>​
 +
 +
 +При запуске команды ansible запуститься отладочный режим
 +
 +<code bash>
 +
 +werwolf@werwolf-System-Product-Name:​~/​ansible-demo$ ansible-playbook -i demo-server user.yml -K 
 +
 +# Режим отладки
 +[127.0.0.1] TASK: Create user (debug)> p task  # информация о task
 +TASK: Create user
 +
 +[127.0.0.1] TASK: Create user (debug)> p task.name # название task
 +'​Create user'
 +
 +
 +[127.0.0.1] TASK: Create user (debug)> p task.args # Передаваемы параметры task
 +
 +[127.0.0.1] TASK: Create user (debug)> p task_vars['​inventory_hostname'​] # Получить host
 +'​127.0.0.1'​
 +
 +[127.0.0.1] TASK: Create user (debug)> p task_vars['​user'​] # Получить пользователя
 +'​werwolf'​
 +
 +[127.0.0.1] TASK: Create user (debug)> p task.vars # получить переменные task
 +{'​user':​ '​werwolf'​}
 +
 +[127.0.0.1] TASK: Create user (debug)> task.args['​name'​] = '​werwolf14'​ # изменить пользователя
 +
 +[127.0.0.1] TASK: Create user (debug)> r # Пересобрать ansible
 +changed: [127.0.0.1]
 +
 +[127.0.0.1] TASK: Create user (debug)> task.args['​state'​] = '​absent'​ # удалить пользователя
 +
 +[127.0.0.1] TASK: Create user (debug)> c # Продолжить работу
 +
 +</​code>​
 +
 +
 +
 +
 +
 +
 +
  
  
linux/ansible/debug.1700769923.txt.gz · Последние изменения: 2023/11/23 23:05 — werwolf