This repository has been archived by the owner on Feb 12, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathMakefile.mk
47 lines (35 loc) · 1.82 KB
/
Makefile.mk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
MAKEFLAGS += --warn-undefined-variables
.DEFAULT_GOAL := build
PHONY: all build test push push_latest clean clean_all
M = $(shell printf "\033[34;1m▶\033[0m")
NAME := "quay.io/ahelal/cibully"
VERSION := $(shell cat .VERSION)
BUILD_ARGS := --build-arg VERSION=${VERSION}
docker: dbuild dpush dpush_latest
dbuild:
$(info $(M) Building ${NAME}:${VERSION}…)
@#docker build ${BUILD_ARGS} --no-cache=True -t ${NAME}:${VERSION} -f Dockerfile .
docker build ${BUILD_ARGS} -t ${NAME}:${VERSION} -f Dockerfile .
dtests:
@if ! docker images $(NAME) | awk '{print $$2 }' | grep -q -F $(VERSION); then echo "$(NAME) version $(VERSION) is not yet built. Please run 'make build'"; false; fi
@docker tag $(NAME):$(VERSION) $(NAME):dev
@./test/run_tests.sh tests
dtests-debug:
@if ! docker images $(NAME) | awk '{print $$2 }' | grep -q -F $(VERSION); then echo "$(NAME) version $(VERSION) is not yet built. Please run 'make build'"; false; fi
@docker tag $(NAME):$(VERSION) $(NAME):dev
@./test/run_tests.sh tests-debug
dpush:
@echo ${VERSION}
@if ! docker images $(NAME) | awk '{print $$2 }' | grep -q -F $(VERSION); then echo "$(NAME) version $(VERSION) is not yet built. Please run 'make build'"; false; fi
$(info $(M) Pushing ${NAME}:${VERSION}…)
@docker push "${NAME}:${VERSION}"
dpush_latest:
$(info $(M) Linking latest and pushing ${NAME}:${VERSION}…)
docker tag $(NAME):$(VERSION) $(NAME):latest
docker push "${NAME}:latest"
dclean:
@if docker images $(NAME) | awk '{print $$2 }' | grep -q -F $(VERSION); then echo "*** Cleaning ${NAME}:${VERSION} ***"; docker rmi "${NAME}:${VERSION}"; else echo "*** No image ${NAME}:${VERSION} ***"; fi
dclean_all: clean
$(info $(M) Cleaning all…)
@#@if docker images $(NAME) | awk '{print $$2 }'; then echo "*** Cleaning ${NAME} ***"; docker rmi "${NAME}"; fi
docker system prune -f