mirror of
https://github.com/outbackdingo/labca.git
synced 2026-01-27 10:19:34 +00:00
36 lines
835 B
Bash
Executable File
36 lines
835 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
NOW=$(date +%y%m%d-%H%M%S)
|
|
CRON=""
|
|
if [ "$1" == "cron" ]; then
|
|
CRON="_${1}"
|
|
TODAY=`date '+%Y_%m_%d'`
|
|
echo "Running cron-$(basename $0) for ${TODAY}..."
|
|
fi
|
|
instance=$(grep fqdn /opt/labca/data/config.json 2>/dev/null | cut -d ":" -f 2- | tr -d " \"," | cut -d"." -f1)
|
|
BASE=${NOW}_${instance}${CRON}
|
|
TMPDIR=/tmp/$BASE
|
|
mkdir -p $TMPDIR
|
|
mkdir -p /opt/backup
|
|
|
|
cd /opt/boulder
|
|
docker-compose exec -T bmysql mysqldump boulder_sa_integration >$TMPDIR/boulder_sa_integration.sql
|
|
|
|
cp -p /etc/nginx/ssl/*key* /etc/nginx/ssl/*cert.pem /etc/nginx/ssl/*.csr $TMPDIR/
|
|
|
|
cp -rp /opt/labca/data $TMPDIR/
|
|
|
|
|
|
cd /tmp
|
|
tar czf /opt/backup/$BASE.tgz $BASE
|
|
rm -rf $TMPDIR
|
|
|
|
# housekeeping
|
|
find /opt/backup -name "*_cron_*.tgz" -mtime +31 -exec rm -rf {} \;
|
|
|
|
if [ "$1" != "cron" ]; then
|
|
echo /opt/backup/$BASE.tgz
|
|
fi
|