aboutsummaryrefslogtreecommitdiffstats
path: root/molecule/default/converge.yml
diff options
context:
space:
mode:
authorColin Wilk <colin@wilk.cx>2026-06-28 22:47:11 +0200
committerColin Wilk <colin@wilk.cx>2026-06-28 23:18:35 +0200
commit7d96c1a11fc442b4efddf9ce5250cf0a9dfaf02e (patch)
tree5561dbeee61aaab05e21f3bc2895ff703a2ce137 /molecule/default/converge.yml
parent785e6c88e4c0a3ccc44fd357b4f693c5aadd432c (diff)
downloadansible-role-borgbackup-7d96c1a11fc442b4efddf9ce5250cf0a9dfaf02e.tar.gz
ansible-role-borgbackup-7d96c1a11fc442b4efddf9ce5250cf0a9dfaf02e.zip
Parametrize server-side borg user
Adds option to choose a non-default borg backup user on the server.
Diffstat (limited to 'molecule/default/converge.yml')
-rw-r--r--molecule/default/converge.yml54
1 files changed, 41 insertions, 13 deletions
diff --git a/molecule/default/converge.yml b/molecule/default/converge.yml
index d5d118d..21d4899 100644
--- a/molecule/default/converge.yml
+++ b/molecule/default/converge.yml
@@ -14,35 +14,50 @@
# This would usually be set by the user globally on their ansible
# repository and can be a security risk to do automatically. We will
# however set the variable here in the pre_tasks since it is for testing.
- - name: Start ssh
+ - name: Start ssh on borg-server
ansible.builtin.systemd:
name: sshd
state: started
become: true
- delegate_to: "{{ borg_server_host }}"
+ delegate_to: borg-server
- - name: Fetch ssh_key
+ - name: Start ssh on borg-server-2
+ ansible.builtin.systemd:
+ name: sshd
+ state: started
+ become: true
+ delegate_to: borg-server-2
+
+ - name: Fetch ssh_key for borg-server
ansible.builtin.command: >-
- ssh-keyscan -t rsa {{ borg_server_host }} | sed "s/^[^ ]* //"
+ ssh-keyscan -t rsa borg-server | sed "s/^[^ ]* //"
register: borg_server_ssh_keyscan
changed_when: false
- - name: Set ssh_key
+ - name: Fetch ssh_key for borg-server-2
+ ansible.builtin.command: >-
+ ssh-keyscan -t rsa borg-server-2 | sed "s/^[^ ]* //"
+ register: borg_server_2_ssh_keyscan
+ changed_when: false
+
+ - name: Set ssh_key for borg-server
ansible.builtin.set_fact:
borg_server_host_ssh_key: >-
{{ borg_server_ssh_keyscan.stdout
| split(" ")
| reject("search", borg_server_host)
| join(" ") }}
+ when: borg_server_host_ssh_key is not defined
- - name: Create backup user for non-root test
+- name: Setup - Create custom borg user on borg-server-2
+ hosts: borg-server-2
+ tasks:
+ - name: Create backupserver user
ansible.builtin.user:
- name: backupuser
- home: /home/backupuser
+ name: backupserver
+ home: /var/backups
shell: /bin/bash
- state: present
become: true
- when: inventory_hostname == 'borg-client-nonroot'
- name: Converge - Default borg-client
hosts: borg-client
@@ -61,14 +76,18 @@
- /var
- /reee reeee
-- name: Converge - borg-client-2
+- name: Converge - borg-client-2 (custom server user)
hosts: borg-client-2
+ vars:
+ borg_server_host_ssh_key: "{{ hostvars['localhost']['borg_server_2_ssh_keyscan']['stdout'] | split(' ') | reject('search', 'borg-server-2') | join(' ') }}"
+
roles:
- role: kliwniloc.borgbackup
vars:
- borg_server_host: borg-server
- borg_server_user_home: /opt/borg
+ borg_server_host: borg-server-2
+ borg_server_user: backupserver
+ borg_server_user_home: /var/backups
borg_decryption_keys_yaml_path: ""
borg_ssh_key_type: ed25519
borg_backup_service_successful_exit_status:
@@ -118,6 +137,15 @@
- name: Converge - Non-root backup user
hosts: borg-client-nonroot
+ pre_tasks:
+ - name: Create backup user for non-root test
+ ansible.builtin.user:
+ name: backupuser
+ home: /home/backupuser
+ shell: /bin/bash
+ state: present
+ become: true
+
roles:
- role: kliwniloc.borgbackup
vars: