39 lines
801 B
Bash
Executable File
39 lines
801 B
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
echo "◆ Check .git repository"
|
|
|
|
if [ -z "$HUGO_GIT_URL" ]; then
|
|
echo "△ HUGO_GIT_URL environment variable is not set"
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -d "$HUGO_WORKING_DIR" ]; then
|
|
echo "Clone .git repository for the first time"
|
|
git clone $HUGO_GIT_URL $HUGO_WORKING_DIR
|
|
else
|
|
echo "All good!"
|
|
fi
|
|
|
|
cd $HUGO_WORKING_DIR
|
|
|
|
echo "◆ Pull latest version from .git repository"
|
|
|
|
# Force pull everything, just in case
|
|
git fetch --all
|
|
git reset --hard origin/main
|
|
|
|
echo "◆ Build static HTML page with hugo"
|
|
|
|
# Start building website with hugo
|
|
hugo
|
|
|
|
# Clean the public folder without affecting what's currently served by HTTP
|
|
# server
|
|
rm -rf $HUGO_PUBLIC_DIR/*
|
|
cp -r $HUGO_WORKING_DIR/public/* $HUGO_PUBLIC_DIR
|
|
rm -rf $HUGO_WORKING_DIR/public/*
|
|
|
|
echo "▷ Sucessfully built new website!"
|