- name: clone dotfiles git: repo: '{{ dotfiles_repo }}' dest: '{{ ansible_env.HOME }}/dotfiles' version: master update: yes register: dotfile_ssh_clone ignore_errors: true - name: clone dotfiles git: repo: '{{ public_dotfiles_repo }}' dest: '{{ ansible_env.HOME }}/dotfiles' version: master update: yes when: dotfile_ssh_clone.failed - name: create git configuration directory file: path: '{{ xdg_config_dir }}/git' state: directory - name: setup dotfiles file: path: '{{ item.dest }}' src: '{{ item.src }}' state: link force: true loop: - { src: '{{ ansible_env.HOME }}/dotfiles/.vimrc', dest: '{{ ansible_env.HOME }}/.vimrc', } - { src: '{{ ansible_env.HOME }}/dotfiles/.bashrc', dest: '{{ ansible_env.HOME }}/.bashrc', } - { src: '{{ ansible_env.HOME }}/dotfiles/.profile', dest: '{{ ansible_env.HOME }}/.profile', } - { src: '{{ ansible_env.HOME }}/dotfiles/.tmux.conf', dest: '{{ ansible_env.HOME }}/.tmux.conf', } - { src: '{{ ansible_env.HOME }}/dotfiles/.gitignore', dest: '{{ xdg_config_dir }}/git/ignore', }