diff --git a/src/usr/local/bin/mediaconch_validation_wrapper.sh b/src/usr/local/bin/mediaconch_validation_wrapper.sh new file mode 100755 index 0000000000000000000000000000000000000000..a5167c1130ccb788aec97ece4be3ca86bff8c51b --- /dev/null +++ b/src/usr/local/bin/mediaconch_validation_wrapper.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash +# Author: Jens Steidl +# SLUB Dresden, Department Longterm Preservation +# copyright 2023, licensed under terms of GNU General Public License 3.0, +# see file LICENSE.txt for details. +### META +# AUTHORS: +# - Jens Steidl (<Jens.Steidl@slub-dresden.de>) + +if [[ $# -eq 0 ]]; then + echo "No file path supplied." + exit 1; +fi +FILE="${@: -1:1}" +if ! [[ -f "${FILE}" ]]; then + echo "File '${FILE}' does not exist." + exit 1; +fi + +TOOL_OUTPUT=$(/usr/bin/mediaconch ${@: 1:$(($#-1))} "${FILE}") +echo "${TOOL_OUTPUT}" + +# exit code +# 0 -> valid media file +# 1 -> invalid media file +echo ${TOOL_OUTPUT} | grep "Outcome" | head -n1 | grep -v "fail" diff --git a/src/usr/local/bin/validate_workflow.sh b/src/usr/local/bin/validate_workflow.sh index ae455e48a17392697c4309fff688f5c820fab054..194626749e42b7953a807dffae0fd563ef2e464d 100755 --- a/src/usr/local/bin/validate_workflow.sh +++ b/src/usr/local/bin/validate_workflow.sh @@ -94,12 +94,12 @@ declare -A validators # filetype has max 4 chars # stage has max 9 chars # each validator should return true if file was valid -validators[__mediathek_mka__current]="/usr/bin/mediaconch -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE| fgrep Outcome| head -n 1| fgrep -v fail" -validators[__mediathek_mka_upcoming]="/usr/bin/mediaconch -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE| fgrep Outcome| head -n 1| fgrep -v fail" -validators[_______save_mkv__current]="/usr/bin/mediaconch -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE| fgrep Outcome| head -n 1| fgrep -v fail" -validators[_______save_mkv_upcoming]="/usr/bin/mediaconch -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE| fgrep Outcome| head -n 1| fgrep -v fail" -validators[_______save_mka__current]="/usr/bin/mediaconch -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE| fgrep Outcome| head -n 1| fgrep -v fail" -validators[_______save_mka_upcoming]="/usr/bin/mediaconch -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE| fgrep Outcome| head -n 1| fgrep -v fail" +validators[__mediathek_mka__current]="/usr/local/bin/mediaconch_validation_wrapper.sh -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE" +validators[__mediathek_mka_upcoming]="/usr/local/bin/mediaconch_validation_wrapper.sh -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE" +validators[_______save_mkv__current]="/usr/local/bin/mediaconch_validation_wrapper.sh -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE" +validators[_______save_mkv_upcoming]="/usr/local/bin/mediaconch_validation_wrapper.sh -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE" +validators[_______save_mka__current]="/usr/local/bin/mediaconch_validation_wrapper.sh -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE" +validators[_______save_mka_upcoming]="/usr/local/bin/mediaconch_validation_wrapper.sh -ft -p /usr/local/etc/SLUB_mediaconch_policy_all.xml FILE" validators[________ddz_tif__current]="/usr/bin/checkit_tiff_current /usr/local/etc/cit_tiff6_baseline_SLUB_current.cfg FILE" validators[________ddz_tif_upcoming]="/usr/bin/checkit_tiff_upcoming /usr/local/etc/cit_tiff6_baseline_SLUB_upcoming.cfg FILE" validators[______digas_tif__current]="/usr/bin/checkit_tiff_current /usr/local/etc/cit_tiff6_geotiff_SLUB_current.cfg FILE" @@ -122,8 +122,8 @@ validators[__forensdta_ewf_upcoming]="/usr/bin/ewfverify -v FILE" validators[__forensdta_ewf__current]="/usr/bin/ewfverify -v FILE" validators[_retromuenz_tif_upcoming]="/usr/bin/checkit_tiff_upcoming -mq /usr/share/checkit_tiff_upcoming/example_configs/cit_tiff_retrofotos_SLUB.cfg FILE" validators[_retromuenz_tif__current]="/usr/bin/checkit_tiff_current -mq /usr/share/checkit_tiff_current/example_configs/cit_tiff_retrofotos_SLUB.cfg FILE" -validators[____retrovf_mkv__current]="/usr/bin/mediaconch -ft -p /usr/local/etc/mediaconch/SLUB_mediaconch_policy_all.xml FILE" -validators[____retrovf_mkv_upcoming]="/usr/bin/mediaconch -ft -p /usr/local/etc/mediaconch/SLUB_mediaconch_policy_all.xml FILE" +validators[____retrovf_mkv__current]="/usr/local/bin/mediaconch_validation_wrapper.sh -ft -p /usr/local/etc/mediaconch/SLUB_mediaconch_policy_all.xml FILE" +validators[____retrovf_mkv_upcoming]="/usr/local/bin/mediaconch_validation_wrapper.sh -ft -p /usr/local/etc/mediaconch/SLUB_mediaconch_policy_all.xml FILE" set -o nounset # Treat unset variables as an error