ansible: simplify common role
This commit is contained in:
parent
6e12627362
commit
6d415e7d0e
12 changed files with 98 additions and 216 deletions
|
@ -1,30 +0,0 @@
|
||||||
---
|
|
||||||
- name: bash | remove pre-installed profile
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: absent
|
|
||||||
loop:
|
|
||||||
- ~/.bash_logout
|
|
||||||
- ~/.profile
|
|
||||||
|
|
||||||
|
|
||||||
- name: bash | ensure existence of directories used in bashrc
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
loop:
|
|
||||||
- ~/.local/share/bash # for bash history
|
|
||||||
- ~/.local/share/bash-completion/completions # for custom completions
|
|
||||||
- ~/.local/share/less # for less history
|
|
||||||
|
|
||||||
|
|
||||||
- name: bash | deploy bash profile
|
|
||||||
file:
|
|
||||||
src: "{{ role_path }}/files/bashrc"
|
|
||||||
dest: "{{ item }}"
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
loop:
|
|
||||||
- ~/.bash_profile # executed for login shells
|
|
||||||
- ~/.bashrc # executed for interactve shells
|
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
---
|
|
||||||
- name: bin | create ~/.local/bin
|
|
||||||
file:
|
|
||||||
path: ~/.local/bin
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
|
|
||||||
- name: bin | deploy local commands
|
|
||||||
file:
|
|
||||||
src: "{{ item }}"
|
|
||||||
dest: ~/.local/bin/{{ item | basename }}
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
with_fileglob:
|
|
||||||
- "{{ role_path }}/files/bin/*"
|
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
---
|
|
||||||
- name: dircolors | create config directory
|
|
||||||
file:
|
|
||||||
path: ~/.config/dircolors
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
|
|
||||||
- name: Deploy dircolors
|
|
||||||
file:
|
|
||||||
src: "{{ item }}"
|
|
||||||
dest: ~/.config/dircolors/{{ item | basename }}
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
with_fileglob:
|
|
||||||
- "{{ role_path }}/files/dircolors/*"
|
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
---
|
|
||||||
- name: git | create config directories
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
loop:
|
|
||||||
- ~/.config/git
|
|
||||||
- ~/.local/etc/git
|
|
||||||
|
|
||||||
|
|
||||||
- name: git | deploy config
|
|
||||||
file:
|
|
||||||
src: "{{ role_path }}/files/{{ item.src }}"
|
|
||||||
dest: ~/.config/git/{{ item.dest }}
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
loop:
|
|
||||||
- { src: gitconfig, dest: config }
|
|
||||||
- { src: gitignore, dest: ignore }
|
|
||||||
|
|
||||||
|
|
||||||
- name: git | deploy host-specific config
|
|
||||||
template:
|
|
||||||
src: gitconfig.host.j2
|
|
||||||
dest: ~/.local/etc/git/config.host
|
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
---
|
|
||||||
- name: hushlogin | exists?
|
|
||||||
stat:
|
|
||||||
path: ~/.hushlogin
|
|
||||||
register: hush
|
|
||||||
|
|
||||||
|
|
||||||
- name: hushlogin | create
|
|
||||||
when: hush.stat.exists == false
|
|
||||||
file:
|
|
||||||
path: ~/.hushlogin
|
|
||||||
state: touch
|
|
||||||
|
|
|
@ -1,15 +1,100 @@
|
||||||
---
|
---
|
||||||
- block:
|
- name: remove pre-installed bash profile
|
||||||
# - import_tasks: bash.yml
|
file:
|
||||||
# - import_tasks: bin.yml
|
path: "{{ item }}"
|
||||||
# - import_tasks: dircolors.yml
|
state: absent
|
||||||
# - import_tasks: git.yml
|
loop:
|
||||||
# - import_tasks: hushlogin.yml
|
- ~/.bash_logout
|
||||||
# - import_tasks: mintty.yml
|
- ~/.profile
|
||||||
- import_tasks: packages.yml # TODO
|
|
||||||
# - import_tasks: python.yml
|
|
||||||
# - import_tasks: readline.yml
|
- name: ensure existence of directories used by dotfiles
|
||||||
# - import_tasks: ssh.yml
|
file:
|
||||||
# - import_tasks: tmux.yml
|
path: "{{ item }}"
|
||||||
# - import_tasks: vim.yml
|
state: directory
|
||||||
|
loop:
|
||||||
|
- ~/.config/dircolors
|
||||||
|
- ~/.config/git
|
||||||
|
- ~/.config/mintty
|
||||||
|
- ~/.config/python
|
||||||
|
- ~/.config/readline
|
||||||
|
- ~/.config/tmux
|
||||||
|
- ~/.config/vim
|
||||||
|
- ~/.config/vim/autoload # vim plugin manager
|
||||||
|
- ~/.local/bin # local commands
|
||||||
|
- ~/.local/etc/git # local git config
|
||||||
|
- ~/.local/share/bash # for bash history
|
||||||
|
- ~/.local/share/bash-completion/completions # custom bash completions
|
||||||
|
- ~/.local/share/less # less history
|
||||||
|
- ~/.local/share/python # python history
|
||||||
|
- ~/.local/share/vim # viminfo
|
||||||
|
- ~/.local/share/vim/plugged # vim plugins
|
||||||
|
- ~/.ssh
|
||||||
|
|
||||||
|
|
||||||
|
- name: link dotfiles
|
||||||
|
file:
|
||||||
|
src: "{{ role_path }}/files/{{ item.src }}"
|
||||||
|
dest: "{{ item.dest }}"
|
||||||
|
state: link
|
||||||
|
force: yes
|
||||||
|
loop:
|
||||||
|
- { src: bashrc, dest: ~/.bash_profile }
|
||||||
|
- { src: bashrc, dest: ~/.bashrc }
|
||||||
|
- { src: gitconfig, dest: ~/.config/git/config }
|
||||||
|
- { src: gitignore, dest: ~/.config/git/ignore }
|
||||||
|
- { src: inputrc, dest: ~/.config/readline/inputrc }
|
||||||
|
- { src: minttyrc, dest: ~/.config/mintty/config }
|
||||||
|
- { src: plug.vim, dest: ~/.config/vim/autoload/plug.vim }
|
||||||
|
- { src: python-startup.py, dest: ~/.config/python/startup.py }
|
||||||
|
- { src: ssh_config, dest: ~/.ssh/config }
|
||||||
|
- { src: tmux-colors.conf, dest: ~/.config/tmux/tmux-colors.conf }
|
||||||
|
- { src: tmux.conf, dest: ~/.config/tmux/tmux.conf }
|
||||||
|
- { src: vimrc, dest: ~/.config/vim/vimrc }
|
||||||
|
|
||||||
|
|
||||||
|
- name: deploy templates
|
||||||
|
template:
|
||||||
|
src: "{{ item.src }}"
|
||||||
|
dest: "{{ item.dest }}"
|
||||||
|
loop:
|
||||||
|
- src: gitconfig.host.j2
|
||||||
|
dest: ~/.local/etc/git/config.host
|
||||||
|
|
||||||
|
|
||||||
|
- name: link local commands
|
||||||
|
file:
|
||||||
|
src: "{{ item }}"
|
||||||
|
dest: ~/.local/bin/{{ item | basename }}
|
||||||
|
state: link
|
||||||
|
force: yes
|
||||||
|
with_fileglob:
|
||||||
|
- "{{ role_path }}/files/bin/*"
|
||||||
|
|
||||||
|
|
||||||
|
- name: link dircolors
|
||||||
|
file:
|
||||||
|
src: "{{ item }}"
|
||||||
|
dest: ~/.config/dircolors/{{ item | basename }}
|
||||||
|
state: link
|
||||||
|
force: yes
|
||||||
|
with_fileglob:
|
||||||
|
- "{{ role_path }}/files/dircolors/*"
|
||||||
|
|
||||||
|
|
||||||
|
- block:
|
||||||
|
- name: hushlogin exists?
|
||||||
|
stat:
|
||||||
|
path: ~/.hushlogin
|
||||||
|
register: hush
|
||||||
|
|
||||||
|
- name: create hushlogin
|
||||||
|
when: hush.stat.exists == false
|
||||||
|
file:
|
||||||
|
path: ~/.hushlogin
|
||||||
|
state: touch
|
||||||
|
|
||||||
|
|
||||||
|
- name: install vim plugins
|
||||||
|
shell: vim -es -u ~/.config/vim/vimrc +PlugInstall +qall
|
||||||
|
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
---
|
|
||||||
- name: mintty | create config directory
|
|
||||||
file:
|
|
||||||
path: ~/.config/mintty
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
|
|
||||||
- name: mintty | deploy config
|
|
||||||
file:
|
|
||||||
src: "{{ role_path }}/files/minttyrc"
|
|
||||||
dest: ~/.config/mintty/config
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
---
|
|
||||||
- name: python | create config and data directories
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
loop:
|
|
||||||
- ~/.config/python
|
|
||||||
- ~/.local/share/python # for this history file
|
|
||||||
|
|
||||||
|
|
||||||
- name: python | deploy startup file
|
|
||||||
file:
|
|
||||||
src: "{{ role_path }}/files/python-startup.py"
|
|
||||||
dest: ~/.config/python/startup.py
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
---
|
|
||||||
- name: readline | create config directory
|
|
||||||
file:
|
|
||||||
path: ~/.config/readline
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
|
|
||||||
- name: readline | deploy inputrc
|
|
||||||
file:
|
|
||||||
src: "{{ role_path }}/files/inputrc"
|
|
||||||
dest: ~/.config/readline/inputrc
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
---
|
|
||||||
- name: ssh | create config diretory
|
|
||||||
file:
|
|
||||||
path: ~/.ssh
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
|
|
||||||
- name: ssh | deploy config
|
|
||||||
file:
|
|
||||||
src: "{{ role_path }}/files/ssh_config"
|
|
||||||
dest: ~/.ssh/config
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
---
|
|
||||||
- name: tmux | create config directory
|
|
||||||
file:
|
|
||||||
path: ~/.config/tmux
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
|
|
||||||
- name: tmux | deploy config
|
|
||||||
file:
|
|
||||||
src: "{{ role_path }}/files/{{ item }}"
|
|
||||||
dest: ~/.config/tmux/{{ item }}
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
loop:
|
|
||||||
- tmux.conf
|
|
||||||
- tmux-colors.conf
|
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
---
|
|
||||||
- name: vim | create directories
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
loop:
|
|
||||||
- ~/.config/vim # for vimrc
|
|
||||||
- ~/.config/vim/autoload # for plugin manager
|
|
||||||
- ~/.local/share/vim # for viminfo
|
|
||||||
- ~/.local/share/vim/plugged # for installing uplugins
|
|
||||||
|
|
||||||
|
|
||||||
- name: vim | deploy configuration
|
|
||||||
file:
|
|
||||||
src: "{{ role_path }}/files/{{ item.src }}"
|
|
||||||
dest: "{{ item.dest }}"
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
loop:
|
|
||||||
- { src: vimrc, dest: ~/.config/vim/vimrc }
|
|
||||||
- { src: plug.vim, dest: ~/.config/vim/autoload/plug.vim }
|
|
||||||
|
|
||||||
|
|
||||||
- name: vim | install plugins
|
|
||||||
shell: vim -es -u ~/.config/vim/vimrc +PlugInstall +qall
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue