Je souhaite installer plusieurs tr / min, l'un concerne les serveurs Fedora, un autre pour le serveur Centos.
J'ai fait ce fichier de lecture, mais c'est faux
3 Réponses :
Votre jeu de jeu devrait fonctionner, mais vous pouvez doubler vous-même sécuriser en ajoutant lorsque l'instruction:
- name: Copy another rpm file to server hosts: centos copy: src: /tmp/pam_krb5-2.4.8-6.el8.x86_64.rpm dest: /tmp/pam_krb5-2.4.8-6.el8.x86_64.rpm when: - ansible_facts['distribution'] == "CentOS" - name: Install another package. hosts: centos yum: name: /tmp/pam_krb5-2.4.8-6.el8.x86_64.rpm state: present when: - ansible_facts['distribution'] == "CentOS"
J'ai résolu avec une petite syntaxe différente
Vous pouvez utiliser 2 fichiers vars (un pour chaque distribution):
vars / centis_8.yml p> vars / fedora_31.yml p> - name: Include vars for host distribution
include_vars: "{{ ansible_distribution|lower }}_{{ ansible_distribution_major_version }}.yml"
- name: Copy RPM files to server
copy:
src: /tmp/{{ item }}
dest: /tmp/{{ item }}
with_items:
- "{{ packages }}"
- name: Install RPM packages
yum:
name: /tmp/{{ item }}
state: present
with_items:
- "{{ packages }}"
Qu'est-ce qui ne fonctionne pas comme prévu?