View | Details | Raw Unified | Return to bug 30627
Collapse All | Expand All

(-)a/debian/scripts/koha-run-backups (-36 / +14 lines)
Lines 60-103 while true ; do Link Here
60
    esac
60
    esac
61
done
61
done
62
62
63
if ! test $days -gt 0 ; then
64
    echo "Parameter --days must be an integer greater than 0"
65
    exit 1
66
fi
67
63
for name in $(koha-list --enabled | grep -Fxv demo)
68
for name in $(koha-list --enabled | grep -Fxv demo)
64
do
69
do
65
    koha-dump ${exclude_indexes} "$name" > /dev/null
70
    if koha-dump ${exclude_indexes} "$name" > /dev/null; then
66
    if [ -z "$dirname" ]; then
71
        # Only delete old backups if dump script return success.
67
        backupdir="$( xmlstarlet sel -t -v 'yazgfs/config/backupdir' /etc/koha/sites/$name/koha-conf.xml )";
68
    else
69
        backupdir="$dirname/$name";
70
    fi
71
72
72
    # Remove old dump files.
73
        if [ -z "$dirname" ]; then
73
    # FIXME: This could probably be replaced by one line of perl.
74
            backupdir="$( xmlstarlet sel -t -v 'yazgfs/config/backupdir' /etc/koha/sites/$name/koha-conf.xml )";
74
    ls "$backupdir/" |
75
        else
75
    sed "s:^$name-\([0-9-]*\)\.\(sql\|tar\)\.gz$:\1:" |
76
            backupdir="$dirname/$name";
76
    sort -u |
77
    tac |
78
    sed "1,${days}d" |
79
    tac |
80
    while read date
81
    do
82
        tardump="$backupdir/$name-$date.tar.gz"
83
        sqldump="$backupdir/$name-$date.sql.gz"
84
        if [ -e "$tardump" ] && [ -e "$sqldump" ]
85
        then
86
            rm "$tardump"
87
            rm "$sqldump"
88
        elif [ -e "$tardump" ] || [ -e "$sqldump" ]
89
        then
90
            echo "Only one of a pair exists! Not removing it."
91
            for x in "$tardump" "$sqldump"
92
            do
93
                if [ -e "$x" ]
94
                then
95
                    echo "Exists        : $x"
96
                else
97
                    echo "Does not exist: $x"
98
                fi
99
            done
100
        fi
77
        fi
101
    done
78
79
        find $backupdir -maxdepth 1 \( -mtime +$days -or -mtime $days \) -name $name-'[1-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9].???'.gz  \( -name \*.sql.gz -or -name \*.tar.gz \) -print0 | xargs -0 -r rm
80
    fi
102
done
81
done
103
82
104
- 

Return to bug 30627