braid/Makefile
2020-02-21 16:46:47 -05:00

31 lines
1.1 KiB
Makefile

.PHONY: help
# from https://marmelab.com/blog/2016/02/29/auto-documented-makefile.html
help:
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n\n", $$1, $$2}'
repo=yardstick
project=braid
branch=$(shell git rev-parse --abbrev-ref HEAD)
tag=$(shell echo $(branch) | grep -Eo 'feature/([A-Za-z]+-[0-9]*)' | grep -Eo '[A-Za-z]+-[0-9]*' || \
echo $(branch) | grep -Eo '(release|hotfix)/[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+' | grep -Eo '[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+' || \
echo $(branch) | grep -Eo 'YASDEV-([[:digit:]]*)')
full: build push
build: ## build the production dockerfile
@if [[ -n "$(tag)" ]]; then \
echo "$(tag)" > docker_tag.txt; \
docker build -t $(repo)/$(project):$(tag) .; \
else \
echo "Nothing to build."; \
fi
push: ## push the production dockerfile
@if [[ -n "$(tag)" ]]; then \
docker push $(repo)/$(project):$(tag); \
else \
echo "Nothing to push."; \
fi
display: ## display the tag/branch values for development testing
@echo "branch: $(branch)"
@echo "tag: $(tag)"