blob: eb16feb21998aff5069f211755fb9ed9d844fb15 [file] [log] [blame]
Giorgi Lekveishvilib59b7c22024-04-03 22:17:50 +04001repo_name ?= dtabidze
2podman ?= docker
3ifeq ($(podman), podman)
4manifest_dest=docker://docker.io/$(repo_name)/port-allocator:latest
5endif
6
7clean:
8 rm -f server*
9
10build: export CGO_ENABLED=0
11build: clean
12 /usr/local/go/bin/go build -o server *.go
13
14test: export CGO_ENABLED=0
15test:
16 /usr/local/go/bin/go test ./...
17
18test: export CGO_ENABLED=0
19testv:
20 /usr/local/go/bin/go test -v ./...
21
22build_arm64: export CGO_ENABLED=0
23build_arm64: export GO111MODULE=on
24build_arm64: export GOOS=linux
25build_arm64: export GOARCH=arm64
26build_arm64:
27 /usr/local/go/bin/go build -o server_arm64 *.go
28
29build_amd64: export CGO_ENABLED=0
30build_amd64: export GO111MODULE=on
31build_amd64: export GOOS=linux
32build_amd64: export GOARCH=amd64
33build_amd64:
34 /usr/local/go/bin/go build -o server_amd64 *.go
35
36push_arm64: clean build_arm64
37 $(podman) build --platform linux/arm64 --tag=$(repo_name)/port-allocator:arm64 .
38 $(podman) push $(repo_name)/port-allocator:arm64
39
40push_amd64: clean build_amd64
41 $(podman) build --platform linux/amd64 --tag=$(repo_name)/port-allocator:amd64 .
42 $(podman) push $(repo_name)/port-allocator:amd64
43
44push: push_arm64 push_amd64
45 $(podman) manifest create $(repo_name)/port-allocator:latest $(repo_name)/port-allocator:arm64 $(repo_name)/port-allocator:amd64
46 $(podman) manifest push $(repo_name)/port-allocator:latest $(manifest_dest)
47 $(podman) manifest rm $(repo_name)/port-allocator:latest