File: user-callback.kill_snapshot

package info (click to toggle)
backintime 1.5.5-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 9,632 kB
  • sloc: python: 23,454; sh: 859; makefile: 172; xml: 62
file content (50 lines) | stat: -rwxr-xr-x 1,491 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/bin/bash
# SPDX-FileCopyrightText: © 2012-2014 Germar Reitze
#
# SPDX-License-Identifier: GPL-2.0-or-later
#
# This file is part of the program "Back In Time" which is released under GNU
# General Public License v2 (GPLv2). See LICENSES directory or go to
# <https://spdx.org/licenses/GPL-2.0-or-later.html>.

# stop creating a new snapshot if conditions are not met. For example if the
# source drive isn't mounted. With version >= 1.1.0 you don't need to kill
# processes any more. Just return a non zero returncode.

profile_id="$1"
profile_name="$2"
pid=$$

function ppid {
    cat /proc/$1/status | grep "PPid:" | cut -f2
}

case $3 in
    1) # Backup process begins
        if [ true ]; then ###INSERT YOUR CONDITIONS HERE
            kill $(ppid $(ppid $pid))
        fi
        ;;
    2) # Backup process ends
        ;;
    3) # A new snapshot was taken
        ;;
    4) #There was an error
        case $4 in
            1) # ERROR The application is not configured
              ;;
            2) # ERROR A 'take snapshot' process is already running
              ;;
            3) # ERROR Can't find snapshots folder (is it on a removable drive ?)
              ;;
            4) # ERROR A snapshot for 'now' already exist
              ;;
            5) # ERROR: Error while taking a snapshot
               ;;
            6) # ERROR: New snapshot taken but with errors
               ;;
            *) # Unknown error number
               ;;
        esac
        ;;
esac