#!/bin/bash
# Configuration
export AWS_ACCESS_KEY_ID=YOUR_AWS_ACCESS_KEY_ID
export AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY
export PASSPHRASE=YOUR_PASSPHRASE

GPG_KEY=YOUR_GPG_KEY_ID

backup() {
	source_dir=$1
	dest_dir=$2
  days=$3

	duplicity -vinfo \
	--full-if-older-than ${days}D \
	--encrypt-key=${GPG_KEY} --sign-key=${GPG_KEY} \
	--s3-european-buckets --s3-use-new-style --s3-use-rrs \
	--archive-dir=/storage/duplicity \
	${source_dir} ${dest_dir}

	duplicity remove-all-but-n-full 1 --archive-dir=/storage/duplicity --s3-use-new-style --encrypt-key=${GPG_KEY} --force ${2}
}

# Backup of etc. 
SOURCE=/etc
DEST=s3+http://path/to/backup/at/amazon/etc
backup ${SOURCE} ${DEST} 45

# Backup of home folders. 
SOURCE=/home
DEST=s3+http://path/to/backup/at/amazon/home
backup ${SOURCE} ${DEST} 46

# Reset configuration
export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
export PASSPHRASE=

