diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..28147fe --- /dev/null +++ b/Makefile @@ -0,0 +1,79 @@ +PROJECT_NAME = validador +VLIBRAS_NAME = vlibras-wiki +PYBOSSA_CONF = /etc/apache2/sites-available/pybossa.conf +PROJECT_DIR = $(CURDIR) +SED_REPLACE_ALL = sed -i "s/$(1)/$(2)/g" "$(3)" +SED_REPLACE_ALL_PATH = sed -i "s\#$(1)\#$(2)\#g" "$(3)" + +ifndef LOCALHOST + ifndef NETWORK_INTERFACE + NETWORK_INTERFACE := $(shell ip route | awk '{print $$5; exit}') + endif + ifdef NETWORK_INTERFACE + LOCALHOST := $(shell ip addr list ${NETWORK_INTERFACE} | grep "inet " | cut -d ' ' -f6 | cut -d/ -f1) + endif +endif + +ifndef LOCALHOST + LOCALHOST := localhost +endif + +install: uninstall config + @( \ + virtualenv ./env/; \ + . ./env/bin/activate; \ + pip install -U pip; \ + pip install -U uwsgi; \ + pip install -U ndg-httpsclient; \ + pip install -r requirements.txt; \ + ) +ifdef PYBOSSA_API_KEY + @ curl "http://${LOCALHOST}/${PROJECT_NAME}-backend/create_project" && echo "" + @ echo "http://${LOCALHOST}/${PROJECT_NAME}-backend/create_project" +endif + +config: + @ $(info Using interface: ${NETWORK_INTERFACE}) + @ $(info Using local IP: ${LOCALHOST}) + @ cp settings_local.py.tmpl settings_local.py + @ $(call SED_REPLACE_ALL_PATH,,${PROJECT_DIR},settings_local.py) + @ $(call SED_REPLACE_ALL,localhost,${LOCALHOST},settings_local.py) +ifdef PYBOSSA_API_KEY + @ $(call SED_REPLACE_ALL,my-api-key,${PYBOSSA_API_KEY},settings_local.py) +endif + @ cp ./contrib/${PROJECT_NAME}.wsgi.tmpl ./contrib/${PROJECT_NAME}.wsgi + @ $(call SED_REPLACE_ALL_PATH,,${PROJECT_DIR},./contrib/${PROJECT_NAME}.wsgi) + @ cp ./contrib/apache/${PROJECT_NAME}.conf.tmpl ./contrib/apache/${PROJECT_NAME}.conf + @ $(call SED_REPLACE_ALL,ServerName localhost,ServerName ${LOCALHOST},./contrib/apache/${PROJECT_NAME}.conf) + @ $(call SED_REPLACE_ALL,user1,$$USER,./contrib/apache/${PROJECT_NAME}.conf) + @ $(call SED_REPLACE_ALL,group1,$$USER,./contrib/apache/${PROJECT_NAME}.conf) + @ $(call SED_REPLACE_ALL_PATH,,${PROJECT_DIR},./contrib/apache/${PROJECT_NAME}.conf) + @ sudo cp -u ${PYBOSSA_CONF} /etc/apache2/sites-available/${VLIBRAS_NAME}.conf + @ if grep -q "${PROJECT_NAME}" "/etc/apache2/sites-available/${VLIBRAS_NAME}.conf"; \ + then \ + echo "A previous WSGI daemon definition for '${PROJECT_NAME}' in: /etc/apache2/sites-available/${VLIBRAS_NAME}.conf"; \ + else \ + sudo sed -i -e "/Header/,/VirtualHost>/d" /etc/apache2/sites-available/${VLIBRAS_NAME}.conf; \ + sudo sed -n -e '/WSGIDaemonProcess/,/VirtualHost>/p' ./contrib/apache/${PROJECT_NAME}.conf | \ + sudo tee -a /etc/apache2/sites-available/${VLIBRAS_NAME}.conf > /dev/null; \ + fi + @ sudo a2dissite pybossa.conf + @ sudo a2ensite ${VLIBRAS_NAME}.conf + @ sudo apachectl configtest + @ sudo service apache2 reload + +clean: + @ find . -regextype posix-awk -regex "(.*.log|.*.pyc)" -type f -print -delete + +uninstall: clean + @ rm -rf ./env/ + @ rm -f ./settings_local.py + @ rm -f ./contrib/${PROJECT_NAME}.wsgi + @ sudo rm -f /etc/apache2/sites-available/${VLIBRAS_NAME}.conf + @ sudo rm -f /etc/apache2/sites-enabled/${VLIBRAS_NAME}.conf + +run: + @ ( \ + . ./env/bin/activate; \ + python main.py; \ + ) diff --git a/contrib/apache/validador.conf.tmpl b/contrib/apache/validador.conf.tmpl index 6cf4fbc..0c33b04 100644 --- a/contrib/apache/validador.conf.tmpl +++ b/contrib/apache/validador.conf.tmpl @@ -1,5 +1,5 @@ - ServerName localhost + ServerName localhost WSGIDaemonProcess validador user=user1 group=group1 threads=5 WSGIScriptAlias /validador-backend /contrib/validador.wsgi @@ -19,10 +19,10 @@ Require all granted - Header set Access-Control-Allow-Origin "*" + Header set Access-Control-Allow-Origin "*" - ServerAdmin webmaster@localhost + ServerAdmin webmaster@localhost - ErrorLog ${APACHE_LOG_DIR}/error.log - CustomLog ${APACHE_LOG_DIR}/access.log combined + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined diff --git a/settings_local.py.tmpl b/settings_local.py.tmpl index a40d4dc..3dd113c 100644 --- a/settings_local.py.tmpl +++ b/settings_local.py.tmpl @@ -1,11 +1,12 @@ # -*- coding: utf-8 -*- # Validador Server Configuration SERVER_HOST = "localhost" -SERVER_PORT = 8001 +SERVER_PORT = 8002 AGREEMENT_NUMBER = 3 +API_DB_HOST = "http://localhost:200" # Apache Configuration -APACHE_HOST = False +APACHE_HOST = True APACHE_HOST_ENDPOINT = "/validador-backend" APACHE_STATIC_FILES_ENDPOINT = "/validador" @@ -13,5 +14,5 @@ APACHE_STATIC_FILES_ENDPOINT = "/validador" PYBOSSA_APP_NAME = "Validador de Sinais" PYBOSSA_APP_SHORT_NAME = "validador_sinais" PYBOSSA_APP_DESCRIPTION = "Esse projeto possibilitará que especialistas aprovem sinais gerados pela comunidade." -PYBOSSA_ENDPOINT = "http://localhost:5000" +PYBOSSA_ENDPOINT = "http://localhost/pybossa" PYBOSSA_API_KEY = "my-api-key" \ No newline at end of file -- libgit2 0.21.2