SCRIPT_NAME := wikilibras-db-api SCRIPT_PATH := $(CURDIR)/${SCRIPT_NAME} SCRIPT_PATH_TMP := /tmp/${SCRIPT_NAME} SCRIPT_PATH_ETC := /etc/init.d/${SCRIPT_NAME} NPM := $(shell which npm) install: @ # @ sudo chmod -R 777 $$HOME/tmp/ @ npm install @ sudo npm install -g supervisor autostart-enable: @ install -m 777 -p ${SCRIPT_PATH} ${SCRIPT_PATH_TMP} @ sed -i "s##$(CURDIR)#" ${SCRIPT_PATH_TMP} @ sed -i "s##${SCRIPT_NAME}#" ${SCRIPT_PATH_TMP} @ sed -i "s##${NPM}#" ${SCRIPT_PATH_TMP} @ sudo install -m 755 -p ${SCRIPT_PATH_TMP} ${SCRIPT_PATH_ETC} @ sudo update-rc.d -f ${SCRIPT_NAME} remove @ sudo update-rc.d -f ${SCRIPT_NAME} defaults autostart-disable: @ sudo update-rc.d -f ${SCRIPT_NAME} remove @ sudo rm -f ${SCRIPT_PATH_ETC} clean: @ sudo chmod -R 777 ./public/users/ ./uploads/ @ find ./public/users/ -type d -empty -delete distclean: @ sudo rm -rf ./public/users/* ./uploads/* run: @ sudo ${NPM} start uninstall: distclean @ rm -rf ./node_modules/ ROLENAME := wikilibras DATABASE := wikilibras PASSWORD := wikilibras123 DBFILEIN := wikilibras-db-api.sql DBOUTBAK := wikilibras-db-api-dump.sql VERBOSE := #-v create-db: .create-role .create-db .restore-db drop-db: .restart-db .drop-db .drop-role dump-db: @ sudo su postgres -c "PGPASSWORD='${PASSWORD}' pg_dump ${VERBOSE} -b --inserts ${ROLENAME};" > ${DBOUTBAK} .create-db: @ sudo su postgres -c "psql -c \"CREATE DATABASE ${DATABASE} OWNER ${ROLENAME};\"" .create-role: @ sudo su postgres -c "psql -c \"CREATE USER ${ROLENAME} WITH PASSWORD '${PASSWORD}';\"" .drop-db: @ sudo su postgres -c "psql -c \"DROP DATABASE ${DATABASE};\"" .drop-role: @ sudo su postgres -c "psql -c \"DROP USER ${ROLENAME};\"" populate-db: @ sudo su postgres -c "psql --set ON_ERROR_STOP=off -f ${DBOUTBAK} ${ROLENAME}" .restart-db: @ sudo service postgresql restart .restore-db: @ sudo su postgres -c "psql --set ON_ERROR_STOP=off -f ${DBFILEIN} ${ROLENAME}" .PHONY: autostart-enable autostart-disable clean distclean install run uninstall