Newer
Older
[Unit]
Description=Initializer
[Service]
Type=oneshot
ExecStartPre=/bin/bash -euxc ' \
BACKUP_DESTINATION=`cat /data/BACKUP_DESTINATION`; \
echo "Intitializing backups with $BACKUP_DESTINATION"; \
if [ ! -d /data/domains/%i/.git ]; then \
if [ `ssh $BACKUP_DESTINATION "test -d %i"; echo $?` -eq 0 ]; then \
git clone $BACKUP_DESTINATION:%i /data/domains/%i; \
cd /data/domains/%i; \
else \
ssh $BACKUP_DESTINATION "mkdir -p %i;cd %i;git init --bare;"; \
if [ ! -d /data/domains/%i ]; then \
mkdir /data/domains/%i; \
fi; \
cd /data/domains/%i; \
git init; \
git remote add origin $BACKUP_DESTINATION:%i; \
fi; \
git config --local user.email "backups@`hostname`"; \
git config --local user.name "`hostname` hourly backups"; \
fi'
ExecStart=/bin/bash -euxc ' \
if [ -d /data/import/%i ]; then \
cp -av /data/import/%i/* /data/domains/%i; \
cp /data/import/%i/.env /data/domains/%i/; \
cd /data/domains/%i/; \
git add .env; \
fi; \
cp /data/domains/%i/TLS/%i.pem /data/runtime/haproxy/approved-certs/%i.pem;'