.PHONY: env test ci lint clean deploy_dev deploy_qa deploy_prod

env:
	python3.6 -m venv env
	env/bin/pip install --upgrade pip
	env/bin/pip install -r requirements.txt

test:
	ENVIRONMENT=test env/bin/python3.6 -m pytest tests/unit

ci:
	#ENVIRONMENT=test env/bin/python3.6 -m pytest tests/integration
	echo 'no integration tests'

lint:
	env/bin/flake8

clean:
	rm -rf env

docker-login:
# perform docker login to AWS ECR. Do it once per session. After that you can run docker-push
	`aws ecr get-login --no-include-email`

docker-build:
	docker build --tag ows-audio-fingerprinting .

docker-push:
	# push the latest version of the image to AWS ECR on DEV account
	docker tag ows-audio-fingerprinting 103233932089.dkr.ecr.us-east-1.amazonaws.com/ows-audio-fingerprinting
	# NOTE: do not forget to run make docker-login before first run
	docker push 103233932089.dkr.ecr.us-east-1.amazonaws.com/ows-audio-fingerprinting

docker-fargate-deploy:
# deploy the latest image to fargate on Dev account
	cd dev; ./fargate-deploy.sh

docker-pipeline: docker-build docker-push docker-fargate-deploy


