From e8dfce64b43cd3f8c9c78e5bce224be12529d4db Mon Sep 17 00:00:00 2001 From: Hannes Braun <hannes.braun@slub-dresden.de> Date: Tue, 18 Jun 2024 10:31:18 +0200 Subject: [PATCH] Add systemd timer for simple backup --- .../etc/systemd/system/simple-backup.service | 6 ++++ files/etc/systemd/system/simple-backup.timer | 10 +++++++ handlers/main.yml | 4 +++ tasks/main.yml | 28 +++++++++++++++++++ 4 files changed, 48 insertions(+) create mode 100644 files/etc/systemd/system/simple-backup.service create mode 100644 files/etc/systemd/system/simple-backup.timer create mode 100644 handlers/main.yml diff --git a/files/etc/systemd/system/simple-backup.service b/files/etc/systemd/system/simple-backup.service new file mode 100644 index 0000000..47a932b --- /dev/null +++ b/files/etc/systemd/system/simple-backup.service @@ -0,0 +1,6 @@ +[Unit] +Description=Simple Backup Service + +[Service] +Type=oneshot +ExecStart=/bin/bash /opt/simple-backup/simple-backup.sh diff --git a/files/etc/systemd/system/simple-backup.timer b/files/etc/systemd/system/simple-backup.timer new file mode 100644 index 0000000..486850c --- /dev/null +++ b/files/etc/systemd/system/simple-backup.timer @@ -0,0 +1,10 @@ +[Unit] +Description=Simple Backup Timer + +[Timer] +OnCalendar=Mon-Sun *-*-* 00:02:00 +Persistent=false +AccuracySec=15s + +[Install] +WantedBy=timers.target diff --git a/handlers/main.yml b/handlers/main.yml new file mode 100644 index 0000000..c29fc61 --- /dev/null +++ b/handlers/main.yml @@ -0,0 +1,4 @@ +- name: Reload systemd + ansible.builtin.systemd: + daemon_reload: true + become: true diff --git a/tasks/main.yml b/tasks/main.yml index aa91f66..9be99a0 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -22,3 +22,31 @@ group: root mode: '0644' become: true + +- name: Upload files and enable timer + block: + - name: Uploading service file + ansible.builtin.copy: + src: files/etc/systemd/system/simple-backup.service + dest: /etc/systemd/system/simple-backup.service + owner: root + group: root + mode: 0644 + + - name: Uploading timer file + ansible.builtin.copy: + src: files/etc/systemd/system/simple-backup.timer + dest: /etc/systemd/system/simple-backup.timer + owner: root + group: root + mode: 0644 + + - name: Enabling timers + ansible.builtin.systemd: + name: "simple-backup.timer" + enabled: true + state: started + masked: false + scope: system + notify: Reload systemd + become: true -- GitLab