ENV=stg
API_URL=https://kn3ycyq24h.execute-api.us-west-2.amazonaws.com/stg

ifeq ($(RTMP_URL),)
	RTMP_URL=live.twitch.tv
endif

ifeq ($(ENV),prod)
	API_URL=https://vdkaxtadee.execute-api.us-west-2.amazonaws.com/prod
endif

all: clean windows linux darwin

clean:
	rm -rf bin

windows:
	GOOS=windows GOARCH=amd64 go build -o ./bin/windows/amd64/streamtester.exe -ldflags "-w -s -X main.APIURL=$(API_URL) -X main.PrecompiledAccessKey=$(ACCESS_KEY) -X main.PrecompiledRTMPURL=$(RTMP_URL)" ./cmd/streamtester

linux:
	GOOS=linux go build -o ./bin/linux/streamtester -ldflags "-w -s -X main.APIURL=$(API_URL) -X main.PrecompiledAccessKey=$(ACCESS_KEY) -X main.PrecompiledRTMPURL=$(RTMP_URL)" ./cmd/streamtester

darwin:
	GOOS=darwin go build -o ./bin/darwin/streamtester -ldflags "-w -s -X main.APIURL=$(API_URL) -X main.PrecompiledAccessKey=$(ACCESS_KEY) -X main.PrecompiledRTMPURL=$(RTMP_URL)" ./cmd/streamtester

deploy:
	rm -f ./serverless/streamtester-api
	GOOS=linux go build -o ./serverless/streamtester-api -ldflags "-w -s" "./cmd/streamtester-api"
	cd serverless; sls deploy -v -s $(ENV)

proto:
	protoc --proto_path=$(GOPATH)/src:. --twirp_out=. --go_out=. ./pkg/rpc/service.proto

deps:
	@echo "Updating dependencies..."
	dep ensure -update
	@echo "Dependency versions:"
	@dep status
	@echo "Remember: git add vendor/"
