ytdl-sub/docker/root/custom-cont-init.d/defaults-gui
2024-06-19 00:44:51 -07:00

55 lines
1.7 KiB
Text

#!/usr/bin/with-contenv bash
# Exit if not gui
if [ "$YTDL_SUB_TYPE" != "gui" ] ; then
exit 0
fi
echo "Checking ytdl-sub-gui defaults..."
# clear the cron logs on start, always
echo > /config/ytdl-sub-configs/cron_logs.txt
# copy config
[[ ! -e /config/ytdl-sub-configs/config.yaml ]] && \
mkdir -p /config/ytdl-sub-configs && \
cp /defaults/config.yaml /config/ytdl-sub-configs/config.yaml
[[ ! -e /config/ytdl-sub-configs/subscriptions.yaml ]] && \
mkdir -p /config/ytdl-sub-configs && \
cp /defaults/subscriptions.yaml /config/ytdl-sub-configs/subscriptions.yaml
[[ ! -d /config/ytdl-sub-configs/examples ]] && \
mkdir -p /config/ytdl-sub-configs/examples && \
cp /defaults/examples/* /config/ytdl-sub-configs/examples
[[ ! -d /config/ytdl-sub-configs/cron_script ]] && \
mkdir -p /config/ytdl-sub-configs && \
cp /defaults/cron_script /config/ytdl-sub-configs/cron_script
if [ -n "$CRON_SCHEDULE" ] ; then
# put it into the crontab file
echo "# min hour day month weekday command" > /config/crontabs/abc
echo " ${CRON_SCHEDULE} /config/ytdl-sub-configs/cron_script | tee -a /config/ytdl-sub-configs/cron_logs.txt" >> /config/crontabs/abc
# restart cron
/etc/init.d/cron reload
# check cron
crontab -u abc -l
ret=$?
if [ $ret -eq 0 ]; then
echo "Cron schedule is successfully set to ${CRON_SCHEDULE}"
if [ "$CRON_RUN_ON_START" = true ] ; then
# Run cron script on start
su - abc -c "/config/ytdl-sub-configs/cron_script | tee -a /config/ytdl-sub-configs/cron_logs.txt" &
fi
else
echo "Cron schedule is invalid, disabling"
fi
fi
# permissions
chown -R ${PUID:-abc}:${PGID:-abc} \
/config