install:
	npm install

develop:
	REACT_APP_TYPE=ott \
	REACT_APP_CLIENT=instat \
	npm start

clean:
	rm -rf build

build: clean
	REACT_APP_TYPE=ott \
	REACT_APP_ENV=staging \
	REACT_APP_CLIENT=instat \
	npm run build

auth-build:
	rm -rf build_auth

	REACT_APP_TYPE=auth-service \
	REACT_APP_ENV=staging \
	BUILD_PATH=build_auth \
	GENERATE_SOURCEMAP=false \
	npx react-scripts build

	npx gzipper --verbose build_auth

auth-production-build:
	rm -rf build_auth

	REACT_APP_TYPE=auth-service \
	REACT_APP_ENV=production \
	BUILD_PATH=build_auth \
	GENERATE_SOURCEMAP=false \
	npx react-scripts build

	npx gzipper --verbose build_auth

facr-build: clean
	REACT_APP_TYPE=ott \
	REACT_APP_ENV=staging \
	REACT_APP_CLIENT=facr \
	npm run build

.PHONY: build

prod: clean
	REACT_APP_TYPE=ott \
	REACT_APP_ENV=production \
	REACT_APP_CLIENT=instat \
	REACT_APP_STRIPE_PK=pk_live_ANI76cBhSo69DZUxPmyRVIZW \
	npm run build

	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott@de.instat.tv:/usr/local/www/ott/wwwroot/
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott@fr.instat.tv:/usr/local/www/ott/wwwroot/
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott@bkup.instat.tv:/usr/local/www/ott/wwwroot/

preprod: clean
	REACT_APP_TYPE=ott \
	REACT_APP_ENV=preproduction \
	REACT_APP_CLIENT=instat \
	REACT_APP_STRIPE_PK=pk_live_ANI76cBhSo69DZUxPmyRVIZW \
	npm run build

	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott-test@test.instat.tv:/usr/local/www/ott-test/wwwroot/

facr-prod: clean
	REACT_APP_TYPE=ott \
	REACT_APP_ENV=production \
	REACT_APP_STRIPE_PK=pk_live_ANI76cBhSo69DZUxPmyRVIZW \
	REACT_APP_CLIENT=facr \
	npm run build

	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott@de.instat.tv:/usr/local/www/ott/facr-wwwroot/
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott@fr.instat.tv:/usr/local/www/ott/facr-wwwroot/
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott@bkup.instat.tv:/usr/local/www/ott/facr-wwwroot/

deploy-all: prod preprod facr-prod

stage: build
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott-staging@staging.instat.tv:/usr/local/www/ott-staging/wwwroot/

a-stage: build
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott-staging@staging.instat.tv:/usr/local/www/ott-staging/a-wwwroot/

b-stage: build
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott-staging@staging.instat.tv:/usr/local/www/ott-staging/b-wwwroot/

c-stage: build
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott-staging@staging.instat.tv:/usr/local/www/ott-staging/c-wwwroot/

d-stage: build
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott-staging@staging.instat.tv:/usr/local/www/ott-staging/d-wwwroot/

e-stage: build
	rsync -zavP --delete-before build/ -e 'ssh -p 666' ott-staging@staging.instat.tv:/usr/local/www/ott-staging/e-wwwroot/

test:
	npm test

.PHONY: test
