Skip to content

Commit c9760b3

Browse files
committed
abstract use of docker in makefile, to allow for use of podman
1 parent e0675e6 commit c9760b3

File tree

2 files changed

+28
-27
lines changed

2 files changed

+28
-27
lines changed

Diff for: Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
###########
22
# Stage 1 #
33
###########
4-
FROM golang:1.11-alpine as build
4+
FROM golang:1.15-alpine as build
55

66
RUN apk add git
77

Diff for: Makefile

+27-26
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ GO := go
88
GOLANGCILINT = golangci-lint
99
GOSTATICCHECK = staticcheck
1010

11+
CTR_CMD=docker
12+
1113
# some targets taken from https://github.com/genuinetools/img/blob/2e8ff3a3c55b6e0ca48cf1cd2dc8d308561755ac/basic.mk
1214

1315
.PHONY: ci
@@ -63,42 +65,41 @@ lint:
6365
verify-vendor:
6466
@$(GO) mod verify
6567

66-
67-
.PHONY: docker-network
68-
docker-network:
69-
@if [[ -z "$(shell docker network ls | grep scrimplb | tee /dev/stderr)" ]]; then\
68+
.PHONY: ctr-network
69+
ctr-network:
70+
@if [[ -z "$(shell $(CTR_CMD) network ls | grep scrimplb | tee /dev/stderr)" ]]; then\
7071
echo "Creating scrimplb6 network";\
71-
docker network create --ipv6 --subnet fd02:c0df:1500:1::/80 scrimplb6;\
72+
$(CTR_CMD) network create --ipv6 --subnet fd02:c0df:1500:1::/80 scrimplb6;\
7273
fi
7374

74-
.PHONY: docker-image
75-
docker-image:
76-
docker build --tag scrimp -t scrimp:latest .
75+
.PHONY: ctr-image
76+
ctr-image:
77+
$(CTR_CMD) build --tag scrimp -t scrimp:latest .
7778

78-
.PHONY: docker-run-lb
79-
docker-run-lb: docker-network
80-
docker run -it --rm --network scrimplb6 --ip6 "fd02:c0df:1500:1::10" -v $(shell pwd)/fixture:/fixture scrimp:latest -config-file /fixture/scrimp-lb.json
79+
.PHONY: ctr-run-lb
80+
ctr-run-lb: ctr-network
81+
$(CTR_CMD) run -it --rm --network scrimplb6 --ip6 "fd02:c0df:1500:1::10" -v $(shell pwd)/fixture:/fixture scrimp:latest -config-file /fixture/scrimp-lb.json
8182

82-
.PHONY: docker-run-backend1
83-
docker-run-backend1: docker-network
84-
docker run -it --rm --network scrimplb6 -v $(shell pwd)/fixture:/fixture scrimp:latest -config-file /fixture/scrimp-backend1.json
83+
.PHONY: ctr-run-backend1
84+
ctr-run-backend1: ctr-network
85+
$(CTR_CMD) run -it --rm --network scrimplb6 -v $(shell pwd)/fixture:/fixture scrimp:latest -config-file /fixture/scrimp-backend1.json
8586

86-
.PHONY: docker-run-backend2
87-
docker-run-backend2: docker-network
88-
docker run -it --rm --network scrimplb6 -v $(shell pwd)/fixture:/fixture scrimp:latest -config-file /fixture/scrimp-backend2.json
87+
.PHONY: ctr-run-backend2
88+
ctr-run-backend2: ctr-network
89+
$(CTR_CMD) run -it --rm --network scrimplb6 -v $(shell pwd)/fixture:/fixture scrimp:latest -config-file /fixture/scrimp-backend2.json
8990

90-
.PHONY: docker-build-env
91-
docker-build-env: VERSION.txt Dockerfile.build
92-
@if [[ -z '$(shell docker image ls --quiet scrimplb-build:$(VERSION))' ]]; then \
93-
docker build -f Dockerfile.build -t scrimplb-build:$(VERSION) . ;\
91+
.PHONY: ctr-build-env
92+
ctr-build-env: VERSION.txt Dockerfile.build
93+
@if [[ -z '$(shell $(CTR_CMD) image ls --quiet scrimplb-build:$(VERSION))' ]]; then \
94+
$(CTR_CMD) build -f Dockerfile.build -t scrimplb-build:$(VERSION) . ;\
9495
fi
9596

96-
.PHONY: docker-ci
97-
docker-ci: docker-build-env
97+
.PHONY: ctr-ci
98+
ctr-ci: ctr-build-env
9899
mkdir -p bin BUILD
99-
docker run --rm -v "$$PWD:/work" scrimplb-build:$(VERSION) make ci
100+
$(CTR_CMD) run --rm -v "$$PWD:/work" scrimplb-build:$(VERSION) make ci
100101

101-
# Uses docker-fpm to build a deb
102+
# Uses $(CTR_CMD)-fpm to build a deb
102103
ARTIFACT/scrimplb.deb: clean bin/$(NAME)-linux-rel $(wildcard dist/debian/*) VERSION.txt
103104
mkdir -p ARTIFACT
104105
mkdir -p BUILD/usr/bin BUILD/lib/systemd/system BUILD/etc/scrimplb BUILD/etc/sudoers.d
@@ -109,7 +110,7 @@ ARTIFACT/scrimplb.deb: clean bin/$(NAME)-linux-rel $(wildcard dist/debian/*) VER
109110
cp dist/debian/dhparam.pem BUILD/etc/scrimplb/
110111
cp VERSION.txt BUILD/etc/scrimplb/
111112
chmod 440 BUILD/etc/sudoers.d/10-scrimplb-systemctl-restart
112-
docker run -it --rm -v $(shell pwd)/:/fpm fpm:latest -s dir -t deb \
113+
$(CTR_CMD) run -it --rm -v $(shell pwd)/:/fpm fpm:latest -s dir -t deb \
113114
-n $(NAME) \
114115
-v $(VERSION) \
115116
-p /fpm/$@ \

0 commit comments

Comments
 (0)