Роль common
Роль common — подготовительная Ansible-роль, которая предназначена для поиска RPM-файлов в директории и сохранения путей к ним в переменные для их последующего использования в ролях:
- copywala
- pbr_agent
- agent_manager
- storage_manager
- task_manager
- recovery_manager
- storage_service
Роль common выполняет следующие действия:
- Загружает список компонентов из файла
vars/components.yml(относительно директории плейбука). - Проверяет, что путь к директории с RPM-пакетами задан в переменной
common_rpm_dir_path. - Для каждого компонента ищет соответствующий RPM-файл в указанной директории.
- Создает переменные
*_rpm_pathс полными путями к найденным пакетам.
Важно
Роль common не предназначена для самостоятельного запуска. Она должна использоваться вместе с ролями установки компонентов в одном запуске плейбука. Переменные, создаваемые ролью (agent_manager_rpm_path, storage_manager_rpm_path и другие), существуют только в памяти Ansible во время выполнения и недоступны после завершения плейбука.
Название переменной | Описание | Значение по умолчанию | Обязательность заполнения |
|---|---|---|---|
| Путь к директории с RPM-файлами CopyWala, например, для компонента PBRA: |
| Да |
Пример файла playbook.yml для установки компонентов DBBR
- name: Get rpm
hosts: dbbr
roles:
- common
vars:
common_rpm_dir_path: /path/to/rpms
- name: Install DBBR
hosts: dbbr
roles:
- role: agent_manager
become: true
- role: task_manager
become: true
- role: storage_manager
become: true
vars:
# КОД ПРОПУЩЕН: переменные ролей