Make render script use Bash best practices

This commit is contained in:
Michael Bradley 2025-02-19 18:28:57 -05:00
parent e5f2925307
commit 63423f2110
Signed by: MichaelBradley
SSH key fingerprint: SHA256:cj/YZ5VT+QOKncqSkx+ibKTIn0Obg7OIzwzl9BL8EO8
2 changed files with 11 additions and 3 deletions

26
render.bash Executable file
View file

@ -0,0 +1,26 @@
#!/bin/env bash
set -o errexit
set -o nounset
set -o pipefail
set -o xtrace
yarn "build:targets"
PROD='dist/prod'
if [[ -d "$PROD" ]]; then
rm -r "$PROD"
fi
mkdir -p "$PROD"
echo 'Rendering webpage...'
node -e 'import("./dist/server/entry-server.js").then(({render}) => console.log(render().html))' > "$PROD"/index.html
echo "Preparing $PROD..."
# Copy used assets
cp -r dist/client/assets "$PROD"/
cp public/* "$PROD"/
# Not needed: Pre-rendered
rm "$PROD"/assets/*.js
# Not needed: Inlined
rm "$PROD"/assets/*.css