--- - name: install the latest libselinux-python package become: yes dnf: name: libselinux-python state: latest when: - ansible_distribution == "Fedora" - name: install keychain to support ssh agent become: yes package: name: keychain state: latest when: - ansible_os_family != 'RedHat' - install_keychain - name: install keychain on centos become: yes yum: name: - http://packages.psychotic.ninja/7/base/x86_64/RPMS//keychain-2.8.0-3.el7.psychotic.noarch.rpm - libselinux-python state: present when: - ansible_os_family == 'RedHat' - install_keychain - name: Create a global bashrc configuration become: yes template: src: 'templates/bash.bashrc' dest: '/etc/bash.bashrc' owner: root group: root mode: 'u=rw,g=r,o=r' - name: Copy bashrc configuration to admin users become: yes template: src: 'templates/bashrc' dest: '/home/{{ item }}/.bashrc' owner: '{{ item }}' group: '{{ item }}' mode: 'u=rw,g=r,o=' with_items: '{{ admins }}' when: admins is defined - name: Copy bashrc configuration to non admin users become: yes template: src: 'templates/bashrc' dest: '/home/{{ item }}/.bashrc' owner: '{{ item }}' group: '{{ item }}' mode: 'u=rw,g=r,o=' with_items: '{{ user }}' when: user is defined - name: Copy vimrc configuration to root become: yes copy: src: 'templates/vimrc' dest: '/root/.vimrc' owner: root group: root mode: 'u=rw,g=r,o=' - name: Copy vimrc configuration to non admin users become: yes copy: src: 'templates/vimrc' dest: '/home/{{ item }}/.vimrc' owner: '{{ item }}' group: '{{ item }}' mode: 'u=rw,g=r,o=' with_items: "{{ user }}" when: user is defined - name: Copy vimrc configuration to admin users become: yes copy: src: 'templates/vimrc' dest: '/home/{{ item }}/.vimrc' owner: '{{ item }}' group: '{{ item }}' mode: 'u=rw,g=r,o=' with_items: "{{ admins }}" when: admins is defined - name: delete root .bashrc become: true file: state: absent path: "/root/.bashrc" when: allow_own_root_bashrc == False