Зарегистрированные переменные
Бывают случаи, когда требуется выполнить команду и работать с тем, что она вернула. В этих ситуациях Ansible позволяет использовать register для хранения возвращаемых данных в переменной.
В предыдущей главе мы использовали register для получения возвращаемых данных команды forever list
, затем использовали эти данные для определения того, нужно ли запускать наше Node.js приложение:
- name: "Node: Check list of Node.js apps running."
command: forever list
register: forever_list
changed_when: false
- name: "Node: Start example Node.js app."
command: forever start {{ node_apps_location }}/app/app.js
when: "forever_list.stdout.find('{{ node_apps_location}}/app/app.js') == -1"
В этом примере мы использовали функцию Python - find, чтобы найти путь к нашему приложению и запустить его.