Makefile 1021 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. .PHONY : all clean build
  2. TAG:=`git describe --abbrev=0 --tags`
  3. # if TAG is empty
  4. ifeq ($(strip $(TAG)),)
  5. TAG:=`git log -1 --pretty=format:'%h'`
  6. endif
  7. # if TAG is empty
  8. ifeq ($(strip $(TAG)),)
  9. TAG:='noset'
  10. endif
  11. # timestamp tag
  12. TAG_TIME:=`git log -1 --pretty=format:'%ai' | awk '{print $1$2}' | tr -d '\-:'`
  13. # if TAG is empty
  14. ifeq ($(strip $(TAG_TIME)),)
  15. TAG:='notset'
  16. endif
  17. REGISTRY:=tyn.ar3qvx.com
  18. REPO_NAME:=cdn/evlss
  19. REPO_TAG:=$(TAG)
  20. REPO_TAG_TIME:=$(TAG_TIME)
  21. all: build test docker-build docker-tag docker-test clean
  22. echo "IMAGE_NAME=$REPO_NAME" > ../VERSION
  23. echo "IMAGE_TAG=$REPO_TAG" >> ../VERSION
  24. echo "IMAGE_TAG_TIME=$REPO_TAG_TIME" >> ../VERSION
  25. deps:
  26. build:
  27. rm -rf ./dist/*
  28. test:
  29. validate:
  30. package:
  31. release:
  32. docker-build:
  33. docker build -t $(REGISTRY)/$(NAME):$(VERSION) .
  34. docker-tag:
  35. docker tag $(REGISTRY)/$(NAME):$(VERSION) $(REGISTRY)/$(NAME):dev
  36. docker-test:
  37. docker run -d --name $(TESTNAME) $(REGISTRY)/$(NAME):dev
  38. clean:
  39. rm -rf dist
  40. docker rm -f -v $(TESTNAME)