# Версия makefile для сборки с интеграционными тестами

all: set_env info prepare build #tests #run_tests #stop_processes

# Ставим переменные окружения для роботного пользователя гермионы 
set_env:
	export LOGIN=$$LOGIN
	export PASSWORD=$$PASSWORD

# Информация и всё такое
info: package.json
	which npm || (echo You should run 'sudo apt-get install npm' first. && false)

# Установка зависимостей
prepare: package.json
	npm --registry=http://npm.yandex-team.ru install

tests: package.json
	npm test

# Сборка проекта
build: node_modules
	./node_modules/.bin/gulp release --environment=production

# Запускаем сервер, туннелер и тесты гермионы
run_tests: dist
	./node_modules/.bin/gulp server & 
	sleep 5

	wait

	bash runner.sh -- LOGIN=$$LOGIN PASSWORD=$$PASSWORD 

# Останавливаем все процессы, которые запустил пользователь (сервер, туннелер)
stop_processes:
	killall bash tunneler.sh
	killall ssh
	killall gulp

# Очистка проекта
clean:
	rm -rf dist node_modules
