Hossein Naghdbishi cb2d0d9555
/bin/bash -> /usr/bin/env bash (#471)
Using env offers better portability
2023-04-19 16:25:41 -07:00

42 lines
934 B
Bash
Executable File

#!/usr/bin/env bash
set -e
verbose() {
! test -z "$VERBOSE"
}
verbose && echo "Running tests..."
tools/test
verbose && echo "Formatting code..."
tools/format
verbose && echo "Measuring line lengths..."
tools/measure
# SITE_DIR is the final location where we want generated content to be
SITE_DIR="public"
# GENERATE_DIR is where the content will be generated initially
GENERATE_DIR="$(mktemp -d)"
function cleanup() {
rm -rf "$GENERATE_DIR"
}
trap cleanup EXIT
verbose && echo "Generating HTML to $GENERATE_DIR..."
tools/generate $GENERATE_DIR
# In TESTING mode, make sure that the generated content is identical to
# what's already in SITE_DIR. If a difference is found, this script exits
# with an error.
if [[ ! -z "$TESTING" ]]; then
echo "Comparing $GENERATE_DIR with $SITE_DIR..."
diff -r "$GENERATE_DIR" "$SITE_DIR"
fi
verbose && echo "Copying $GENERATE_DIR to $SITE_DIR"
cp -rf "${GENERATE_DIR}/." "$SITE_DIR"