#!/usr/bin/env bash storage_login() { B2_REMOTE_DIR=${STORAGE_PATH#*/} B2_BUCKET=${STORAGE_PATH%%/*} B2_ARCHIVE=${B2_REMOTE_DIR}/$(basename ${ARCHIVE}) B2_ACCOUNT_ID=${ACCOUNT_ID} B2_APPLICATION_KEY=${APPLICATION_KEY} if [[ -n "${DEBUG}" ]]; then echo B2_BUCKET=${B2_BUCKET} echo B2_REMOTE_DIR=${B2_REMOTE_DIR} echo B2_ARCHIVE=${B2_ARCHIVE} echo ARCHIVE=${ARCHIVE} fi B2_CONNECTION= b2 authorize-account ${B2_ACCOUNT_ID} ${B2_APPLICATION_KEY} log "Login to B2 by ${B2_ACCOUNT_ID}" && export B2_CONNECTION=true return $? } storage_download() { [ -z ${B2_CONNECTION} ] && storage_login b2 download-file-by-name ${B2_BUCKET} ${B2_ARCHIVE} ${ARCHIVE} log "Download in \"${B2_ARCHIVE}\" from bucket \"${B2_BUCKET}\" \n\t as \"$(basename ${ARCHIVE})\"" return $? } storage_upload() { [ -z ${B2_CONNECTION} ] && storage_login b2 upload-file ${B2_BUCKET} ${ARCHIVE} ${B2_ARCHIVE} log "Upload \"$(basename ${ARCHIVE})\" \n\t to \"${B2_ARCHIVE}\" in bucket \"${B2_BUCKET}\"" return $? }