Files
pseudo-channel/update-channels-from-git.sh
mutto233 ea70ed38ce Directory Revamp
Before making changes to the update-channels-from-git.sh file, I wanted to have everything stored in such a way that it made logical sense where it went.

Anything that goes to the root folder is in "main-dir", channel specific files are in "channel-dir", and the files for both sections are in "both-dir".  These directories will eventually be referenced in the new version of "update-channels-from-git.sh".
2018-06-29 16:27:29 -04:00

72 lines
1.5 KiB
Bash

#!/bin/bash
# file: update-channels-from-git.sh
#----
# Simple script to update every channel with updates from the github repo.
# BACKUP EACH XML/DB IN EACH CHANNEL.
#----
#----
# To Use:
# chmod +x update-channels-from-git.sh
# ./update-channels-from-git.sh
#----
#----BEGIN EDITABLE VARS----
SCRIPT_TO_EXECUTE_PLUS_ARGS='git clone https://github.com/justinemter/pseudo-channel . --branch develop'
OUTPUT_PREV_CHANNEL_PATH=.
CHANNEL_DIR_INCREMENT_SYMBOL="_"
#----END EDITABLE VARS-------
# 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 clone the repo there
if [ "${#CHANNEL_DIR_ARR[@]}" -gt 1 ]; then
echo "+++++ There are ${#CHANNEL_DIR_ARR[@]} channels detected."
for channel in "${CHANNEL_DIR_ARR[@]}"
do
echo "+++++ Trying to update channel:"./"$channel"/$SCRIPT_TO_EXECUTE_PLUS_ARGS
cd "$channel"
mkdir ../.pseudo-temp
cp ./pseudo-channel.db ../.pseudo-temp
cp ./pseudo_schedule.xml ../.pseudo-temp
cp ./pseudo_config.py ../.pseudo-temp
find -mindepth 1 -delete && $SCRIPT_TO_EXECUTE_PLUS_ARGS
cp ../.pseudo-temp/pseudo-channel.db .
cp ../.pseudo-temp/pseudo_schedule.xml .
cp ../.pseudo-temp/pseudo_config.py .
echo "+++++ Done."
sleep 1
rm -rf ../.pseudo-temp
cd ../
sleep 1
done
fi
exit 0