#!/bin/sh
# vim: set noexpandtab tabstop=4 shiftwidth=4 softtabstop=4 :

# shellcheck disable=SC1091
. /lib/overthebox

backup_id=$(otb_json_get "$1" "arguments.backup_id")
backup="$(otb_service_get "backups/$backup_id")"

backup_url="$(otb_json_get "$backup" "backup_url")"
if [ -z "$backup_url" ]; then
    # There is no object storage backup URL
    otb_err "Failed to get backup URL !"
    exit 1
else
    case "$backup_url" in
         http*) url=$backup_url ;;
        *) otb_err "Invalid backup URL !"; exit 1 ;;
    esac
fi

curl "$url" | sysupgrade --restore-backup -

otb_debug "Done restoring backup $backup_id"