diff --git a/formatlto b/formatlto index cbe7a3c..188d964 100755 --- a/formatlto +++ b/formatlto @@ -17,7 +17,7 @@ _usage(){ exit } -. "${SCRIPTDIR}/ltofunctions" || { echo "Missing '${SCRIPTDIR}/ltofunctions'. Exiting." ; exit 1 ;}; +. "${SCRIPTDIR}/mmfunctions" || { echo "Missing '${SCRIPTDIR}/mmfunctions'. Exiting." ; exit 1 ;}; dependencies=(mkltfs) diff --git a/lto2filemaker b/lto2filemaker index 6419801..0f9334a 100755 --- a/lto2filemaker +++ b/lto2filemaker @@ -20,7 +20,7 @@ _usage(){ [ "${#}" = 0 ] && _usage SCRIPTDIR=$(dirname "${0}") -. "${SCRIPTDIR}/ltofunctions" || { echo "Missing '${SCRIPTDIR}/ltofunctions'. Exiting." ; exit 1 ;}; +. "${SCRIPTDIR}/mmfunctions" || { echo "Missing '${SCRIPTDIR}/mmfunctions'. Exiting." ; exit 1 ;}; # command-line options OPTIND=1 diff --git a/ltofunctions b/ltofunctions deleted file mode 100644 index 7fffa63..0000000 --- a/ltofunctions +++ /dev/null @@ -1,155 +0,0 @@ -# assign variables - -SCRIPTNAME=$(basename "${0}") -SCRIPTDIR=$(dirname "${0}") -CONFIG_FILE="${SCRIPTDIR}/ltoper.conf" -WHAT_IS_THIS="ltoper" - -# load configuration file -if [ -f "${CONFIG_FILE}" ] ; then - . "${CONFIG_FILE}" -elif [ ! "${CONFIG}" = "Y" -a "${REQUIRECONFIG}" = "Y" ] ; then - echo "The configuration file is not set. You amust first create ${CONFIG_FILE} by running ltoperconfig." 1>&2 - exit 1 -fi - -_maketemp(){ - mktemp -q "/tmp/$(basename ${0}).XXXXXX" - if [ ${?} -ne 0 ]; then - echo "${0}: Can't create temp file, exiting..." - exit 1 - fi -} - -_get_iso8601(){ - date +%FT%T -} - -_report(){ - local RED="$(tput setaf 1)" # Red - For Warnings - local GREEN="$(tput setaf 2)" # Green - For Declarations - local BLUE="$(tput setaf 4)" # Blue - For Questions - local NC="$(tput sgr0)" # No Color - local COLOR="" - local START_MESSAGE="" - local END_MESSAGE="" - local ECHOOPT="" - OPTIND=1 - while getopts ":qdwstn" opt; do - case "$opt" in - q) COLOR="${BLUE}" ;; # question mode, use color blue - d) COLOR="${GREEN}" ;; # declaration mode, use color green - w) COLOR="${RED}" ; LOG="Y";; # warning mode, use color red - s) START_MESSAGE+=([$(basename $0)] ) ;; # prepend scriptname to the message - t) START_MESSAGE+=($(_get_iso8601) '- ' ) ;; # prepend timestamp to the message - n) ECHOOPT="-n" ;; # to avoid line breaks after echo - esac - done - shift $(( ${OPTIND} - 1 )) - MESSAGE="$1" - echo "${ECHOOPT}" "${COLOR}${START_MESSAGE[@]}${MESSAGE}${NC}" - [ "${LOG}" = "Y" ] && _log -w "${MESSAGE}" -} - -_config_edit(){ - [ -z "${1}" -o -z "${2}" ] && { _report -w "The config_edit function requires two arguments. Error." ; exit ;}; - SEDTEMP=$(_maketemp) - sed "s:^$1=[^ ]*:$1=$2:" "${CONFIG_FILE}" > "${SEDTEMP}" - cp "${SEDTEMP}" "${CONFIG_FILE}" -} - -_test_config(){ - for DIRECTORYVARIABLE in OUTDIR_INGESTFILE OUTDIR_INGESTXDCAM OUTDIR_PAPER AIP_STORAGE PODCASTDELIVER YOUTUBEDELIVER TMPDIR CUSTOM_LOG_DIR LTO_INDEX_DIR ; do - if [ -d "${!DIRECTORYVARIABLE}" ] ; then - _report -d "${DIRECTORYVARIABLE} is a valid directory" - else - _report -w "${DIRECTORYVARIABLE} is NOT a valid directory" - fi - done -} - -_add_key(){ - KEY_TO_ADD="${1}" - grep -q "^$KEY_TO_ADD=" "${CONFIG_FILE}" ; GREP_CODE="$?" - if [[ ! "${GREP_CODE}" -eq "0" ]] ; then - _report -td "Adding NEW variable $key_to_add to ${CONFIG_FILE}" - echo "$KEY_TO_ADD=" >> "${CONFIG_FILE}" - fi -} - -_cleanup(){ - if [ -d "${MOUNT_DIR}" ] ; then - echo calling umount - umount "${MOUNT_DIR}" - rmdir "${MOUNT_DIR}" - fi -} - -_version_schema(){ - SCHEMA_FILE="$LTO_LOGS/${TAPE_SERIAL}.schema" - if [ -f "${SCHEMA_FILE}" ] ; then - echo "${GREEN}Creating a new version of the ltfs schema file.${NC}" - LASTSCHEMA="${SCHEMA_FILE%.*}_$(stat -t '%Y%m%d-%H%M%S' -l "${SCHEMA_FILE}" | awk '{print $6}').schema" - mv -v "${SCHEMA_FILE}" "${LASTSCHEMA}" - echo "${GREEN}$(basename ${0}): schema file is versioned - ${SCHEMA_FILE} -> ${LASTSCHEMA}.${NC}" - fi -} - -_checkdir(){ -if [[ ! -d "${1}" ]] ; then - echo "${1}" is not a directory. - usage - exit 1 -fi -} - -_pashua_run() { - # Wrapper function for interfacing to Pashua. Written by Carsten - # Bluem in 10/2003, modified in 12/2003 (including - # a code snippet contributed by Tor Sigurdsson), 08/2004 and 12/2004. - # Write config file - - # Find Pashua binary. We do search both . and dirname "$0" - # , as in a doubleclickable application, cwd is / - # BTW, all these quotes below are necessary to handle paths - # containing spaces. - BUNDLE_PATH="Pashua.app/Contents/MacOS/Pashua" - MY_PATH=`dirname "${0}"` - for SEARCH_PATH in "$mypath/Pashua" "$mypath/${BUNDLE_PATH}" "./${BUNDLE_PATH}" \ - "/Applications/${BUNDLE_PATH}" "$HOME/Applications/${BUNDLE_PATH}" - do - if [ -f "${SEARCH_PATH}" -a -x "${SEARCH_PATH}" ] - then - PASHUA_PATH="${SEARCH_PATH}" - break - fi - done - if [ ! "${PASHUA_PATH}" ] ; then - echo "Error: Pashua is used to edit but is not found." - if [[ "${PASHUA_INSTALL}" == "" ]] ; then - echo "Attempting to run: brew cask install pashua" - if [[ "${PASHUA_INSTALL}" != "Y" ]] ; then - brew cask install pashua - PASHUA_INSTALL="Y" - _pashua_run - else - break 2 - fi - fi - else - ENCODING="" - - # Get result - result=`"${PASHUA_PATH}" ${ENCODING} ${pashua_configfile} | sed 's/ /;;;/g'` - - # Parse result - for line in $result - do - key=`echo $line | sed 's/^\([^=]*\)=.*$/\1/'` - value=`echo $line | sed 's/^[^=]*=\(.*\)$/\1/' | sed 's/;;;/ /g'` - varname=$key - varvalue="$value" - eval $varname='$varvalue' - done - fi -} # pashua_run() diff --git a/ltoperconfig b/ltoperconfig index f75ae07..735269e 100755 --- a/ltoperconfig +++ b/ltoperconfig @@ -4,14 +4,14 @@ CONFIG="Y" CONFIG_VERSION="1.0" SCRIPTDIR=$(dirname "$0") -CONFIG_FILE="${SCRIPTDIR}/ltoper.conf" +LTO_CONFIG_FILE="${SCRIPTDIR}/ltoper.conf" SCRIPTDIR=$(dirname "${0}") -. "${SCRIPTDIR}/ltofunctions" || { echo "Missing '${SCRIPTDIR}/ltofunctions'. Exiting." ; exit 1 ;}; +. "${SCRIPTDIR}/mmfunctions" || { echo "Missing '${SCRIPTDIR}/mmfunctions'. Exiting." ; exit 1 ;}; -if [ -f "${CONFIG_FILE}" ] ; then - . "${CONFIG_FILE}" +if [ -f "${LTO_CONFIG_FILE}" ] ; then + . "${LTO_CONFIG_FILE}" else - touch "${CONFIG_FILE}" + touch "${LTO_CONFIG_FILE}" fi conf=" @@ -86,24 +86,24 @@ cb.type=cancelbutton echo "" # write config file - echo "#$(basename "${0}") config file" > "${CONFIG_FILE}" - echo "${config_comment}" >> "${CONFIG_FILE}" + echo "#$(basename "${0}") config file" > "${LTO_CONFIG_FILE}" + echo "${config_comment}" >> "${LTO_CONFIG_FILE}" - echo "${FILEMAKER_USER_COMMENT}" >> "${CONFIG_FILE}" - echo "FILEMAKER_USER=\"${FILEMAKER_USER}\"" >> "${CONFIG_FILE}" - echo >> "${CONFIG_FILE}" + echo "${FILEMAKER_USER_COMMENT}" >> "${LTO_CONFIG_FILE}" + echo "FILEMAKER_USER=\"${FILEMAKER_USER}\"" >> "${LTO_CONFIG_FILE}" + echo >> "${LTO_CONFIG_FILE}" - echo "${FILEMAKER_PASS_COMMENT}" >> "${CONFIG_FILE}" - echo "FILEMAKER_PASS=\"${FILEMAKER_PASS}\"" >> "${CONFIG_FILE}" - echo >> "${CONFIG_FILE}" + echo "${FILEMAKER_PASS_COMMENT}" >> "${LTO_CONFIG_FILE}" + echo "FILEMAKER_PASS=\"${FILEMAKER_PASS}\"" >> "${LTO_CONFIG_FILE}" + echo >> "${LTO_CONFIG_FILE}" - echo "${FILEMAKER_DB_COMMENT}" >> "${CONFIG_FILE}" - echo "FILEMAKER_DB=\"${FILEMAKER_DB}\"" >> "${CONFIG_FILE}" - echo >> "${CONFIG_FILE}" + echo "${FILEMAKER_DB_COMMENT}" >> "${LTO_CONFIG_FILE}" + echo "FILEMAKER_DB=\"${FILEMAKER_DB}\"" >> "${LTO_CONFIG_FILE}" + echo >> "${LTO_CONFIG_FILE}" - echo "${FILEMAKER_XML_URL_COMMENT}" >> "${CONFIG_FILE}" - echo "FILEMAKER_XML_URL=\"${FILEMAKER_XML_URL}\"" >> "${CONFIG_FILE}" - echo >> "${CONFIG_FILE}" + echo "${FILEMAKER_XML_URL_COMMENT}" >> "${LTO_CONFIG_FILE}" + echo "FILEMAKER_XML_URL=\"${FILEMAKER_XML_URL}\"" >> "${LTO_CONFIG_FILE}" + echo >> "${LTO_CONFIG_FILE}" - . "${CONFIG_FILE}" + . "${LTO_CONFIG_FILE}" fi diff --git a/mountlto b/mountlto index 00ae43a..44b25ef 100755 --- a/mountlto +++ b/mountlto @@ -2,7 +2,7 @@ # mountlto SCRIPTDIR=$(dirname "${0}") -. "${SCRIPTDIR}/ltofunctions" || { echo "Missing '${SCRIPTDIR}/ltofunctions'. Exiting." ; exit 1 ;}; +. "${SCRIPTDIR}/mmfunctions" || { echo "Missing '${SCRIPTDIR}/mmfunctions'. Exiting." ; exit 1 ;}; unset LTO_ARRAY @@ -51,7 +51,7 @@ else fi echo "${GREEN}MOUNTING TAPE : THE TAPE WILL MOUNT TO THE ${RED}${MOUNT_DIR}${GREEN} FOLDER${NC}" echo "${GREEN}MOUNTING TAPE : AFTER MOUNT PRESS ${RED}CONTROL-C${GREEN} TO EJECT${NC}" -trap _cleanup SIGHUP SIGINT SIGTERM +trap _cleanup_mount_dir SIGHUP SIGINT SIGTERM if [ $(which ltfs_ldun) ] ; then ltfs_ldun load ${DECK} fi diff --git a/renameschemas b/renameschemas index b0c6a71..ad8529a 100755 --- a/renameschemas +++ b/renameschemas @@ -11,7 +11,7 @@ _usage(){ exit 1 } -. "${SCRIPTDIR}/ltofunctions" || { echo "Missing '${SCRIPTDIR}/ltofunctions'. Exiting." ; exit 1 ;}; +. "${SCRIPTDIR}/mmfunctions" || { echo "Missing '${SCRIPTDIR}/mmfunctions'. Exiting." ; exit 1 ;}; [ "${#}" = 0 ] && _usage # command-line options diff --git a/writelto b/writelto index 046d152..58d4e80 100755 --- a/writelto +++ b/writelto @@ -14,7 +14,7 @@ _usage(){ exit 1 } -. "${SCRIPTDIR}/ltofunctions" || { echo "Missing '${SCRIPTDIR}/ltofunctions'. Exiting." ; exit 1 ;}; +. "${SCRIPTDIR}/mmfunctions" || { echo "Missing '${SCRIPTDIR}/mmfunctions'. Exiting." ; exit 1 ;}; # command-line options OPTIND=1 @@ -43,13 +43,13 @@ find "${SOURCE_DIR}/" -name '.DS_Store' -type f -delete _checkdir "${TAPE_PATH}" -rsync -rtvO --progress "${SOURCE_DIR}/" "${TAPE_PATH}" +"${SCRIPTDIR}/migratefiles" -o "${TAPE_PATH}" "${SOURCE_DIR}/" RSYNC_ERR_1="$?" HIDDEN_FILES=$(find "${TAPE_PATH}" -name ".*") if [[ "${HIDDEN_FILES}" ]] ; then echo "Removing hidden files from tape." find "${TAPE_PATH}" -name ".*" -delete - rsync -rtvO --progress "${SOURCE_DIR}/" "${TAPE_PATH}" + "${SCRIPTDIR}/migratefiles" -o "${TAPE_PATH}" "${SOURCE_DIR}/" RSYNC_ERR_2="$?" fi umount "${TAPE_PATH}"