Makefile 726 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. GOCMD = go
  2. GOBUILD = $(GOCMD) build
  3. GOMOD = $(GOCMD) mod
  4. GOTEST = $(GOCMD) test
  5. BINARY_NAME = goadmin
  6. CLI = adm
  7. all: serve
  8. init:
  9. $(GOMOD) init $(module)
  10. install:
  11. $(GOMOD) tidy
  12. serve:
  13. $(GOCMD) run .
  14. build:
  15. CGO_ENABLED=0 GOOS=linux GOARCH=amd64 $(GOBUILD) -o ./build/$(BINARY_NAME) -v ./
  16. generate:
  17. $(CLI) generate -c adm.ini
  18. test: black-box-test user-acceptance-test
  19. black-box-test: ready-for-data
  20. $(GOTEST) -v -test.run=TestMainBlackBox
  21. make clean
  22. user-acceptance-test: ready-for-data
  23. $(GOTEST) -v -test.run=TestMainUserAcceptance
  24. make clean
  25. ready-for-data:
  26. cp admin.db admin_test.db
  27. clean:
  28. rm admin_test.db
  29. .PHONY: all serve build generate test black-box-test user-acceptance-test ready-for-data clean