From 5f3230aad459d06cfd257616564bddc4cd9ad7cc Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Tue, 11 Jan 2022 00:04:35 +0100 Subject: zfs/syncoid: add error handling to pull --- .../storage/zfs/syncoid/templates/syncoid_pull.j2 | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 roles/storage/zfs/syncoid/templates/syncoid_pull.j2 (limited to 'roles/storage/zfs/syncoid/templates/syncoid_pull.j2') diff --git a/roles/storage/zfs/syncoid/templates/syncoid_pull.j2 b/roles/storage/zfs/syncoid/templates/syncoid_pull.j2 new file mode 100644 index 00000000..ab6c3116 --- /dev/null +++ b/roles/storage/zfs/syncoid/templates/syncoid_pull.j2 @@ -0,0 +1,29 @@ +#!/bin/bash + +if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ] || [ "$1" == "--" ] || [ "$2" == "--" ] || [ "$3" == "--" ]; then + echo "$0 [ -- ]" + exit 1 +fi +src_host=$1 +src_path=$2 +dest_path=$3 +shift 3 +if [ -n "$1" ]; then + if [ "$1" != "--" ]; then + echo "additional arguments must be separated using '--'" + exit 1 + fi + shift +fi + +/usr/sbin/syncoid --sshoption "UserKnownHostsFile=/var/lib/syncoid/ssh.knownhosts" --sshoption "HashKnownHosts=no" --sshkey "/var/lib/syncoid/id_ssh_ed25519" --no-sync-snap --compress zstd-fast "$@" "$src_host:$src_path" "$dest_path" +ret=$? + +if [ -n "$RUNTIME_DIRECTORY" ]; then + cat <> "$RUNTIME_DIRECTORY/metrics" +syncoid_pull_exit_code{backup_server="{{ inventory_hostname }}",source="$src_path",destination="$dest_path"} $ret +EOF + echo $ret >> "$RUNTIME_DIRECTORY/exit_codes" +fi + +exit $ret -- cgit v1.2.3