--- - name: "Install ansible" hosts: target tasks: - name: "Add ansible PPA" apt_repository: repo: ppa:ansible/ansible state: present - 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/{{ item.src }}" dest: "{{ item.dest }}" mode: "{{ item.mode }}" owner: root group: root with_items: - { src: ansible.cfg, dest: /etc/ansible/ansible.cfg, mode: "0644" }