home · contact · privacy
Fix.
[config] / buster / setup_scripts / backup_app.sh
1 #!/bin/sh
2 set -e
3 set -x
4
5 if [ "$#" -lt 3 ]; then
6     echo 'Need at least three arguments: service name, DB name, and backup directory names.'
7     #echo 'Need at least two arguments: service name and backup directory or (prefixed with "db:") DB names.'
8     false
9 fi
10 app="$1"
11 db_name="$2"
12 shift 2
13
14 cd /tmp
15 rm -rf "${app}_backup"
16 mkdir "${app}_backup"
17 chmod 777 "${app}_backup"
18
19 service "${app}" stop
20
21 su postgres -lc "pg_dump -d ${db_name} --format=custom -f /tmp/${app}_backup/${db_name}.pgdump"
22 for target in "$@"; do
23     cp -a "${target}" "${app}_backup${target}"
24 done
25 #for target in "$@"; do
26 #    prefix=$(echo "${target}" | cut -c-3)
27 #    if [ "${prefix}" = "DB:" ]; then
28 #        db_name=$(echo "${ŧarget}" | cut -c4-)
29 #    else
30 #        cp -a "${target}" "backup${target}"
31 #    fi
32 #done
33
34 tar cf "${app}_backup.tar" "${app}_backup"
35 rm -rf "${app}_backup"
36 chown plom:plom "${app}_backup.tar"
37 mv "${app}_backup.tar" /home/plom