blob: 8bef469cf66b82a333c0af0ea6aa2075dd12e356 [file] [log] [blame]
gioe72b54f2024-04-22 10:44:41 +04001repo_name ?= dtabidze
2podman ?= docker
gio2446de02025-04-11 11:20:39 +04003docker_flags=--provenance=false --sbom=false
gioe72b54f2024-04-22 10:44:41 +04004ifeq ($(podman), podman)
giof6ad2982024-08-23 17:42:49 +04005manifest_dest=docker://docker.io/$(repo_name)/dns-api:latest
gioe72b54f2024-04-22 10:44:41 +04006endif
7
8clean:
9 rm -f dns-api*
10
11# TODO(gio): fix go path
12build:
13 /usr/local/go/bin/go build -o dns-api *.go
14
15build_arm64: export CGO_ENABLED=0
16build_arm64: export GO111MODULE=on
17build_arm64: export GOOS=linux
18build_arm64: export GOARCH=arm64
19build_arm64:
20 /usr/local/go/bin/go build -o dns-api_arm64 *.go
21
22build_amd64: export CGO_ENABLED=0
23build_amd64: export GO111MODULE=on
24build_amd64: export GOOS=linux
25build_amd64: export GOARCH=amd64
26build_amd64:
27 /usr/local/go/bin/go build -o dns-api_amd64 *.go
28
29push_arm64: clean build_arm64
gio2446de02025-04-11 11:20:39 +040030 $(podman) build --platform linux/arm64 --tag=giolekva/dns-api:arm64 $(docker_flags) .
gioe72b54f2024-04-22 10:44:41 +040031 $(podman) push giolekva/dns-api:arm64
32
33push_amd64: clean build_amd64
gio2446de02025-04-11 11:20:39 +040034 $(podman) build --platform linux/amd64 --tag=giolekva/dns-api:amd64 $(docker_flags) .
gioe72b54f2024-04-22 10:44:41 +040035 $(podman) push giolekva/dns-api:amd64
36
37push: push_arm64 push_amd64
38 $(podman) manifest create giolekva/dns-api:latest giolekva/dns-api:arm64 giolekva/dns-api:amd64
gio2446de02025-04-11 11:20:39 +040039 $(podman) manifest push --purge giolekva/dns-api:latest $(manifest_dest)