Makefile 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. .PHONY: init
  2. init:
  3. go install github.com/google/wire/cmd/wire@latest
  4. go install github.com/golang/mock/mockgen@latest
  5. go install github.com/swaggo/swag/cmd/swag@latest
  6. .PHONY: bootstrap
  7. bootstrap:
  8. cd ./deploy/docker-compose && docker compose up -d && cd ../../
  9. go run ./cmd/migration
  10. nunu run ./cmd/server
  11. .PHONY: mock
  12. mock:
  13. mockgen -source=internal/service/user.go -destination test/mocks/service/user.go
  14. mockgen -source=internal/repository/user.go -destination test/mocks/repository/user.go
  15. mockgen -source=internal/repository/repository.go -destination test/mocks/repository/repository.go
  16. .PHONY: test
  17. test:
  18. go test -coverpkg=./internal/handler,./internal/service,./internal/repository -coverprofile=./coverage.out ./test/server/...
  19. go tool cover -html=./coverage.out -o coverage.html
  20. .PHONY: build
  21. build:
  22. go build -ldflags="-s -w" -o ./bin/server ./cmd/server
  23. .PHONY: docker
  24. docker:
  25. docker build -f deploy/build/Dockerfile --build-arg APP_RELATIVE_PATH=./cmd/task -t 1.1.1.1:5000/demo-task:v1 .
  26. docker run --rm -i 1.1.1.1:5000/demo-task:v1
  27. .PHONY: swag
  28. swag:
  29. swag init -g cmd/server/main.go -o ./docs --parseDependency