GO ?= go

.PHONY: fmt test vet build integration
fmt:
	$(GO) fmt ./...
	cd sdk/go && $(GO) fmt ./...
	cd examples/result-inbox && GOWORK=off $(GO) fmt ./...
	cd examples/task-outbox && GOWORK=off $(GO) fmt ./...

test:
	$(GO) test -race ./...
	cd sdk/go && $(GO) test -race ./...
	cd examples/result-inbox && GOWORK=off $(GO) test -race ./...
	cd examples/task-outbox && GOWORK=off $(GO) test -race ./...

vet:
	$(GO) vet ./...
	cd sdk/go && $(GO) vet ./...
	cd examples/result-inbox && GOWORK=off $(GO) vet ./...
	cd examples/task-outbox && GOWORK=off $(GO) vet ./...

build:
	$(GO) build -o bin/orbit ./cmd/orbit
	$(GO) build -o bin/orbit-migrate ./cmd/orbit-migrate
	$(GO) build -o bin/orbit-admin ./cmd/orbit-admin
	cd examples/result-inbox && GOWORK=off $(GO) build -o ../../bin/orbit-inbox-example ./cmd/receiver
	cd examples/task-outbox && GOWORK=off $(GO) build -o ../../bin/orbit-outbox-example ./cmd/sender

integration:
	./scripts/test-mysql.sh
