lowtechmag-solar_v2/utils/build_site.sh

52 wiersze
1.5 KiB
Bash

#!/bin/bash
# © 2023 Roel Roscam Abbing, released as AGPLv3
# see https://www.gnu.org/licenses/agpl-3.0.html
# Support your local low-tech magazine: https://solar.lowtechmagazine.com/donate/
now=`date`
baseURL="" #the URL of the website e.g. htttps://solar.lowtechmagazine.com/
contentDir="" #the directory where your HUGO articles are e.g. /path/to/repo/solar_v2/content/
repoDir="" #the full path to the repository
outputDir="" # the directory where you export the site to.
while getopts f flag
do
case "${flag}" in
f) updated="forced rebuild";;
esac
done
if [[ $updated != "forced rebuild" ]]; then
echo "Checking for update $now"
updated=$(git -C $repoDir pull origin main)
fi
if echo $updated | grep -q "Already up to date";
then
echo "Git up to date $now"
else
echo "Git was not up to date"
echo $updated
echo "Rebuilding the site"
cd $repoDir
echo "Dithering new images"
/usr/bin/python3 utils/dither_images.py -d $contentDir --colorize
echo "Generating site"
hugo -b $baseURL --destination $outputDir
echo "Calculating page sizes"
/usr/bin/python3 utils/calculate_size.py --directory $outputDir --baseURL $baseURL
echo "Removing original media from" $outputDir
/usr/bin/python3 utils/clean_output.py --directory $outputDir
after=`date`
echo "Site regeneration started $now"
echo "Site regeneration finished $after"
fi