help: ## show this help @echo 'usage: make [target] ...' @echo '' @echo 'targets:' @egrep '^(.+)\:\ .*##\ (.+)' ${MAKEFILE_LIST} | sed 's/:.*##/#/' | column -t -c 2 -s '#' install: ## install all go dependencies go get \ github.com/bufbuild/buf/cmd/buf \ github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \ github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2 \ google.golang.org/grpc/cmd/protoc-gen-go-grpc \ google.golang.org/protobuf/cmd/protoc-gen-go generate: ## generate grpc proto for golang buf generate # oapi-codegen --config ./api/openapi/v1/api.yaml ./api/openapi/v1/openapi.yaml # oapi-codegen --config ./api/openapi/v1/models.yaml ./api/openapi/v1/openapi.yaml test: ## run all layers tests @make test.unit @make test.integration test.unit: ## run unit tests go test ./... test.integration: ## run integration tests go mod vendor @make test.integration.up @make test.integration.start @make test.integration.down test.integration.up: ## build integration test environment docker-compose -f deployments/test/docker-compose.yaml up -d --remove-orphans test.integration.down: ## shutting down integration environment docker-compose -f deployments/test/docker-compose.yaml down --volumes test.integration.start: ## run integration test go test -count=1 ./tests/integration/... test.e2e.start: ## run integration test go test ./tests/e2e/... run: ## run app go run ./cmd/app/main.go dev.up: ## run dev environment docker-compose -f deployments/dev/docker-compose.yaml up -d dev.down: ## shutting down dev environment docker-compose -f deployments/dev/docker-compose.yaml down --volumes --rmi local