-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile
36 lines (30 loc) · 1019 Bytes
/
Makefile
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
include ./Makefile.properties
DOCKERREPO=$(DOCKERUSER)/$(DOCKERIMAGE)
BUILD_ARTIFACTS_PATH=./.make.build
build: get.version.alpine
docker build \
--build-arg "VERSION_ALPINE=$$(cat ./$(BUILD_ARTIFACTS_PATH)/version.alpine)" \
--tag $(DOCKERREPO):latest \
.
-@rm -rf $(BUILD_ARTIFACTS_PATH)
build.tests: get.version.alpine
docker build \
--build-arg "VERSION_ALPINE=$$(cat ./$(BUILD_ARTIFACTS_PATH)/version.alpine)" \
--tag $(DOCKERREPO):tests-latest \
./tests
-@rm -rf $(BUILD_ARTIFACTS_PATH)
test: build.tests
./tests/entrypoint.sh
publish: build
docker tag $(DOCKERREPO):latest $(DOCKERREGISTRY)/$(DOCKERREPO):latest
docker push $(DOCKERREPO):latest
docker push $(DOCKERREGISTRY)/$(DOCKERREPO):latest
get.version.alpine:
-@mkdir -p $(BUILD_ARTIFACTS_PATH)
@curl \
-s "https://hub.docker.com/v2/repositories/library/alpine/tags/?page_size=100" \
| jq '.results[].name' \
| egrep -oi '[0-9]+\.[0-9]+\.*[0-9]*' \
| sort -Vr \
| head -n 1 \
> $(BUILD_ARTIFACTS_PATH)/version.alpine