base.mk 1.13 KB
Newer Older
1
NAME ?= $(shell basename $(CURDIR))
2
3
VERSION ?= $(shell git describe --tags --dirty 2>/dev/null)

4
5
# Get the location of this makefile.
MK_DIR := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
.FORCE:

version: .FORCE
	@echo $(VERSION) > $(NAME)/VERSION
	@echo $(VERSION)

help:           ## Show this help.
	@fgrep -h "##" $(MAKEFILE_LIST) | fgrep -v fgrep | sed -e 's/\\$$//' | sed -e 's/\(.*:\)[^#]*##\s*\(.*\)/\1\t\2/' | column -t -s "	"

config:  ## Load config from the environment. You should run it once in every session before other tasks. Run: eval $(make config)
	@echo ". ../.env || true;"
	@awk '{ print "export " $$0}' .env
	@echo "# Please, run: "
	@echo "# eval \$$(make config)"
# If you need to run a command on the key/value pairs, use this:
# @awk '{ split($$0, a, "="); "echo " a[2] " | base64 -w 0" |& getline b64; print "export " a[1] "=" a[2]; print "export " a[1] "_BASE64=" b64}' .env

ci:  ## Run a task using gitlab-runner. Only use to debug problems in the CI pipeline
	gitlab-runner exec shell --builds-dir '.builds' --env CI_PROJECT_NAME=$(NAME) ${action}

26
include $(MK_DIR)/makefiles.mk
27
28

.PHONY:: config help ci version .FORCE