#!/bin/bash checkFile() { if [ ! -f "$@" ]; then echo "$@ does not exists, exiting" exit fi } checkFile "$PWD/src/server.js" checkFile "$PWD/package.json" git pull git submodule update --init --recursive echo "Installing node modules for server" npm install echo "Seting up next.js static stuff..." mkdir "$PWD/nextStatic" echo "Making qmining page" pushd submodules/qmining-page/ npm install npm run export popd checkFile "$PWD/submodules/qmining-page/out" ln -sf "$PWD/submodules/qmining-page/out" "$PWD/nextStatic/qminingPagePublic" echo "Making data editor page" pushd submodules/qmining-data-editor/ npm install npm run export popd checkFile "$PWD/submodules/qmining-data-editor/out" ln -sf "$PWD/submodules/qmining-data-editor/out" "$PWD/nextStatic/dataEditorPublic" echo "Making moodle test userscript" mkdir -p "$PWD/publicDirs/qminingPublic/moodle-test-userscript" checkFile "$PWD/submodules/moodle-test-userscript/stable.user.js" ln -sf "$PWD/submodules/moodle-test-userscript/stable.user.js" "$PWD/publicDirs/qminingPublic/moodle-test-userscript/" ln -sf "$PWD/submodules/moodle-test-userscript/stable.user.js" "$PWD/publicDirs/qminingPublic" echo "mkdir-ing/touching :3" # TODO: make server create these itself mkdir -p stats mkdir -p stats/logs mkdir -p stats/vlogs touch nolog #JSONS echo '{}' >stats/stats echo '{}' >stats/vstats echo '{}' >stats/idstats echo '{}' >stats/idvstats echo '{}' >qminingPublic/userSpecificMotd.json echo '{}' >qminingPublic/news.json touch qminingPublic/version touch qminingPublic/motd echo "wgetting data.json from frylabs..." wget "http://qmining.frylabs.net/data.json" -O ./qminingPublic/data.json if [ "$?" -ne "0" ]; then echo "Failed to wget data.json, please create it yourself!" echo "Now starting with empty data!" echo '{"Subjects":[],"version":"TESET","motd":"hai"}' >./qminingPublic/data.json fi pushd standaloneUtils rm -v ../data/dbs/users.db NS_SQL_DEBUG_LOG=true NS_LOGLEVEL=2 node dbSetup.js popd echo "Done!" echo "npm start {loglevel}" echo "To start server"