2023-07-20 12:26:49 +02:00
log ( ) {
m_time = ` date "+%F %T" `
2023-09-21 12:30:40 +02:00
echo $m_time " :: $scriptName :: $scriptVersion :: " $1 2>& 1 | tee -a " /config/logs/ $logFileName "
2023-07-20 12:26:49 +02:00
}
logfileSetup ( ) {
2023-09-21 12:30:02 +02:00
logFileName = " $scriptName - $( date +"%Y_%m_%d_%I_%M_%p" ) .txt "
2023-09-21 12:38:53 +02:00
# delete log files older than 5 days
find "/config/logs" -type f -iname " $scriptName -*.txt " -mtime +5 -delete
2023-09-21 12:30:02 +02:00
if [ ! -f " /config/logs/ $logFileName " ] ; then
echo "" > " /config/logs/ $logFileName "
chmod 666 " /config/logs/ $logFileName "
2023-07-20 12:26:49 +02:00
fi
}
getArrAppInfo ( ) {
# Get Arr App information
if [ -z " $arrUrl " ] || [ -z " $arrApiKey " ] ; then
arrUrlBase = " $( cat /config/config.xml | xq | jq -r .Config.UrlBase) "
if [ " $arrUrlBase " = = "null" ] ; then
arrUrlBase = ""
else
2024-01-17 03:28:34 +01:00
arrUrlBase = " / $( echo " $arrUrlBase " | sed "s/\///" ) "
2023-07-20 12:26:49 +02:00
fi
arrName = " $( cat /config/config.xml | xq | jq -r .Config.InstanceName) "
arrApiKey = " $( cat /config/config.xml | xq | jq -r .Config.ApiKey) "
arrPort = " $( cat /config/config.xml | xq | jq -r .Config.Port) "
arrUrl = " http://127.0.0.1: ${ arrPort } ${ arrUrlBase } "
fi
}
verifyApiAccess ( ) {
until false
do
arrApiTest = ""
arrApiVersion = ""
if [ " $arrPort " = = "8989" ] || [ " $arrPort " = = "7878" ] ; then
arrApiVersion = "v3"
elif [ " $arrPort " = = "8686" ] || [ " $arrPort " = = "8787" ] ; then
arrApiVersion = "v1"
fi
arrApiTest = $( curl -s " $arrUrl /api/ $arrApiVersion /system/status?apikey= $arrApiKey " | jq -r .instanceName)
if [ " $arrApiTest " = = " $arrName " ] ; then
break
else
log " $arrName is not ready, sleeping until valid response... "
sleep 1
fi
done
}
2023-08-12 16:37:43 +02:00
ConfValidationCheck ( ) {
if [ ! -f "/config/extended.conf" ] ; then
log "ERROR :: \"extended.conf\" file is missing..."
log "ERROR :: Download the extended.conf config file and place it into \"/config\" folder..."
log "ERROR :: Exiting..."
exit
fi
if [ -z " $enableAutoConfig " ] ; then
log "ERROR :: \"extended.conf\" file is unreadable..."
log "ERROR :: Likely caused by editing with a non unix/linux compatible editor, to fix, replace the file with a valid one or correct the line endings..."
log "ERROR :: Exiting..."
exit
fi
}
2023-08-12 16:41:38 +02:00
logfileSetup
ConfValidationCheck