blob: 4c2424e251935134ff378531c3e5c4facec739bf [file] [log] [blame]
gio0eaf2712024-04-14 13:08:46 +04001repo_name ?= giolekva
2podman ?= docker
3ifeq ($(podman), podman)
4manifest_dest=docker://docker.io/$(repo_name)/app-runner:golang-1.22.0
5endif
6
7clean:
8 rm -f app-runner
9
10build_arm64: export CGO_ENABLED=0
11build_arm64: export GO111MODULE=on
12build_arm64: export GOOS=linux
13build_arm64: export GOARCH=arm64
14build_arm64:
15 /usr/local/go/bin/go build -o app-runner_arm64 *.go
16
17build_amd64: export CGO_ENABLED=0
18build_amd64: export GO111MODULE=on
19build_amd64: export GOOS=linux
20build_amd64: export GOARCH=amd64
21build_amd64:
22 /usr/local/go/bin/go build -o app-runner_amd64 *.go
23
24push_arm64: clean build_arm64
25 $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:golang-1.22.0-arm64 .
26 $(podman) push $(repo_name)/app-runner:golang-1.22.0-arm64
27
28push_amd64: clean build_amd64
29 $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:golang-1.22.0-amd64 .
30 $(podman) push $(repo_name)/app-runner:golang-1.22.0-amd64
31
32push: push_arm64 push_amd64
33 $(podman) manifest create $(repo_name)/app-runner:golang-1.22.0 $(repo_name)/app-runner:golang-1.22.0-arm64 $(repo_name)/app-runner:golang-1.22.0-amd64
34 $(podman) manifest push $(repo_name)/app-runner:golang-1.22.0 $(manifest_dest)
35 $(podman) manifest rm $(repo_name)/app-runner:golang-1.22.0