From 4d4d2468c69000f3c5299d50cab0b9570e3e05dc Mon Sep 17 00:00:00 2001 From: Price Hiller Date: Tue, 2 Aug 2022 01:34:41 -0500 Subject: [PATCH] feat: FULL DEPLOY, LETS GOOOO --- roles/deploy-files/defaults/main.yml | 6 +++++ roles/deploy-files/tasks/main.yml | 35 ++++++++++++++++++++++++++++ roles/zsh/defaults/main.yml | 1 - roles/zsh/tasks/install-poetry.yml | 8 +++++++ tasks/install-fzf.yml | 19 --------------- 5 files changed, 49 insertions(+), 20 deletions(-) diff --git a/roles/deploy-files/defaults/main.yml b/roles/deploy-files/defaults/main.yml index d861782..d634dca 100644 --- a/roles/deploy-files/defaults/main.yml +++ b/roles/deploy-files/defaults/main.yml @@ -1,2 +1,8 @@ --- # defaults file for deploy-files +dots_repo: https://gitlab.orion-technologies.io/philler/dots.git +deploy_path: "{{ ansible_env.HOME }}/.dot_files" +dots_path: "{{ deploy_path }}/dots" +dot_file_deploys: + - path: "{{ dots_path }}/.config" + - path: "{{ dots_path }}/.nvim-environments" diff --git a/roles/deploy-files/tasks/main.yml b/roles/deploy-files/tasks/main.yml index 029204e..c12425a 100644 --- a/roles/deploy-files/tasks/main.yml +++ b/roles/deploy-files/tasks/main.yml @@ -1,2 +1,37 @@ --- # tasks file for deploy-files +- name: Get dot files from git + # noqa git-latest + ansible.builtin.git: + repo: "{{ dots_repo }}" + recursive: true + dest: "{{ deploy_path }}" + update: true + version: HEAD + +- name: Find all dot files in given paths + ansible.builtin.find: + paths: "{{ item.paths }}" + hidden: true + file_type: "{{ item.file_type }}" + patterns: + - "*" + - ".*" + register: dot_files_found + loop: + - file_type: file + paths: "{{ dots_path }}/" + - file_type: any + paths: "{{ dots_path }}/.local/share/" + +- name: Extract file paths to variable + ansible.builtin.set_fact: + dot_file_deploys: "{{ item.files + dot_file_deploys }}" + loop: "{{ dot_files_found.results }}" + +- name: Deploy symlinks + ansible.builtin.file: + state: link + src: "{{ item.path }}" + path: "{{ ansible_env.HOME }}/{{ item.path | replace(dots_path, '') }}" + loop: "{{ dot_file_deploys }}" diff --git a/roles/zsh/defaults/main.yml b/roles/zsh/defaults/main.yml index b660188..f2b50ec 100644 --- a/roles/zsh/defaults/main.yml +++ b/roles/zsh/defaults/main.yml @@ -5,7 +5,6 @@ xdg_bin_home: "{{ ansible_env.HOME + '/.local/bin' }}" xdg_data_home: "{{ ansible_env.HOME + '/.local/share' }}" zsh_needed_dirs: - - "{{ xdg_config_home }}" - "{{ xdg_bin_home }}" - "{{ xdg_data_home }}" diff --git a/roles/zsh/tasks/install-poetry.yml b/roles/zsh/tasks/install-poetry.yml index 8ceff2b..628b7a2 100644 --- a/roles/zsh/tasks/install-poetry.yml +++ b/roles/zsh/tasks/install-poetry.yml @@ -1,4 +1,12 @@ --- +- name: Check if distutils is installed for Debian based systems + ansible.builtin.apt: + name: + - python3-apt + - python3-distutils + state: present + when: ansible_facts.os_family == 'Debian' + - name: Check if poetry is installed ansible.builtin.stat: path: "{{ ansible_env.HOME }}/.local/share/pypoetry" diff --git a/tasks/install-fzf.yml b/tasks/install-fzf.yml index 7c57b10..9e7349f 100644 --- a/tasks/install-fzf.yml +++ b/tasks/install-fzf.yml @@ -18,22 +18,3 @@ depth: 1 tags: - fzf - - prereq - -- name: Check if FZF shell files have been generated - ansible.builtin.stat: - path: "{{ xdg_config_home }}/fzf" - register: fzf_shell_exists - -- name: Install FZF - when: not fzf_shell_exists.stat.exists - ansible.builtin.command: - argv: - - "{{ fzf_install_path }}/install" - - --key-bindings - - --completion - - --no-update-rc - - --xdg - tags: - - fzf - - prereq