runner-import.sh.jinja2 1.01 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11
#!{{ shell_binary }}
umask 077
restore_element () {
  backup_path=$1
  restore_path=$2
  shift 2
  element_list=$*
  for element in $element_list
  do
    cd $backup_path;
    if [ -f $element ] || [ -d $element ]; then
12
       {{ rsync_binary }} -av --delete $backup_path/$element $restore_path;
13 14 15
    fi
  done
}
16 17 18 19 20 21 22 23 24 25

write_backup_proof () {
  cd {{ directory['backup'] }}
  find -type f ! -name backup.signature ! -wholename "./rdiff-backup-data/*" -print0 | xargs -0 sha256sum  | sort > {{ directory['srv'] }}/proof.signature
  diff -ruw {{ directory['backup'] }} {{ directory['srv'] }}/proof.signature > {{ directory['srv'] }}/backup.diff
}

# For now we just make the diff before 
write_backup_proof

26 27 28 29
restore_element {{ directory['backup'] }}/runner/ {{ directory['srv'] }}/runner  instance project  proxy.db
restore_element  {{ directory['backup'] }}/etc/ {{ directory['etc'] }} config.json ssh
cp -r {{ directory['backup'] }}/etc/.??* {{ directory['etc'] }};
{{ curl_binary }} --insecure -vg6L --max-time 5  {{ backend_url }}/isSRReady;