diff options
Diffstat (limited to 'build.sh')
| -rwxr-xr-x[-rw-r--r--] | build.sh | 46 |
1 files changed, 43 insertions, 3 deletions
@@ -1,7 +1,47 @@ #!/bin/sh +# to build this site, you must have: git, pnpm, go and hugo +echo "_______ _______ _______ ______ _______ _______ _______ _______ _______ " +echo "( ____ \( ____ \( ____ \( __ \ ( ____ \( ___ )( ____ )( ____ )( ___ )" +echo "| ( \/| ( \/| ( \/| ( \ )| ( \/| ( ) || ( )|| ( )|| ( ) |" +echo "| | | (__ | (__ | | ) || (__ | (___) || (____)|| (____)|| | | |" +echo "| | ____ | __) | __) | | | || __) | ___ || _____)| __)| | | |" +echo "| | \_ )| ( | ( | | ) || ( | ( ) || ( | (\ ( | | | |" +echo "| (___) || (____/\| (____/\| (__/ )| (____/\| ) ( || ) | ) \ \__| (___) |" +echo "(_______)(_______/(_______/(______/ (_______/|/ \||/ |/ \__/(_______)" + +# ========= Pull =========== # +echo "\n\n1️⃣ Pulling changes from remote.\n" git pull -pnpm build:uno:prod + +# ======= pre-build ========= # +echo "\n\n2️⃣ Pre-Build\n" +pnpm build:uno:prod # build UnoCSS + +# check and build Go binaries if needed +mkdir -p bin + +# List of Go programs to build and execute +go_programs="extract_highlights fetch_webmentions get_external_link_rank get_internal_link_graph" + +for program in $go_programs; do + if [ ! -f "bin/$program" ]; then + echo "Building $program..." + cd scripts && go build -o "../bin/$program" "$program.go" && cd .. + else + echo "$program binary already exists in bin/" + fi + + # Execute the binary + echo "Running $program..." + "./bin/$program" +done + +# build hugo site +echo "\n\n3️⃣ Hugo!\n" hugo --gc --minify -pnpm pagefind --site public -pnpm wm public/index.xml --limit 1 --send + +# post-build +echo "\n\n4️⃣ Post-Build\n" +pnpm pagefind --site public # indexing pagefind +pnpm wm public/index.xml --limit 1 --send # send webmention |
