build:
	GO111MODULE=on CGO_ENABLED=0 go build -o ./cmd/server/server ./cmd/server/main.go

clean: go-clean
	make -C ./internal/central clean
	make -C ./internal/admin clean
	rm -f ./cmd/server/server

go-clean:
	go clean -testcache

generate:
	make -C ./internal/central generate
	make -C ./internal/admin generate

generate4test:


lint: check-golang

check-golang:
	./hack/check_golanglint.sh

# TODO(chenfei): add `test` entrypoint for each service directory, then use make -C xxx test to instead.
test:
	which gotestsum || go install gotest.tools/gotestsum@latest
	@(env AWS_WEB_IDENTITY_TOKEN_FILE=fake GCP_WORKLOAD_IDENTITY_AUDIENCE=fake GCP_IMPERSONATE_SA=fake \
	gotestsum --junitfile ../unit-tests-portal.xml -- -race ./internal/...)

verify: check test

.PHONY: build clean go-clean generate check test check-golang check-pulumi $(services) docker-deploy-base
