Removed obsolete scripts and the SQLite database
This commit is contained in:
parent
0ccbb6419a
commit
d3c4f3907f
@ -1,62 +0,0 @@
|
|||||||
#!/bin/bash -
|
|
||||||
#===============================================================================
|
|
||||||
#
|
|
||||||
# FILE: check_missing
|
|
||||||
#
|
|
||||||
# USAGE: ./check_missing [start] [end]
|
|
||||||
#
|
|
||||||
# DESCRIPTION: Looks for missing audio files in the upload area and in the
|
|
||||||
# upload journal on the VPS. The upload area is on the VPS at
|
|
||||||
# /var/IA/uploads and the journal is (currently) in
|
|
||||||
# ~dave/IA/ias3uploads.jnl
|
|
||||||
#
|
|
||||||
# OPTIONS: ---
|
|
||||||
# REQUIREMENTS: ---
|
|
||||||
# BUGS: ---
|
|
||||||
# NOTES: ---
|
|
||||||
# AUTHOR: Dave Morriss (djm), Dave.Morriss@gmail.com
|
|
||||||
# VERSION: 0.0.1
|
|
||||||
# CREATED: 2015-06-14 13:07:23
|
|
||||||
# REVISION: 2015-06-14 13:08:07
|
|
||||||
#
|
|
||||||
#===============================================================================
|
|
||||||
|
|
||||||
set -o nounset # Treat unset variables as an error
|
|
||||||
|
|
||||||
SCRIPT=${0##*/}
|
|
||||||
DIR=${0%/*}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Where the tools are
|
|
||||||
#
|
|
||||||
BASEDIR="$HOME/IA"
|
|
||||||
|
|
||||||
#
|
|
||||||
# For the moment the files for uploading are in two places
|
|
||||||
#
|
|
||||||
UPLOADS="/var/IA/uploads"
|
|
||||||
|
|
||||||
#
|
|
||||||
# Where the journal is
|
|
||||||
#
|
|
||||||
JNL="$BASEDIR/ias3upload.jnl"
|
|
||||||
|
|
||||||
#
|
|
||||||
# Default episode range
|
|
||||||
#
|
|
||||||
START=${1:-1300}
|
|
||||||
END=${2:-1799}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Go looking for missing stuff
|
|
||||||
#
|
|
||||||
for (( i=${START}; i<=${END}; i++ ))
|
|
||||||
do
|
|
||||||
if [ ! -e "$UPLOADS/hpr$i.wav" ]; then
|
|
||||||
if ! grep -q "hpr$i.wav" $JNL; then
|
|
||||||
echo "Missing hpr$i.wav";
|
|
||||||
fi;
|
|
||||||
fi;
|
|
||||||
done
|
|
||||||
|
|
||||||
exit
|
|
@ -1,224 +0,0 @@
|
|||||||
#!/bin/bash -
|
|
||||||
#===============================================================================
|
|
||||||
#
|
|
||||||
# FILE: delete_uploaded
|
|
||||||
#
|
|
||||||
# USAGE: ./delete_uploaded [-h] [-v] [-d {0|1}]
|
|
||||||
#
|
|
||||||
# DESCRIPTION: Deletes HPR audio and other show-related files on the VPS
|
|
||||||
# after their shows have been uploaded to the Internet Archive
|
|
||||||
#
|
|
||||||
# OPTIONS: ---
|
|
||||||
# REQUIREMENTS: ---
|
|
||||||
# BUGS: ---
|
|
||||||
# NOTES: Was 'delete_uploaded_new' while in development. Now replaces
|
|
||||||
# the original 'delete_uploaded'.
|
|
||||||
# AUTHOR: Dave Morriss (djm), Dave.Morriss@gmail.com
|
|
||||||
# VERSION: 0.1.4
|
|
||||||
# CREATED: 2017-08-12 12:32:13
|
|
||||||
# REVISION: 2022-03-30 10:57:23
|
|
||||||
#
|
|
||||||
#===============================================================================
|
|
||||||
|
|
||||||
set -o nounset # Treat unset variables as an error
|
|
||||||
|
|
||||||
VERSION="0.1.4"
|
|
||||||
|
|
||||||
SCRIPT=${0##*/}
|
|
||||||
#DIR=${0%/*}
|
|
||||||
|
|
||||||
STDOUT="/dev/fd/2"
|
|
||||||
|
|
||||||
#
|
|
||||||
# Make temporary files and set traps to delete them
|
|
||||||
#
|
|
||||||
TMP1=$(mktemp) || { echo "$SCRIPT: creation of temporary file failed!"; exit 1; }
|
|
||||||
trap 'cleanup_temp $TMP1' SIGHUP SIGINT SIGPIPE SIGTERM EXIT
|
|
||||||
|
|
||||||
#
|
|
||||||
# Configure depending whether local or on the VPS
|
|
||||||
#
|
|
||||||
case $HOSTNAME in
|
|
||||||
hprvps|marvin|borg) UPLOADS="/var/IA/uploads" ;;
|
|
||||||
i7-desktop) UPLOADS="$HOME/HPR/IA/uploads" ;;
|
|
||||||
*) echo "Wrong host!"; exit 1 ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
#=== FUNCTION ================================================================
|
|
||||||
# NAME: cleanup_temp
|
|
||||||
# DESCRIPTION: Cleanup temporary files in case of a keyboard interrupt
|
|
||||||
# (SIGINT) or a termination signal (SIGTERM) and at script
|
|
||||||
# exit
|
|
||||||
# PARAMETERS: * - names of temporary files to delete
|
|
||||||
# RETURNS: Nothing
|
|
||||||
#===============================================================================
|
|
||||||
function cleanup_temp {
|
|
||||||
for tmp in "$@"; do
|
|
||||||
[ -e "$tmp" ] && rm --force "$tmp"
|
|
||||||
done
|
|
||||||
exit 0
|
|
||||||
}
|
|
||||||
|
|
||||||
#=== FUNCTION ================================================================
|
|
||||||
# NAME: is_empty
|
|
||||||
# DESCRIPTION: Check whether a directory is empty
|
|
||||||
# PARAMETERS: $1 Directory to test
|
|
||||||
# RETURNS: True if empty, otherwise false
|
|
||||||
#===============================================================================
|
|
||||||
is_empty() {
|
|
||||||
test -z "$(find "$1" -mindepth 1 -printf X -quit)"
|
|
||||||
}
|
|
||||||
|
|
||||||
#=== FUNCTION ================================================================
|
|
||||||
# NAME: _usage
|
|
||||||
# DESCRIPTION: Report usage
|
|
||||||
# PARAMETERS: 1 [optional] exit value
|
|
||||||
# RETURNS: Nothing
|
|
||||||
#===============================================================================
|
|
||||||
_usage () {
|
|
||||||
local -i res="${1:-0}"
|
|
||||||
|
|
||||||
cat >$STDOUT <<-endusage
|
|
||||||
${SCRIPT} - version: ${VERSION}
|
|
||||||
|
|
||||||
Usage: ./${SCRIPT} [-h] [-v] [-d {0|1}]
|
|
||||||
|
|
||||||
Deletes HPR audio and other show-related files on the VPS after their shows
|
|
||||||
have been uploaded to the Internet Archive.
|
|
||||||
|
|
||||||
Options:
|
|
||||||
-h Print this help
|
|
||||||
-v Run in verbose mode where more information is reported
|
|
||||||
-d 0|1 Dry run: -d 1 (the default) runs the script in dry-run
|
|
||||||
mode where nothing is deleted but the actions that
|
|
||||||
will be taken are reported; -d 0 turns off dry-run
|
|
||||||
mode and the actions will be carried out.
|
|
||||||
|
|
||||||
endusage
|
|
||||||
exit "$res"
|
|
||||||
}
|
|
||||||
|
|
||||||
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
#
|
|
||||||
# Process options
|
|
||||||
#
|
|
||||||
while getopts :d:hv opt
|
|
||||||
do
|
|
||||||
case "${opt}" in
|
|
||||||
d) DRYRUN=$OPTARG;;
|
|
||||||
h) _usage 0;;
|
|
||||||
v) VERBOSE=1;;
|
|
||||||
*) _usage 1;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
shift $((OPTIND - 1))
|
|
||||||
|
|
||||||
DRYRUN=${DRYRUN:-1}
|
|
||||||
if [[ $DRYRUN -ne 0 && $DRYRUN -ne 1 ]]; then
|
|
||||||
echo "** Use '-d 0' or '-d 1'"
|
|
||||||
_usage 1
|
|
||||||
fi
|
|
||||||
[[ $DRYRUN -eq 1 ]] && echo "Dry run mode"
|
|
||||||
|
|
||||||
VERBOSE=${VERBOSE:-0}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Should have no arguments
|
|
||||||
#
|
|
||||||
if [[ $# != 0 ]]; then
|
|
||||||
echo "** ${SCRIPT} takes no arguments"
|
|
||||||
_usage 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Declarations
|
|
||||||
#
|
|
||||||
#re="^hpr[0-9]{4}"
|
|
||||||
declare -a dirs
|
|
||||||
lastitem=
|
|
||||||
|
|
||||||
while read -r path; do
|
|
||||||
#
|
|
||||||
# Extract the path relative to $UPLOADS and the IA item name from the
|
|
||||||
# returned path
|
|
||||||
#
|
|
||||||
relpath="${path#"$UPLOADS"/}"
|
|
||||||
item="${relpath:0:7}"
|
|
||||||
|
|
||||||
[ $VERBOSE -eq 1 ] && echo "Found $path"
|
|
||||||
|
|
||||||
#
|
|
||||||
# Record all directories from the 'find'. Note that this means the
|
|
||||||
# directory must begin with "^hpr[0-9]{4}", which may give a problem if
|
|
||||||
# there's a directory that doesn't conform
|
|
||||||
#
|
|
||||||
if [[ -d $path ]]; then
|
|
||||||
dirs+=("$path")
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Detect that the item prefix has changed. If it has we're processing
|
|
||||||
# a new IA identifier, so work on this one
|
|
||||||
#
|
|
||||||
if [[ $item != "$lastitem" ]]; then
|
|
||||||
lastitem=$item
|
|
||||||
|
|
||||||
[ $VERBOSE -eq 1 ] && echo "Checking IA for $lastitem"
|
|
||||||
|
|
||||||
if ia list "$lastitem" > "$TMP1"; then
|
|
||||||
#
|
|
||||||
# Scan the returned list to see if any files we have are online.
|
|
||||||
# Delete when there's a match.
|
|
||||||
#
|
|
||||||
while read -r file; do
|
|
||||||
if [[ -e "$UPLOADS/$file" ]]; then
|
|
||||||
#
|
|
||||||
# A file on the IA exists in the upload area. Delete the
|
|
||||||
# local one if we're not in dry-run mode, otherwise just
|
|
||||||
# report the deletion we would do.
|
|
||||||
#
|
|
||||||
if [[ $DRYRUN -eq 0 ]]; then
|
|
||||||
rm -f "$UPLOADS/$file"
|
|
||||||
echo "Deleted $UPLOADS/$file"
|
|
||||||
else
|
|
||||||
echo "Would delete $UPLOADS/$file"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done < "$TMP1"
|
|
||||||
else
|
|
||||||
#
|
|
||||||
# End the outer 'while' loop because we hit an item not on the IA.
|
|
||||||
# We rely on the list being sorted for this to be sensible
|
|
||||||
#
|
|
||||||
[ $VERBOSE -eq 1 ] && echo "Item not found on IA: $lastitem"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
#
|
|
||||||
# Ignore all but the first file belonging to an IA identifier
|
|
||||||
#
|
|
||||||
[ $VERBOSE -eq 1 ] && echo "Skipped $path"
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
|
|
||||||
done < <(find "$UPLOADS" -regextype posix-extended -regex '.*hpr[0-9]{4}.*' | sort)
|
|
||||||
|
|
||||||
#
|
|
||||||
# Clean up any empty directories
|
|
||||||
#
|
|
||||||
for dir in "${dirs[@]}"; do
|
|
||||||
if is_empty "$dir"; then
|
|
||||||
if [[ $DRYRUN -eq 0 ]]; then
|
|
||||||
rmdir "$dir"
|
|
||||||
echo "Deleted $dir"
|
|
||||||
else
|
|
||||||
echo "Would delete $dir"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
exit
|
|
||||||
|
|
||||||
# vim: syntax=sh:ts=8:sw=4:ai:et:tw=78:fo=tcrqn21
|
|
||||||
|
|
Binary file not shown.
@ -1,304 +0,0 @@
|
|||||||
#!/bin/bash -
|
|
||||||
#===============================================================================
|
|
||||||
#
|
|
||||||
# FILE: weekly_upload
|
|
||||||
#
|
|
||||||
# USAGE: ./weekly_upload [-h] [-r] [-v] [-d {0|1}] start [count]
|
|
||||||
#
|
|
||||||
# DESCRIPTION: Run the commands necessary to upload a batch of HPR shows to
|
|
||||||
# archive.org
|
|
||||||
#
|
|
||||||
# ** NOW OBSOLETE **
|
|
||||||
# We do uploads differently now.
|
|
||||||
#
|
|
||||||
# OPTIONS: ---
|
|
||||||
# REQUIREMENTS: ---
|
|
||||||
# BUGS: ---
|
|
||||||
# NOTES: ---
|
|
||||||
# AUTHOR: Dave Morriss (djm), Dave.Morriss@gmail.com
|
|
||||||
# VERSION: 0.0.9
|
|
||||||
# CREATED: 2018-10-12 21:54:35
|
|
||||||
# REVISION: 2020-10-13 13:54:32
|
|
||||||
#
|
|
||||||
#===============================================================================
|
|
||||||
|
|
||||||
echo "Obsolete script. Do not use!"
|
|
||||||
cmd='exit'; $cmd
|
|
||||||
|
|
||||||
set -o nounset # Treat unset variables as an error
|
|
||||||
|
|
||||||
SCRIPT=${0##*/}
|
|
||||||
#DIR=${0%/*}
|
|
||||||
VERSION="0.0.9"
|
|
||||||
|
|
||||||
STDOUT="/dev/fd/2"
|
|
||||||
|
|
||||||
#
|
|
||||||
# Select the appropriate working directory
|
|
||||||
#
|
|
||||||
case $(hostname) in
|
|
||||||
i7-desktop)
|
|
||||||
BASEDIR="$HOME/HPR/InternetArchive"
|
|
||||||
UPLOAD="$BASEDIR/uploads"
|
|
||||||
;;
|
|
||||||
hprvps|marvin|borg)
|
|
||||||
BASEDIR="$HOME/IA"
|
|
||||||
UPLOAD="/var/IA/uploads"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Wrong host!"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
cd "$BASEDIR" || exit 1
|
|
||||||
|
|
||||||
#
|
|
||||||
# Load library functions
|
|
||||||
#
|
|
||||||
LIB="$HOME/bin/function_lib.sh"
|
|
||||||
[ -e "$LIB" ] || { echo "Unable to source functions"; exit; }
|
|
||||||
# shellcheck disable=SC1090
|
|
||||||
source "$LIB"
|
|
||||||
|
|
||||||
|
|
||||||
#=== FUNCTION ================================================================
|
|
||||||
# NAME: check_uploads
|
|
||||||
# DESCRIPTION: Determines if files exist for uploading
|
|
||||||
# PARAMETERS: 1 - filename prefix e.g. 'hpr9999'
|
|
||||||
# RETURNS: True/false
|
|
||||||
#===============================================================================
|
|
||||||
check_uploads () {
|
|
||||||
local prefix=${1:?Usage: check_uploads prefix}
|
|
||||||
local suff
|
|
||||||
|
|
||||||
#
|
|
||||||
# Look for files called hpr1234.flac and so on. Don't bother with the
|
|
||||||
# hpr1234_source.flac one. As soon as a file is missing return with false.
|
|
||||||
#
|
|
||||||
for suff in flac mp3 ogg opus spx wav; do
|
|
||||||
if [[ ! -e $UPLOAD/$prefix.$suff ]]; then
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
#=== FUNCTION ================================================================
|
|
||||||
# NAME: _usage
|
|
||||||
# DESCRIPTION: Reports usage; always exits the script after doing so
|
|
||||||
# PARAMETERS: 1 - the integer to pass to the 'exit' command
|
|
||||||
# RETURNS: Nothing
|
|
||||||
#===============================================================================
|
|
||||||
_usage () {
|
|
||||||
local -i result=${1:-0}
|
|
||||||
|
|
||||||
cat >$STDOUT <<-endusage
|
|
||||||
${SCRIPT} - version: ${VERSION}
|
|
||||||
|
|
||||||
Usage: ./${SCRIPT} [-h] [-r] [-v] [-d {0|1}] start [count]
|
|
||||||
|
|
||||||
Generates the necessary metadata and script and uses them to upload HPR audio
|
|
||||||
and other show-related files held on the VPS to the Internet Archive.
|
|
||||||
|
|
||||||
Options:
|
|
||||||
-h Print this help
|
|
||||||
-v Run in verbose mode where more information is reported
|
|
||||||
-d 0|1 Dry run: -d 1 (the default) runs the script in dry-run
|
|
||||||
mode where nothing is changed but the actions that
|
|
||||||
will be taken are reported; -d 0 turns off dry-run
|
|
||||||
mode and the actions will be carried out.
|
|
||||||
-r Run in 'remote' mode, using the live database over an
|
|
||||||
(already established) SSH tunnel. Default is to run
|
|
||||||
against the local database.
|
|
||||||
Arguments:
|
|
||||||
start the starting show number to be uploaded
|
|
||||||
count (optional, default 1) the number of shows to be
|
|
||||||
uploaded; cannot exceed 20
|
|
||||||
|
|
||||||
Notes:
|
|
||||||
|
|
||||||
1. When running on 'marvin' the method used is to run in faux 'local' mode.
|
|
||||||
This means we have an open tunnel to the HPR server (mostly left open) and
|
|
||||||
the default file .hpr_db.cfg points to the live database via this tunnel.
|
|
||||||
So we do not use the -r option here. This is a bit of a hack! Sorry!
|
|
||||||
|
|
||||||
2. There are potential problems when a show has no tags which haven't been
|
|
||||||
fully resolved. The make_metadata script fails in default mode when it
|
|
||||||
finds such a show, but this (weekly_upload) script can continue on and run
|
|
||||||
the generated script which uploads the source audio files. This can mean
|
|
||||||
the IA items end up as books! In this mode the description is not stored
|
|
||||||
and so there are no show notes.
|
|
||||||
|
|
||||||
endusage
|
|
||||||
exit "$result"
|
|
||||||
}
|
|
||||||
|
|
||||||
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
#
|
|
||||||
# Process options
|
|
||||||
#
|
|
||||||
while getopts :d:hrv opt
|
|
||||||
do
|
|
||||||
case "${opt}" in
|
|
||||||
d) DRYRUN=$OPTARG;;
|
|
||||||
h) _usage 1;;
|
|
||||||
r) REMOTE=1;;
|
|
||||||
v) VERBOSE=1;;
|
|
||||||
*) _usage 1;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
shift $((OPTIND - 1))
|
|
||||||
|
|
||||||
DRYRUN=${DRYRUN:-1}
|
|
||||||
if [[ $DRYRUN -ne 0 && $DRYRUN -ne 1 ]]; then
|
|
||||||
echo "** Use '-d 0' or '-d 1'"
|
|
||||||
_usage 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
VERBOSE=${VERBOSE:-0}
|
|
||||||
|
|
||||||
REMOTE=${REMOTE:-0}
|
|
||||||
if [[ $REMOTE -eq 0 ]]; then
|
|
||||||
dbconfig="$BASEDIR/.hpr_db.cfg"
|
|
||||||
[[ $VERBOSE -eq 1 ]] && echo "Local database mode"
|
|
||||||
else
|
|
||||||
dbconfig="$BASEDIR/.hpr_livedb.cfg"
|
|
||||||
[[ $VERBOSE -eq 1 ]] && echo "Remote database mode"
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Check argument count
|
|
||||||
#
|
|
||||||
if [[ ! ( $# -eq 1 || $# -eq 2 ) ]]; then
|
|
||||||
echo "Wrong number of arguments"
|
|
||||||
_usage 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Validate arguments
|
|
||||||
#
|
|
||||||
for arg; do
|
|
||||||
if [[ ! $arg =~ ^[0-9]{1,4}$ ]]; then
|
|
||||||
echo "Invalid number: $arg"
|
|
||||||
echo "Use a plain number"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
start=$1
|
|
||||||
count=${2:-1}
|
|
||||||
if [[ $count -gt 20 ]]; then
|
|
||||||
echo "Can't process more than 20 shows at a time"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
[[ $VERBOSE -eq 1 && $DRYRUN -eq 1 ]] && echo "Dry run mode"
|
|
||||||
|
|
||||||
#
|
|
||||||
# Two paths; one for a single episode, the other for multiple episodes
|
|
||||||
#
|
|
||||||
if [[ $count -eq 1 ]]; then
|
|
||||||
#
|
|
||||||
# Single episode
|
|
||||||
# --------------
|
|
||||||
|
|
||||||
#
|
|
||||||
# Check existence of files
|
|
||||||
#
|
|
||||||
if ! check_uploads "hpr$start"; then
|
|
||||||
echo "Missing files for show $start. Aborted!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Define files
|
|
||||||
#
|
|
||||||
metadata="metadata_${start}.csv"
|
|
||||||
script="script_${start}.sh"
|
|
||||||
|
|
||||||
if [[ $DRYRUN -eq 1 ]]; then
|
|
||||||
echo "Dry run: Would have uploaded $start"
|
|
||||||
echo "Dry run: Would have created $metadata and $script"
|
|
||||||
echo "Dry run: Would have uploaded $metadata and run $script"
|
|
||||||
echo "Dry run: Would have used $dbconfig"
|
|
||||||
else
|
|
||||||
echo "Uploading $start"
|
|
||||||
if yes_no "OK to continue? %s " "N"; then
|
|
||||||
# shellcheck disable=SC2086
|
|
||||||
{
|
|
||||||
#
|
|
||||||
# Make the metadata
|
|
||||||
#
|
|
||||||
$BASEDIR/make_metadata -dbconf=${dbconfig} -from=$start -verb -out -script
|
|
||||||
RES=$?
|
|
||||||
if [[ $RES -eq 0 ]]; then
|
|
||||||
ia upload --retries=3 --spreadsheet=${metadata} \
|
|
||||||
-H x-archive-keep-old-version:0 && ./${script}
|
|
||||||
else
|
|
||||||
echo "Upload aborted due to errors"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "Not uploaded"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
#
|
|
||||||
# Multiple episodes
|
|
||||||
# -----------------
|
|
||||||
#
|
|
||||||
# Compute end show number
|
|
||||||
#
|
|
||||||
((end = start + count - 1))
|
|
||||||
|
|
||||||
#
|
|
||||||
# Check existence of files
|
|
||||||
#
|
|
||||||
for (( i = start; i < end; i++ )); do
|
|
||||||
if ! check_uploads "hpr$i"; then
|
|
||||||
echo "Missing files for show $i. Aborted!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
#
|
|
||||||
# Define files
|
|
||||||
#
|
|
||||||
metadata="metadata_${start}-${end}.csv"
|
|
||||||
script="script_${start}-${end}.sh"
|
|
||||||
|
|
||||||
if [[ $DRYRUN -eq 1 ]]; then
|
|
||||||
echo "Dry run: Would have uploaded $start to $end inclusive"
|
|
||||||
echo "Dry run: Would have created $metadata and $script"
|
|
||||||
echo "Dry run: Would have uploaded $metadata and run $script"
|
|
||||||
echo "Dry run: Would have used $dbconfig"
|
|
||||||
else
|
|
||||||
echo "Uploading $start to $end inclusive"
|
|
||||||
if yes_no "OK to continue? %s " "N"; then
|
|
||||||
# shellcheck disable=2086
|
|
||||||
{
|
|
||||||
#
|
|
||||||
# Make the metadata
|
|
||||||
#
|
|
||||||
$BASEDIR/make_metadata -dbconf=${dbconfig} -from=$start -count=$count -verb -out -script
|
|
||||||
RES=$?
|
|
||||||
if [[ $RES -eq 0 ]]; then
|
|
||||||
ia upload --retries=3 --spreadsheet=${metadata} \
|
|
||||||
-H x-archive-keep-old-version:0 && ./${script}
|
|
||||||
else
|
|
||||||
echo "Upload aborted due to errors"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "Not uploaded"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
exit
|
|
||||||
|
|
||||||
# vim: syntax=sh:ts=8:sw=4:ai:et:tw=78:fo=tcrqn21
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user