Init
This commit is contained in:
56
themes/hextra/build.sh
Executable file
56
themes/hextra/build.sh
Executable file
@@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# Specify the base URL
|
||||
BASE_URL=${1:-"https://doc.hytaledev.fr"}
|
||||
|
||||
echo "Using base URL: $BASE_URL"
|
||||
|
||||
# Version configuration - modify these arrays to specify versions to build
|
||||
# MAIN_VERSION format: "ref:display_name:source_dir"
|
||||
# VERSIONS format: "ref:display_name:source_dir" where source_dir is either "docs" or "exampleSite"
|
||||
MAIN_VERSION="v0.11.1:latest:docs"
|
||||
VERSIONS=(
|
||||
"main:latest:docs" # latest version always builds from main
|
||||
"v0.10.2:v0.10:exampleSite"
|
||||
"v0.9.6:v0.9:exampleSite"
|
||||
)
|
||||
|
||||
# Parse main version
|
||||
IFS=':' read -r MAIN_REF MAIN_NAME MAIN_DIR <<< "$MAIN_VERSION"
|
||||
|
||||
# Ensure clean public directory
|
||||
rm -rf public
|
||||
mkdir -p public
|
||||
mkdir -p public/versions
|
||||
|
||||
# Checkout and build main site
|
||||
git checkout $MAIN_REF
|
||||
GIT_HASH=$(git rev-parse --short HEAD)
|
||||
echo "Building main site from $MAIN_REF (commit: $GIT_HASH)"
|
||||
hugo \
|
||||
--minify \
|
||||
--themesDir=../.. --source=$MAIN_DIR \
|
||||
--baseURL "$BASE_URL/" \
|
||||
--destination=../public
|
||||
|
||||
# Build all versions
|
||||
for VERSION in "${VERSIONS[@]}"; do
|
||||
IFS=':' read -r REF NAME DIR <<< "$VERSION"
|
||||
|
||||
git checkout $REF
|
||||
GIT_HASH=$(git rev-parse --short HEAD)
|
||||
echo "Building version $NAME from $REF (commit: $GIT_HASH)"
|
||||
|
||||
mkdir -p "public/versions/$NAME"
|
||||
hugo \
|
||||
--minify \
|
||||
--themesDir=../.. --source=$DIR \
|
||||
--baseURL "$BASE_URL/versions/$NAME/" \
|
||||
--destination="../public/versions/$NAME"
|
||||
done
|
||||
|
||||
# Return to main branch
|
||||
git checkout main
|
||||
|
||||
echo "Build completed"
|
||||
Reference in New Issue
Block a user