ayakael.net/test-server.sh

36 lines
1,009 B
Bash
Executable file

#!/usr/bin/env bash
for i in node npm git; do
if ! command -v $i &> /dev/null; then
echo ">> $i could not be found, please install"
exit
fi
done
# http-server not pulled, pulling
if [ ! -d "./http-server" ]; then
echo ">> This script will pull a lightweight nodejs http-server from https://github.com/http-party/http-server and make ./public avaiable as local http service, are you okay with this?"
read -p "Continue (y/n)?" choice
case "$choice" in
y|Y ) echo "yes";;
n|N ) echo "no";;
* ) echo "invalid";;
esac
git clone https://github.com/http-party/http-server
fi
# http-server depends not pulled, pulling
if [ ! -d "http-server/node_modules/" ]; then
echo ">> http-server dependencies not pulled, pulling"
npm --prefix ./http-server i
fi
# website not built, building
if [ ! -d "./public" ]; then
echo ">> website not build, building"
ikiwiki --setup ./ikiwiki.setup
fi
# starting server
echo ">> starting http server"
node ./http-server/bin/http-server -c-1 ./public