--- - name: "Install ansible" hosts: target tasks: - name: "Update apt" apt: update_cache: yes when: ansible_distribution == "Ubuntu" - name: "Install ansible package" apt: pkg: "{{ item }}" state: present with_items: - ansible when: ansible_distribution == "Ubuntu" - name: "Update yum cache" yum: update_cache: yes when: ansible_distribution == "RedHat" or ansible_distribution == "CentOS" - name: "Install ansible package" yum: name: "{{ item }}" state: present with_items: - ansible when: ansible_distribution == "RedHat" or ansible_distribution == "CentOS" - name: "Install ansible package" portage: name: "{{ item }}" state: present with_items: - app-admin/ansible when: ansible_distribution == "Gentoo" - name: "Configure ansible" copy: src: "../files/{% raw %}{{ item.src }}{% endraw %}" dest: "{% raw %}{{ item.dest }}{% endraw %}" mode: "{% raw %}{{ item.mode }}{% endraw %}" owner: root group: root with_items: - { src: ansible.cfg, dest: /root/ansible/ansible.cfg, mode: "0644" }