From 40e236d3c49f803196412e965c77b4691525c29f Mon Sep 17 00:00:00 2001 From: Dmitry Ilvokhin Date: Sat, 9 Aug 2025 10:41:03 +0100 Subject: Move go configuration to goenv role --- roles/dotfiles/tasks/main.yml | 26 ++++++-------------------- roles/go/tasks/main.yml | 20 ++------------------ roles/goenv/defaults/main.yml | 3 +++ roles/goenv/tasks/main.yml | 33 +++++++++++++++++++++++++++++++++ 4 files changed, 44 insertions(+), 38 deletions(-) create mode 100644 roles/goenv/defaults/main.yml create mode 100644 roles/goenv/tasks/main.yml (limited to 'roles') diff --git a/roles/dotfiles/tasks/main.yml b/roles/dotfiles/tasks/main.yml index 6761bd6..53acf24 100644 --- a/roles/dotfiles/tasks/main.yml +++ b/roles/dotfiles/tasks/main.yml @@ -134,26 +134,12 @@ failed_when: false register: has_go - - name: Set go config directory for macOS - set_fact: - go_conf_dir: '{{ homedir }}/Library/Application Support/go' - when: has_go.rc == 0 and ansible_os_family == "Darwin" - - - name: Set go config directory for Linux - set_fact: - go_conf_dir: '{{ homedir }}/.config/go' - when: has_go.rc == 0 and ansible_os_family != "Darwin" - - - name: Create go config directory - ansible.builtin.file: - path: '{{ go_conf_dir }}' - state: directory - owner: '{{ user }}' - - - name: Configure go enviroment - ansible.builtin.template: - src: misc/dotfiles/goenv.j2 - dest: '{{ go_conf_dir }}/env' + - ansible.builtin.include_role: + name: goenv + vars: + goenv_user: '{{ user }}' + goenv_group: '{{ group }}' + goenv_homedir: '{{ homedir }}' when: has_go.rc == 0 - name: Copy templates files if necessary diff --git a/roles/go/tasks/main.yml b/roles/go/tasks/main.yml index 81d117f..0df6723 100644 --- a/roles/go/tasks/main.yml +++ b/roles/go/tasks/main.yml @@ -4,24 +4,8 @@ - go state: present -- name: Create go config directory for Dmitry Ilvokhin - ansible.builtin.file: - path: /home/d/.config/go/ - state: directory - owner: d - group: d - mode: u+rw,g-wx,o-rwx - tags: - - dotfiles - - name: Configure go for Dmitry Ilvokhin - ansible.builtin.template: - src: misc/dotfiles/goenv.j2 - dest: /home/d/.config/go/env - owner: d - group: d - mode: u+rw,g+r,o+r - vars: - homedir: /home/d + ansible.builtin.include_role: + name: goenv tags: - dotfiles diff --git a/roles/goenv/defaults/main.yml b/roles/goenv/defaults/main.yml new file mode 100644 index 0000000..a25f252 --- /dev/null +++ b/roles/goenv/defaults/main.yml @@ -0,0 +1,3 @@ +goenv_user: d +goenv_group: d +goenv_homedir: /home/{{ goenv_user }} diff --git a/roles/goenv/tasks/main.yml b/roles/goenv/tasks/main.yml new file mode 100644 index 0000000..29e0b9e --- /dev/null +++ b/roles/goenv/tasks/main.yml @@ -0,0 +1,33 @@ +- name: Set go config directory for macOS + set_fact: + goenv_conf_dir: '{{ goenv_homedir }}/Library/Application Support/go' + when: ansible_os_family == "Darwin" + tags: + - dotfiles + +- name: Set go config directory for Linux + set_fact: + goenv_conf_dir: '{{ goenv_homedir }}/.config/go' + when: ansible_os_family != "Darwin" + tags: + - dotfiles + +- name: Create go config directory + ansible.builtin.file: + path: '{{ goenv_conf_dir }}' + state: directory + owner: '{{ goenv_user }}' + group: '{{ goenv_group }}' + mode: u+rw,g-wx,o-rwx + tags: + - dotfiles + +- name: Configure go enviroment + ansible.builtin.template: + src: misc/dotfiles/goenv.j2 + dest: '{{ goenv_conf_dir }}/env' + owner: '{{ goenv_user }}' + group: '{{ goenv_group }}' + mode: u+rw,g+r,o+r + tags: + - dotfiles -- cgit v1.2.3-70-g09d2