|
|
@@ -0,0 +1,68 @@ |
|
|
|
#!/bin/bash |
|
|
|
|
|
|
|
set -e |
|
|
|
|
|
|
|
test -d /data || { |
|
|
|
echo "No /data mount found" |
|
|
|
exit 1 |
|
|
|
} |
|
|
|
|
|
|
|
mkdir -p /data/incoming /data/chunker-work /data/packing-queue /data/packer-work-in /data/packer-work-out /data/upload-queue /data/uploader-work |
|
|
|
|
|
|
|
IA_ITEM_DATE_LIT='$( date +"%Y-%m" )' |
|
|
|
cat > /factory/config.sh << EOF |
|
|
|
#!/bin/bash |
|
|
|
MEGABYTES_PER_CHUNK="${MEGABYTES_PER_CHUNK}" |
|
|
|
IA_AUTH="${IA_AUTH}" |
|
|
|
IA_COLLECTION="${IA_COLLECTION}" |
|
|
|
IA_ITEM_TITLE="${IA_ITEM_TITLE}" |
|
|
|
IA_ITEM_PREFIX="${IA_ITEM_PREFIX}" |
|
|
|
FILE_PREFIX="${FILE_PREFIX}" |
|
|
|
IA_ITEM_DATE=${IA_ITEM_DATE_LIT} |
|
|
|
OFFLOAD_TARGET="${OFFLOAD_TARGET}" |
|
|
|
INCOMING_UPLOADS_DIR="/data/incoming" |
|
|
|
CHUNKER_WORKING_DIR="/data/chunker-work" |
|
|
|
PACKING_QUEUE_DIR="/data/packing-queue" |
|
|
|
PACKER_WORKING_CHUNKS_DIR="/data/packer-work-in" |
|
|
|
PACKER_WORKING_MEGAWARC_DIR="/data/packer-work-out" |
|
|
|
UPLOAD_QUEUE_DIR="/data/upload-queue" |
|
|
|
UPLOADER_WORKING_DIR="/data/uploader-work" |
|
|
|
COMPLETED_DIR="" |
|
|
|
EOF |
|
|
|
|
|
|
|
touch /factory/RUN |
|
|
|
|
|
|
|
case "${1}" in |
|
|
|
chunk|chunker|chunk-multiple) |
|
|
|
if test -z "${MEGABYTES_PER_CHUNK}"; then |
|
|
|
echo "Missing param: MEGABYTES_PER_CHUNK=${MEGABYTES_PER_CHUNK}" |
|
|
|
exit 1 |
|
|
|
fi |
|
|
|
exec /factory/chunk-multiple |
|
|
|
;; |
|
|
|
pack|pack-one|packer|pack-multiple) |
|
|
|
if test -z "${FILE_PREFIX}"; then |
|
|
|
echo "Missing param: FILE_PREFIX=${FILE_PREFIX}" |
|
|
|
exit 1 |
|
|
|
fi |
|
|
|
exec /factory/pack-multiple |
|
|
|
;; |
|
|
|
upload|upload-one|upload-multiple) |
|
|
|
if test -z "${IA_AUTH}" || test -z "${IA_COLLECTION}" || test -z "${IA_ITEM_TITLE}" || test -z "${IA_ITEM_PREFIX}" || test -z "${FILE_PREFIX}"; then |
|
|
|
echo "Missing param: IA_AUTH=${IA_AUTH} IA_COLLECTION=${IA_COLLECTION} IA_ITEM_TITLE=${IA_ITEM_TITLE} IA_ITEM_PREFIX=${IA_ITEM_PREFIX} FILE_PREFIX=${FILE_PREFIX}" |
|
|
|
exit 1 |
|
|
|
fi |
|
|
|
exec /factory/upload-multiple |
|
|
|
;; |
|
|
|
offload|offload-one|offload-multiple) |
|
|
|
if test -z "${OFFLOAD_TARGET}" && ! test -f "${PWD}/offload_targets"; then |
|
|
|
echo "Missing param: OFFLOAD_TARGET=${OFFLOAD_TARGET} and no ${PWD}/offload_targets existing" |
|
|
|
exit 1 |
|
|
|
fi |
|
|
|
exec /factory/offload-multiple |
|
|
|
;; |
|
|
|
*) |
|
|
|
echo "Usage: chunk|pack|upload|offload" |
|
|
|
exit 1 |
|
|
|
;; |
|
|
|
esac |