diff --git a/defaults/main.yml b/defaults/main.yml new file mode 100644 index 0000000..9c06b68 --- /dev/null +++ b/defaults/main.yml @@ -0,0 +1,5 @@ +--- +vim_config: + - 'set background=dark' + - 'set tabstop=4 shiftwidth=4 expandtab' + - 'syntax on' \ No newline at end of file diff --git a/tasks/main.yml b/tasks/main.yml new file mode 100644 index 0000000..0245955 --- /dev/null +++ b/tasks/main.yml @@ -0,0 +1,3 @@ +--- +- include_vars: "os_{{ ansible_os_family }}.yml" +- import_tasks: setup.yml \ No newline at end of file diff --git a/tasks/setup.yml b/tasks/setup.yml new file mode 100644 index 0000000..468e421 --- /dev/null +++ b/tasks/setup.yml @@ -0,0 +1,34 @@ +--- +- name: Setup vim environment + block: + - name: Installing vim + package: + name: "{{ vim_package_name }}" + state: latest + + - name: Creating configuration directory + file: + state: directory + dest: /etc/vim + owner: root + group: root + mode: 0755 + + - name: Configure vim + template: + src: etc/vim/vimrc.local.j2 + dest: /etc/vim/vimrc.local + owner: root + group: root + mode: 0644 + + - name: Source local vimrc + blockinfile: + dest: /etc/vimrc + marker: "\" {mark} ANSIBLE MANAGED BLOCK" + block: | + if filereadable("/etc/vim/vimrc.local") + source /etc/vim/vimrc.local + endif + when: ansible_os_family == "RedHat" + become: True diff --git a/templates/etc/vim/vimrc.local.j2 b/templates/etc/vim/vimrc.local.j2 new file mode 100644 index 0000000..91dce73 --- /dev/null +++ b/templates/etc/vim/vimrc.local.j2 @@ -0,0 +1,5 @@ +" {{ ansible_managed }} + +{% for item in vim_config %} +{{ item }} +{% endfor %} diff --git a/vars/os_Debian.yml b/vars/os_Debian.yml new file mode 100644 index 0000000..bba07f4 --- /dev/null +++ b/vars/os_Debian.yml @@ -0,0 +1,2 @@ +--- +vim_package_name: vim diff --git a/vars/os_RedHat.yml b/vars/os_RedHat.yml new file mode 100644 index 0000000..6b54ffb --- /dev/null +++ b/vars/os_RedHat.yml @@ -0,0 +1,2 @@ +--- +vim_package_name: vim-enhanced