aboutsummaryrefslogtreecommitdiffstats
path: root/roles/sshd_keys
diff options
context:
space:
mode:
Diffstat (limited to 'roles/sshd_keys')
-rw-r--r--roles/sshd_keys/meta/main.yml5
-rw-r--r--roles/sshd_keys/tasks/main.yml20
2 files changed, 25 insertions, 0 deletions
diff --git a/roles/sshd_keys/meta/main.yml b/roles/sshd_keys/meta/main.yml
new file mode 100644
index 0000000..46c62ed
--- /dev/null
+++ b/roles/sshd_keys/meta/main.yml
@@ -0,0 +1,5 @@
+---
+
+dependencies:
+ - role: sshd
+ tags: dependency
diff --git a/roles/sshd_keys/tasks/main.yml b/roles/sshd_keys/tasks/main.yml
new file mode 100644
index 0000000..32f6b5a
--- /dev/null
+++ b/roles/sshd_keys/tasks/main.yml
@@ -0,0 +1,20 @@
+---
+
+- name: get ssh keys for all users
+ ansible.builtin.find:
+ paths: files/keys
+ file_type: link
+ recurse: true
+ delegate_to: localhost
+ run_once: true
+ register: result
+
+- name: synchronize ssh keys
+ ansible.posix.authorized_key:
+ user: "{{ item.path | dirname | basename }}"
+ state: present
+ key: "{{ lookup('file', item.path) }}"
+ loop_control:
+ label: "{{ item.path }} -> user: {{ item.path | dirname | basename }}"
+ loop: "{{ result.files }}"
+ failed_when: false
remember that computers suck.