SERVICE_URL=gitlab.aescorp.ru/dsp_dev/claim/cryptopro_service
FILE_MAIN=./cmd/ouc/main.go
ADAPT_PATH = ./api

build:
	clear
	go fmt ./...
	go build -o ./bin/ouc $(FILE_MAIN)
	cp ./src ./bin
win.build:
	clear
	go fmt ./...
	GOOS=windows GOARCH=amd64 go build -o ./bin/ouc.exe $(FILE_MAIN)
dev.run:
	clear
	go fmt ./...
	go build -race -o ./bin/ouc_dev $(FILE_MAIN)
	cp -r ./src ./bin
	./dev.sh
mod:
	clear
	go get -u ./...
	go mod tidy -compat=1.20
	go mod vendor
	go fmt ./...
lint:
	clear
	go fmt ./...
	golangci-lint run ./...
	gocyclo -over 10 ./internal/
	gocyclo -over 10 ./pkg/
	gocritic check ./internal/...
	gocritic check ./pkg/...
	staticcheck ./internal/...
	staticcheck ./pkg/...
test.run:
	clear
	go fmt ./...
	go test -vet=all -race -timeout 30s -coverprofile cover.out ./...
	go tool cover -func=cover.out
graph:
	goda graph -f "{{.Package.Name}}" "shared($(SERVICE_URL)/... $(SERVICE_URL)/...)" | dot -Tsvg -o graph.svg
