hakurei.app/deploy_static
2020-04-01 06:28:50 -04:00

34 lines
825 B
Bash
Executable File

#!/bin/bash
set -o errexit
./validate_static
rm -rf static_tmp
cp -a static static_tmp
json_reformat -m < static_tmp/manifest.webmanifest | sponge static_tmp/manifest.webmanifest
find static_tmp -name '*.css' -exec csso {} -o {} \;
find static_tmp -name '*.js' -exec terser --module -cmo {} {} \;
find static_tmp -regex '\(.+/LICENSE\|.+\.\(css\|html\|ico\|js\|svg\|txt\|webmanifest\|xml\)\)' -exec zopfli {} \; -exec touch -r {} {}.gz \;
remote=www-data@grapheneos.org
active=$(ssh $remote readlink html)
if [[ $active = html_a ]]; then
target=html_b
else
target=html_a
fi
echo active is $active
echo target is $target
echo
rsync -rpcve ssh --chmod=D755,F644 --delete static_tmp/ $remote:$target
ssh $remote sync -f $target
ssh $remote ln -snf $target html
ssh $remote sync .
echo
echo active is now $target