mirror of
https://github.com/FakeTV/pseudo-channel.git
synced 2025-12-06 00:13:38 +00:00
80 lines
2.0 KiB
Bash
80 lines
2.0 KiB
Bash
#!/bin/bash
|
|
|
|
# file: updatechannels.sh
|
|
|
|
#----
|
|
# Simple script to updates each channels local db with new Plex lib items / xml.
|
|
#----
|
|
|
|
#----
|
|
# To Use:
|
|
# If you added new content to your Plex Library, just make this file executable move it
|
|
# to where the plex_token.py file is and run ./updatechannels.sh
|
|
#----
|
|
|
|
# Make sure that each channel dir ends with a "_" + an incrementing number as seen above.
|
|
|
|
#----BEGIN EDITABLE VARS----
|
|
|
|
SCRIPT_TO_EXECUTE_PLUS_ARGS='PseudoChannel.py -xml'
|
|
|
|
OUTPUT_PREV_CHANNEL_PATH=.
|
|
|
|
CHANNEL_DIR_INCREMENT_SYMBOL="_"
|
|
|
|
PYTHON_TO_USE="$(which python)"
|
|
|
|
# If using 'virtualenv' with python, specify the local virtualenv dir.
|
|
VIRTUAL_ENV_DIR="env"
|
|
|
|
#----END EDITABLE VARS-------
|
|
|
|
# If virtualenv specified & exists, using that version of python instead.
|
|
if [ -d "$VIRTUAL_ENV_DIR" ]; then
|
|
|
|
PYTHON_TO_USE="$VIRTUAL_ENV_DIR/bin/python"
|
|
|
|
fi
|
|
|
|
# If virtualenv specified & exists at root of project, using that version of python instead.
|
|
if [ -d "../$VIRTUAL_ENV_DIR" ]; then
|
|
|
|
PYTHON_TO_USE="../$VIRTUAL_ENV_DIR/bin/python"
|
|
|
|
fi
|
|
|
|
# If the file exists b
|
|
|
|
# Scan the dir to see how many channels there are, store them in an arr.
|
|
CHANNEL_DIR_ARR=( $(find . -maxdepth 1 -type d -name '*'"$CHANNEL_DIR_INCREMENT_SYMBOL"'[[:digit:]]*' -printf "%P\n" | sort -t"$CHANNEL_DIR_INCREMENT_SYMBOL" -n) )
|
|
|
|
# If this script see's there are multiple channels,
|
|
# then loop through each channel and run the updates
|
|
if [ "${#CHANNEL_DIR_ARR[@]}" -gt 0 ]; then
|
|
|
|
# If virtualenv specified & exists, using that version of python instead.
|
|
if [ -d "./$channel/$VIRTUAL_ENV_DIR" ]; then
|
|
|
|
PYTHON_TO_USE=./"$channel"/"$VIRTUAL_ENV_DIR/bin/python"
|
|
|
|
fi
|
|
|
|
echo "+++++ There are ${#CHANNEL_DIR_ARR[@]} channels detected."
|
|
|
|
for channel in "${CHANNEL_DIR_ARR[@]}"
|
|
do
|
|
|
|
echo "+++++ Trying to update: $PYTHON_TO_USE $channel/$SCRIPT_TO_EXECUTE_PLUS_ARGS"
|
|
# If the running.pid file doesn't exists, create it, start PseudoChannel.py and add the PID to it.
|
|
cd "$channel"
|
|
"$PYTHON_TO_USE" $SCRIPT_TO_EXECUTE_PLUS_ARGS
|
|
cd ..
|
|
|
|
sleep 1
|
|
|
|
done
|
|
|
|
fi
|
|
|
|
exit 0
|