aboutsummaryrefslogtreecommitdiffstats
path: root/roles/_workstation/dotfiles.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/_workstation/dotfiles.yml')
-rw-r--r--roles/_workstation/dotfiles.yml29
1 files changed, 29 insertions, 0 deletions
diff --git a/roles/_workstation/dotfiles.yml b/roles/_workstation/dotfiles.yml
new file mode 100644
index 0000000..d3e7855
--- /dev/null
+++ b/roles/_workstation/dotfiles.yml
@@ -0,0 +1,29 @@
+---
+
+- name: install yadm
+ ansible.builtin.package:
+ name: yadm
+ state: present
+
+- name: retrieve yadm path # noqa no-changed-when command-instead-of-shell
+ ansible.builtin.shell: yes n | yadm clone "{{ workstation_dotfiles_repo }}"
+ register: workstation_dotfiles_clone_result
+ changed_when:
+ - workstation_dotfiles_clone_result.rc != 0
+ - "'Git repo already exists' not in
+ workstation_dotfiles_clone_result.stderr"
+ failed_when:
+ - workstation_dotfiles_clone_result.rc != 0
+ - "'Git repo already exists' not in
+ workstation_dotfiles_clone_result.stderr"
+
+- name: check that yadm bootstrap script exists
+ ansible.builtin.stat:
+ path: "/home/{{ workstation_user }}/.config/yadm/bootstrap"
+ register: workstation_dotfiles_bootstrap_result
+
+- name: execute yadm bootstrap
+ ansible.builtin.command: yadm bootstrap
+ when:
+ - workstation_dotfiles_bootstrap_result.stat.exists
+ - workstation_dotfiles_bootstrap_result.stat.executable
remember that computers suck.