Back to questions
Andersen
Senior
7
Как в Ansible указать разные package managers для разных ОС (Debian/apt и RedHat/yum)?
Companies where asked
Answer from AI
sobes.tech AI
В Ansible можно использовать условные конструкции (when) для выбора нужного package manager в зависимости от ОС. Например, в задаче можно указать разные модули или параметры для Debian (apt) и RedHat (yum):
- name: Install package on Debian
apt:
name: nginx
state: present
when: ansible_facts['os_family'] == 'Debian'
- name: Install package on RedHat
yum:
name: nginx
state: present
when: ansible_facts['os_family'] == 'RedHat'
Также можно использовать переменные и динамически выбирать менеджер пакетов, но такой подход с условиями наиболее наглядный и распространенный.