diff options
-rw-r--r-- | dotfiles.yml | 3 | ||||
-rw-r--r-- | roles/bash/tasks/main.yml | 18 | ||||
-rw-r--r-- | roles/bashrc/defaults/main.yml | 3 | ||||
-rw-r--r-- | roles/bashrc/tasks/main.yml | 19 | ||||
-rw-r--r-- | roles/dotfiles/defaults/main.yml | 1 | ||||
-rw-r--r-- | roles/dotfiles/tasks/main.yml | 16 |
6 files changed, 34 insertions, 26 deletions
diff --git a/dotfiles.yml b/dotfiles.yml index 42e8c7d..9fe8c80 100644 --- a/dotfiles.yml +++ b/dotfiles.yml @@ -2,6 +2,9 @@ hosts: localhost vars: user: '{{ lookup("env", "USER") }}' + # Ideally group should be something like `id -gn {{ user }}` instead. + group: "{{ lookup('ansible.builtin.vars', 'user') \ + if ansible_os_family != \"Darwin\" else 'staff' }}" homedir: '{{ lookup("env", "HOME") }}' roles: - { role: dotfiles } diff --git a/roles/bash/tasks/main.yml b/roles/bash/tasks/main.yml index 6d61ed3..7a09047 100644 --- a/roles/bash/tasks/main.yml +++ b/roles/bash/tasks/main.yml @@ -5,21 +5,7 @@ state: present - name: Configure bash for Dmitry Ilvokhin - ansible.builtin.template: - src: misc/dotfiles/bashrc.j2 - dest: /home/d/.bashrc - owner: d - group: d - mode: u+rw,g+r,o+r - tags: - - dotfiles - -- name: Add bash_profile for Dmitry Ilvokhin - ansible.builtin.copy: - src: misc/dotfiles/bash_profile - dest: /home/d/.bash_profile - owner: d - group: d - mode: u+rw,g+r,o+r + ansible.builtin.include_role: + name: bashrc tags: - dotfiles diff --git a/roles/bashrc/defaults/main.yml b/roles/bashrc/defaults/main.yml new file mode 100644 index 0000000..50ff004 --- /dev/null +++ b/roles/bashrc/defaults/main.yml @@ -0,0 +1,3 @@ +bashrc_user: d +bashrc_group: d +bashrc_homedir: /home/{{ bashrc_user }} diff --git a/roles/bashrc/tasks/main.yml b/roles/bashrc/tasks/main.yml new file mode 100644 index 0000000..f3a8c88 --- /dev/null +++ b/roles/bashrc/tasks/main.yml @@ -0,0 +1,19 @@ +- name: Copy bash_profile to home directory + ansible.builtin.copy: + src: misc/dotfiles/bash_profile + dest: '{{ bashrc_homedir }}/.bash_profile' + owner: '{{ bashrc_user }}' + group: '{{ bashrc_group }}' + mode: u+rw,g+r,o+r + tags: + - dotfiles + +- name: Template bashrc to home directory + ansible.builtin.template: + src: misc/dotfiles/bashrc.j2 + dest: '{{ bashrc_homedir }}/.bashrc' + owner: '{{ bashrc_user }}' + group: '{{ bashrc_group }}' + mode: u+rw,g+r,o+r + tags: + - dotfiles diff --git a/roles/dotfiles/defaults/main.yml b/roles/dotfiles/defaults/main.yml index d791c8b..f15aaa6 100644 --- a/roles/dotfiles/defaults/main.yml +++ b/roles/dotfiles/defaults/main.yml @@ -1,3 +1,4 @@ user: d +group: d homedir: /home/{{ user }} jumphost: false diff --git a/roles/dotfiles/tasks/main.yml b/roles/dotfiles/tasks/main.yml index b5197df..ca6deeb 100644 --- a/roles/dotfiles/tasks/main.yml +++ b/roles/dotfiles/tasks/main.yml @@ -13,16 +13,12 @@ failed_when: false register: has_bash - - name: Copy bash_profile to home directory - ansible.builtin.copy: - src: misc/dotfiles/bash_profile - dest: '{{ homedir }}/.bash_profile' - when: has_bash.rc == 0 - - - name: Template bashrc to home directory - ansible.builtin.template: - src: misc/dotfiles/bashrc.j2 - dest: '{{ homedir }}/.bashrc' + - ansible.builtin.include_role: + name: bashrc + vars: + bashrc_user: '{{ user }}' + bashrc_group: '{{ group }}' + bashrc_homedir: '{{ homedir }}' when: has_bash.rc == 0 - name: Configure vim if installed |