
program = portal-stocks
dest = $(program)
tarball_dir = tarball
dest = $(tarball_dir)/$(program)
tanker ?= 1

doc:
	make -C doc

test:
	runtests.sh

clean:
	make -C doc clean
	find . -name "*.pyc" -delete
	rm -f *.png
	rm -rf debian/yandex-stocks3
	rm -f debian/yandex-stocks3.debhelper.log
	rm -f debian/yandex-stocks3.substvars
	rm -f debian/files
	rm -fr $(tarball_dir)

cleandata:
	rm -rf data/xml*
	rm -rf data/export
	rm -rf data/morda*
	rm -rf data/regions.xml

install:
	sudo chown --reference=Makefile -R ./
	find . -name "*.pyc" -delete
	mkdir -p $(dest)
	cp -r config libs catalog fonts runners s3*.py stocks3 tmpl plotter tests stocks3t $(dest)
	cp import.py export.py $(dest)
	cp -r lg.sh $(dest)
	cp -r samsung.sh $(dest)
	mkdir -p $(dest)/data
	cd $(dest) && ln -s export.py stocks_export.py
	cd $(dest) && ln -s import.py stocks_import.py
ifeq ($(tanker),1)
	tanker/download-from-production.sh $(dest)/data
endif

debuild-nosign:
	debuild --no-tgz-check -us -uc -b

debuild:
	debuild

debsign:
	debsign -m "$(USER)@yandex-team.ru" ../yandex-stocks3_*_amd64.changes

debclean:
	rm ../yandex-stocks3_*

dupload:
	dupload --to morda-trusty ../yandex-stocks3_*_amd64.changes

deploy:
	sudo dpkg -i `ls -1 -r ../yandex-stocks3_*_all.deb | head -n 1`

fixdev:
	sudo cp config/db.dev.xml /opt/www/stocks3/config/db.xml
	sudo cp config/db.dev.xml config/db.xml
	sudo cp config/config.dev.json config/config.json
	sudo cp config/config.dev.json /opt/www/stocks3/config/config.json
	sudo cp ./cron.d/stocks3-write /etc/cron.d/

fixrelease:
	sudo cp config/db.production.xml config/db.xml
	sudo cp config/config.production.json config/config.json

package:
	make clean cleandata fixrelease debuild-nosign debsign deploy dupload debclean fixdev

sm:
	git submodule update --init --recursive
release: sm
	submodules/gitrelease/make_release.pl --user=$(USER)
bugfix: sm
	submodules/gitrelease/make_bugfix.pl --user=$(USER)

packages=libcairo2-dev libjpeg-dev libgif-dev

build-deps:
	sudo apt-get -qq update && sudo apt-get install python3-venv python3-dev python3-wheel pkg-config libxml2-utils -y
	sudo apt-get install -y $(packages)

.PHONY: tarball tarball_data clean cleandata
tarball_data: tarball
tarball: build-deps
	echo 'Making tarball'
	mkdir -p $(dest)
	find . -name "*.pyc" -delete
	cp -r catalog cloud config libs fonts runners stocks3 stocks3t tmpl plotter tests juggler $(dest)
	cp -r tools $(dest)
	cp import.py export.py planner.py s3csvindex.py $(dest)
	cp venvrun.sh planner.sh planner-status.sh samsung.sh lg.sh $(dest)
	python3 -m venv $(dest)
	. $(dest)/bin/activate; python3 -m pip install --upgrade pip==20.3.4 wheel
	. $(dest)/bin/activate; python3 -m pip install -Ur requirements.txt -i https://pypi.yandex-team.ru/simple
ifeq ($(tanker),1)
	. $(dest)/bin/activate; ./tanker/download-from-production.sh $(dest)/data
endif

config/config.json:
	ya vault get version --compact ver-01g2d40rf7tzn40rqapthgz4p9 -o config.json > config/config.json

config/tanker.token:
	ya vault get version --compact ver-01g2d40rf7tzn40rqapthgz4p9 -o tanker_token > config/tanker.token

config/tvm.secret:
	ya vault get version --compact ver-01g2d40rf7tzn40rqapthgz4p9 -o tvm_client_secret > config/tvm.secret

config: config/config.json config/tanker.token config/tvm.secret
