Compare commits

...

2 Commits

Author SHA1 Message Date
renovate[bot]
0b81b9dd9d Update actions/checkout action to v5 2025-10-12 14:58:26 +00:00
fc6a5c8256 Add uninstall 2025-10-12 15:58:09 +01:00
5 changed files with 50 additions and 6 deletions

View File

@@ -5,7 +5,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Lint Ansible Playbook
uses: ansible/ansible-lint-action@main

View File

@@ -1,4 +1,6 @@
---
borgmatic_enabled: true
borgmatic_ssh_keys: []
borgmatic_config:

View File

@@ -20,8 +20,8 @@
- name: Initialize borg check_repositories
ansible.builtin.shell: "borgmatic init --encryption repokey"
environment:
PATH: "{{ ansible_env.PATH}}:/usr/local/bin"
environment:
PATH: "{{ ansible_env.PATH}}:/usr/local/bin"
- name: Enable borgmatic.timer
ansible.builtin.systemd:

View File

@@ -4,6 +4,15 @@
with_first_found:
- "os/{{ ansible_os_family }}/{{ ansible_distribution_major_version }}.yaml"
- "os/{{ ansible_os_family }}.yaml"
- include_tasks: install.yaml
- include_tasks: config.yaml
- include_tasks: init.yaml
- name: Borgmatic - Install and configure
when: borgmatic_enabled | default(true)
block:
- include_tasks: install.yaml
- include_tasks: config.yaml
- include_tasks: init.yaml
- name: Borgmatic - Uninstall and clean up
when: not borgmatic_enabled | default(true)
block:
- include_tasks: uninstall.yaml

33
tasks/uninstall.yaml Normal file
View File

@@ -0,0 +1,33 @@
---
- name: Disable borgmatic.timer if installed
ansible.builtin.systemd:
name: borgmatic.timer
enabled: false
masked: true
state: stopped
- name: Remove borgmatic systemd units
ansible.builtin.file:
path: "/etc/systemd/system/{{ item }}"
state: absent
loop:
- borgmatic.service
- borgmatic.timer
when:
- borgmatic_install_from_pip | default(false)
notify: reload systemd
- name: Uninstall borgmatic package
ansible.builtin.package:
name: borgmatic
state: absent
- name: Remove borgmatic configuration directory
ansible.builtin.file:
path: "/etc/borgmatic"
state: absent
- name: Remove borgmatic files in the root user home
ansible.builtin.file:
path: "/root/.borgmatic"
state: absent