Seeding Aether
This commit is contained in:
64
roles/Aether/tasks/main.yml
Normal file
64
roles/Aether/tasks/main.yml
Normal file
@@ -0,0 +1,64 @@
|
||||
---
|
||||
|
||||
- name: Install the package
|
||||
become: true
|
||||
ignore_errors: true
|
||||
package:
|
||||
name: Aether
|
||||
state: present
|
||||
|
||||
- name: Validate the user
|
||||
vars:
|
||||
service_account: aether
|
||||
include_tasks: ../roles/common/service_account.yml
|
||||
|
||||
- name: Ensure the Aether identity is protected.
|
||||
become: true
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
owner: aether
|
||||
group: aether
|
||||
mode: 0700
|
||||
loop:
|
||||
- /home/aether/.ssh
|
||||
- /usr/local/etc/Aether
|
||||
- /usr/local/etc/Aether/backup-entries
|
||||
- /usr/local/backup
|
||||
|
||||
- name: Ensure the Aether identity exists
|
||||
delegate_to: Core # Core will track the identity that will then be shared to everyone else.
|
||||
become: true
|
||||
command:
|
||||
creates: /home/aether/.ssh/aether
|
||||
chdir: /home/aether/.ssh/
|
||||
cmd: ssh-keygen -t ed25519 -N "" -f ./aether
|
||||
|
||||
- name: Read the Aether identity
|
||||
become: true
|
||||
delegate_to: Core
|
||||
command: cat /home/aether/.ssh/aether
|
||||
register: aether_key
|
||||
|
||||
- name: Read the Aether public identity
|
||||
become: true
|
||||
delegate_to: Core
|
||||
command: cat /home/aether/.ssh/aether.pub
|
||||
register: aether_pubkey
|
||||
|
||||
- include_tasks: source.yml
|
||||
when: "{{ inventory_hostname }} is 'Core'"
|
||||
|
||||
- include_tasks: client.yml
|
||||
when: "{{ inventory_hostname }} is 'Core'"
|
||||
|
||||
- name: Ensure the Aether identity files are protected.
|
||||
become: true
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
owner: aether
|
||||
group: aether
|
||||
mode: 0600
|
||||
loop:
|
||||
- /home/aether/.ssh/aether
|
||||
- /home/aether/.ssh/aether.pub
|
Reference in New Issue
Block a user