Build: Fix multi-arch docker builds
Change-Id: I3968065215b696256ee819e2062ab1d3cadfcbcf
diff --git a/apps/app-repository/Makefile b/apps/app-repository/Makefile
index b9d7bc2..09b9a8c 100644
--- a/apps/app-repository/Makefile
+++ b/apps/app-repository/Makefile
@@ -1,3 +1,10 @@
+repo_name ?= giolekva
+podman ?= docker
+docker_flags=--provenance=false --sbom=false
+ifeq ($(podman), podman)
+manifest_dest=docker://docker.io/$(repo_name)/app-repository:latest
+endif
+
clean:
rm -f server_*
@@ -16,18 +23,14 @@
go build -o server_amd64 cmd/*.go
push_arm64: clean build_arm64
- podman build --platform linux/arm64 --tag=giolekva/app-repository:arm64 .
- podman push giolekva/app-repository:arm64
+ $(podman) build --platform linux/arm64 --tag=giolekva/app-repository:arm64 $(docker_flags) .
+ $(podman) push giolekva/app-repository:arm64
push_amd64: clean build_amd64
- podman build --platform linux/amd64 --tag=giolekva/app-repository:amd64 .
- podman push giolekva/app-repository:amd64
+ $(podman) build --platform linux/amd64 --tag=giolekva/app-repository:amd64 $(docker_flags) .
+ $(podman) push giolekva/app-repository:amd64
push: push_arm64 push_amd64
- podman manifest create giolekva/app-repository:latest giolekva/app-repository:arm64 giolekva/app-repository:amd64
- podman manifest push giolekva/app-repository:latest docker://docker.io/giolekva/app-repository:latest
- podman manifest rm giolekva/app-repository:latest
-
-run:
- go run cmd/*.go
+ $(podman) manifest create giolekva/app-repository:latest giolekva/app-repository:arm64 giolekva/app-repository:amd64
+ $(podman) manifest push --purge giolekva/app-repository:latest $(manifest_dest)
diff --git a/apps/app-runner/Makefile b/apps/app-runner/Makefile
index 8f11f8b..72fcb79 100644
--- a/apps/app-runner/Makefile
+++ b/apps/app-runner/Makefile
@@ -1,5 +1,6 @@
repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest_golang_1_24_0=docker://docker.io/$(repo_name)/app-runner:golang-1.24.0
manifest_dest_golang_1_22_0=docker://docker.io/$(repo_name)/app-runner:golang-1.22.0
@@ -30,11 +31,11 @@
# Golang 1.24.0
push_golang_1_24_0_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:golang-1.24.0-arm64 -f Dockerfile.golang.1.24.0 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:golang-1.24.0-arm64 -f Dockerfile.golang.1.24.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:golang-1.24.0-arm64
push_golang_1_24_0_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:golang-1.24.0-amd64 -f Dockerfile.golang.1.24.0 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:golang-1.24.0-amd64 -f Dockerfile.golang.1.24.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:golang-1.24.0-amd64
push_golang_1_24_0: push_golang_1_24_0_arm64 push_golang_1_24_0_amd64
@@ -45,11 +46,11 @@
# Golang 1.22.0
push_golang_1_22_0_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:golang-1.22.0-arm64 -f Dockerfile.golang.1.22.0 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:golang-1.22.0-arm64 -f Dockerfile.golang.1.22.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:golang-1.22.0-arm64
push_golang_1_22_0_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:golang-1.22.0-amd64 -f Dockerfile.golang.1.22.0 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:golang-1.22.0-amd64 -f Dockerfile.golang.1.22.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:golang-1.22.0-amd64
push_golang_1_22_0: push_golang_1_22_0_arm64 push_golang_1_22_0_amd64
@@ -60,11 +61,11 @@
# Golang 1.20.0
push_golang_1_20_0_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:golang-1.20.0-arm64 -f Dockerfile.golang.1.20.0 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:golang-1.20.0-arm64 -f Dockerfile.golang.1.20.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:golang-1.20.0-arm64
push_golang_1_20_0_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:golang-1.20.0-amd64 -f Dockerfile.golang.1.20.0 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:golang-1.20.0-amd64 -f Dockerfile.golang.1.20.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:golang-1.20.0-amd64
push_golang_1_20_0: push_golang_1_20_0_arm64 push_golang_1_20_0_amd64
@@ -75,11 +76,11 @@
# Hugo
push_hugo_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:hugo-latest-arm64 -f Dockerfile.hugo .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:hugo-latest-arm64 -f Dockerfile.hugo $(docker_flags) .
$(podman) push $(repo_name)/app-runner:hugo-latest-arm64
push_hugo_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:hugo-latest-amd64 -f Dockerfile.hugo .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:hugo-latest-amd64 -f Dockerfile.hugo $(docker_flags) .
$(podman) push $(repo_name)/app-runner:hugo-latest-amd64
push_hugo: push_hugo_arm64 push_hugo_amd64
@@ -90,11 +91,11 @@
# PHP
push_php_8_2_apache_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:php-8.2-apache-arm64 -f Dockerfile.php.8.2.apache .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:php-8.2-apache-arm64 -f Dockerfile.php.8.2.apache $(docker_flags) .
$(podman) push $(repo_name)/app-runner:php-8.2-apache-arm64
push_php_8_2_apache_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:php-8.2-apache-amd64 -f Dockerfile.php.8.2.apache .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:php-8.2-apache-amd64 -f Dockerfile.php.8.2.apache $(docker_flags) .
$(podman) push $(repo_name)/app-runner:php-8.2-apache-amd64
push_php_8_2_apache: push_php_8_2_apache_arm64 push_php_8_2_apache_amd64
@@ -105,11 +106,11 @@
# Nextjs
push_nextjs_deno_2_0_0_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:nextjs-deno-2.0.0-arm64 -f Dockerfile.nextjs.deno.2.0.0 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:nextjs-deno-2.0.0-arm64 -f Dockerfile.nextjs.deno.2.0.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:nextjs-deno-2.0.0-arm64
push_nextjs_deno_2_0_0_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:nextjs-deno-2.0.0-amd64 -f Dockerfile.nextjs.deno.2.0.0 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:nextjs-deno-2.0.0-amd64 -f Dockerfile.nextjs.deno.2.0.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:nextjs-deno-2.0.0-amd64
push_nextjs_deno_2_0_0: push_nextjs_deno_2_0_0_arm64 push_nextjs_deno_2_0_0_amd64
@@ -120,17 +121,16 @@
# Nextjs
push_nodejs_23_1_0_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:nodejs-23.1.0-arm64 -f Dockerfile.nodejs.23.1.0 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:nodejs-23.1.0-arm64 -f Dockerfile.nodejs.23.1.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:nodejs-23.1.0-arm64
push_nodejs_23_1_0_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:nodejs-23.1.0-amd64 -f Dockerfile.nodejs.23.1.0 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:nodejs-23.1.0-amd64 -f Dockerfile.nodejs.23.1.0 $(docker_flags) .
$(podman) push $(repo_name)/app-runner:nodejs-23.1.0-amd64
push_nodejs_23_1_0: push_nodejs_23_1_0_arm64 push_nodejs_23_1_0_amd64
$(podman) manifest create $(repo_name)/app-runner:nodejs-23.1.0 $(repo_name)/app-runner:nodejs-23.1.0-arm64 $(repo_name)/app-runner:nodejs-23.1.0-amd64
- $(podman) manifest push $(repo_name)/app-runner:nodejs-23.1.0 $(manifest_dest_nodejs_23_1_0)
- $(podman) manifest rm $(repo_name)/app-runner:nodejs-23.1.0
+ $(podman) manifest push --purge $(repo_name)/app-runner:nodejs-23.1.0 $(manifest_dest_nodejs_23_1_0)
# all
push: push_golang_1_22_0 push_golang_1_20_0 push_hugo push_php_8_2_apache push_nextjs_deno_2_0_0 push_nodejs_23_1_0
diff --git a/apps/capture-config/Makefile b/apps/capture-config/Makefile
index 1a65580..b9e7776 100644
--- a/apps/capture-config/Makefile
+++ b/apps/capture-config/Makefile
@@ -1,5 +1,6 @@
repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/capture-config:latest
endif
@@ -22,14 +23,13 @@
go build -o capture-config_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/capture-config:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/capture-config:arm64 $(docker_flags) .
$(podman) push $(repo_name)/capture-config:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/capture-config:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/capture-config:amd64 $(docker_flags) .
$(podman) push $(repo_name)/capture-config:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/capture-config:latest $(repo_name)/capture-config:arm64 $(repo_name)/capture-config:amd64
- $(podman) manifest push $(repo_name)/capture-config:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/capture-config:latest
+ $(podman) manifest push --purge $(repo_name)/capture-config:latest $(manifest_dest)
diff --git a/apps/rpuppy/Makefile b/apps/rpuppy/Makefile
index a85dbda..97c7944 100644
--- a/apps/rpuppy/Makefile
+++ b/apps/rpuppy/Makefile
@@ -1,5 +1,6 @@
-repo_name ?= dtabidze
+repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/rpuppy:latest
endif
@@ -22,14 +23,13 @@
go build -o rpuppy_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/rpuppy:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/rpuppy:arm64 $(docker_flags) .
$(podman) push $(repo_name)/rpuppy:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/rpuppy:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/rpuppy:amd64 $(docker_flags) .
$(podman) push $(repo_name)/rpuppy:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/rpuppy:latest $(repo_name)/rpuppy:arm64 $(repo_name)/rpuppy:amd64
- $(podman) manifest push $(repo_name)/rpuppy:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/rpuppy:latest
+ $(podman) manifest push --purge $(repo_name)/rpuppy:latest $(manifest_dest)
diff --git a/apps/url-shortener/Makefile b/apps/url-shortener/Makefile
index 9fbc4c4..2dd8864 100644
--- a/apps/url-shortener/Makefile
+++ b/apps/url-shortener/Makefile
@@ -1,6 +1,6 @@
repo_name ?= giolekva
-podman ?= podman
-manifest_dest =
+podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/url-shortener:latest
endif
@@ -24,14 +24,13 @@
/usr/local/go/bin/go build -o url-shortener_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/url-shortener:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/url-shortener:arm64 $(docker_flags) .
$(podman) push $(repo_name)/url-shortener:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/url-shortener:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/url-shortener:amd64 $(docker_flags) .
$(podman) push $(repo_name)/url-shortener:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/url-shortener:latest $(repo_name)/url-shortener:arm64 $(repo_name)/url-shortener:amd64
- $(podman) manifest push $(repo_name)/url-shortener:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/url-shortener:latest
+ $(podman) manifest push --purge $(repo_name)/url-shortener:latest $(manifest_dest)
diff --git a/core/auth/memberships/Makefile b/core/auth/memberships/Makefile
index 5959f01..957ece1 100644
--- a/core/auth/memberships/Makefile
+++ b/core/auth/memberships/Makefile
@@ -1,6 +1,6 @@
-repo_name ?= dtabidze
+repo_name ?= giolekva
podman ?= docker
-manifest_dest =
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/memberships:latest
endif
@@ -30,14 +30,13 @@
/usr/local/go/bin/go build -o memberships_amd64 *.go
push_arm64: build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/memberships:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/memberships:arm64 $(docker_flags) .
$(podman) push $(repo_name)/memberships:arm64
push_amd64: build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/memberships:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/memberships:amd64 $(docker_flags) .
$(podman) push $(repo_name)/memberships:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/memberships:latest $(repo_name)/memberships:arm64 $(repo_name)/memberships:amd64
- $(podman) manifest push $(repo_name)/memberships:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/memberships:latest
+ $(podman) manifest push --purge $(repo_name)/memberships:latest $(manifest_dest)
diff --git a/core/auth/proxy/Makefile b/core/auth/proxy/Makefile
index 83fa29d..a7203d5 100644
--- a/core/auth/proxy/Makefile
+++ b/core/auth/proxy/Makefile
@@ -1,5 +1,6 @@
repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/auth-proxy:latest
endif
@@ -25,15 +26,14 @@
/usr/local/go/bin/go build -o server_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/auth-proxy:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/auth-proxy:arm64 $(docker_flags) .
$(podman) push $(repo_name)/auth-proxy:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/auth-proxy:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/auth-proxy:amd64 $(docker_flags) .
$(podman) push $(repo_name)/auth-proxy:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/auth-proxy:latest $(repo_name)/auth-proxy:arm64 $(repo_name)/auth-proxy:amd64
- $(podman) manifest push $(repo_name)/auth-proxy:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/auth-proxy:latest
+ $(podman) manifest push --purge $(repo_name)/auth-proxy:latest $(manifest_dest)
diff --git a/core/auth/ui/Makefile b/core/auth/ui/Makefile
index 23ae76b..cb29df7 100644
--- a/core/auth/ui/Makefile
+++ b/core/auth/ui/Makefile
@@ -1,5 +1,6 @@
-repo_name ?= dtabidze
+repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/pcloud-installer:latest
endif
@@ -25,15 +26,14 @@
go build -o server_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/auth-ui:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/auth-ui:arm64 $(docker_flags) .
$(podman) push $(repo_name)/auth-ui:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/auth-ui:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/auth-ui:amd64 $(docker_flags) .
$(podman) push $(repo_name)/auth-ui:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/auth-ui:latest $(repo_name)/auth-ui:arm64 $(repo_name)/auth-ui:amd64
- $(podman) manifest push $(repo_name)/auth-ui:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/auth-ui:latest
+ $(podman) manifest push --purge $(repo_name)/auth-ui:latest $(manifest_dest)
diff --git a/core/dns-api/Makefile b/core/dns-api/Makefile
index bd78618..8bef469 100644
--- a/core/dns-api/Makefile
+++ b/core/dns-api/Makefile
@@ -1,5 +1,6 @@
repo_name ?= dtabidze
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/dns-api:latest
endif
@@ -26,14 +27,13 @@
/usr/local/go/bin/go build -o dns-api_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=giolekva/dns-api:arm64 .
+ $(podman) build --platform linux/arm64 --tag=giolekva/dns-api:arm64 $(docker_flags) .
$(podman) push giolekva/dns-api:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=giolekva/dns-api:amd64 .
+ $(podman) build --platform linux/amd64 --tag=giolekva/dns-api:amd64 $(docker_flags) .
$(podman) push giolekva/dns-api:amd64
push: push_arm64 push_amd64
$(podman) manifest create giolekva/dns-api:latest giolekva/dns-api:arm64 giolekva/dns-api:amd64
- $(podman) manifest push giolekva/dns-api:latest $(manifest_dest)
- $(podman) manifest rm giolekva/dns-api:latest
+ $(podman) manifest push --purge giolekva/dns-api:latest $(manifest_dest)
diff --git a/core/dns-challenge-solver/Makefile b/core/dns-challenge-solver/Makefile
index e43ccb2..0fc388d 100644
--- a/core/dns-challenge-solver/Makefile
+++ b/core/dns-challenge-solver/Makefile
@@ -1,5 +1,6 @@
-repo_name ?= dtabidze
+repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/dns-challenge-solver:latest
endif
@@ -26,14 +27,13 @@
/usr/local/go/bin/go build -o dns-challenge-solver_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=giolekva/dns-challenge-solver:arm64 .
+ $(podman) build --platform linux/arm64 --tag=giolekva/dns-challenge-solver:arm64 $(docker_flags) .
$(podman) push giolekva/dns-challenge-solver:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=giolekva/dns-challenge-solver:amd64 .
+ $(podman) build --platform linux/amd64 --tag=giolekva/dns-challenge-solver:amd64 $(docker_flags) .
$(podman) push giolekva/dns-challenge-solver:amd64
push: push_arm64 push_amd64
$(podman) manifest create giolekva/dns-challenge-solver:latest giolekva/dns-challenge-solver:arm64 giolekva/dns-challenge-solver:amd64
- $(podman) manifest push giolekva/dns-challenge-solver:latest $(manifest_dest)
- $(podman) manifest rm giolekva/dns-challenge-solver:latest
+ $(podman) manifest push --purge giolekva/dns-challenge-solver:latest $(manifest_dest)
diff --git a/core/fluxcd-reconciler/Makefile b/core/fluxcd-reconciler/Makefile
index 0ef3b6c..3cdf26a 100644
--- a/core/fluxcd-reconciler/Makefile
+++ b/core/fluxcd-reconciler/Makefile
@@ -1,5 +1,6 @@
repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($($(podman)), $(podman))
manifest_dest=docker://docker.io/$(repo_name)/fluxcd-reconciler:latest
endif
@@ -33,18 +34,17 @@
push_arm64: clean build_arm64
mkdir tmp
cp -r ../../charts tmp/
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/fluxcd-reconciler:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/fluxcd-reconciler:arm64 $(docker_flags) .
rm -rf tmp
$(podman) push $(repo_name)/fluxcd-reconciler:arm64
push_amd64: clean build_amd64
mkdir tmp
cp -r ../../charts tmp/
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/fluxcd-reconciler:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/fluxcd-reconciler:amd64 $(docker_flags) .
rm -rf tmp
$(podman) push $(repo_name)/fluxcd-reconciler:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/fluxcd-reconciler:latest $(repo_name)/fluxcd-reconciler:arm64 $(repo_name)/fluxcd-reconciler:amd64
- $(podman) manifest push $(repo_name)/fluxcd-reconciler:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/fluxcd-reconciler:latest
+ $(podman) manifest push --purge $(repo_name)/fluxcd-reconciler:latest $(manifest_dest)
diff --git a/core/headscale/Makefile b/core/headscale/Makefile
index 9468ad6..ee080a3 100644
--- a/core/headscale/Makefile
+++ b/core/headscale/Makefile
@@ -1,5 +1,6 @@
repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/headscale-api:latest
endif
@@ -22,15 +23,14 @@
go build -o server_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/headscale-api:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/headscale-api:arm64 $(docker_flags) .
$(podman) push $(repo_name)/headscale-api:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/headscale-api:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/headscale-api:amd64 $(docker_flags) .
$(podman) push $(repo_name)/headscale-api:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/headscale-api:latest $(repo_name)/headscale-api:arm64 $(repo_name)/headscale-api:amd64
- $(podman) manifest push $(repo_name)/headscale-api:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/headscale-api:latest
+ $(podman) manifest push --purge $(repo_name)/headscale-api:latest $(manifest_dest)
diff --git a/core/headscale/controller/Makefile b/core/headscale/controller/Makefile
index d32e0e4..67e56f2 100644
--- a/core/headscale/controller/Makefile
+++ b/core/headscale/controller/Makefile
@@ -1,3 +1,4 @@
+docker_flags=--provenance=false --sbom=false
# Image URL to use all building/pushing image targets
IMG ?= giolekva/headscale-controller:latest
@@ -87,16 +88,15 @@
.PHONY: docker-build
docker-build: test clean build_arm64 build_amd64 ## Build docker image with the manager.
- podman build --platform linux/arm64 --tag ${IMG}-arm64 .
- podman build --platform linux/amd64 --tag ${IMG}-amd64 .
+ docker build --platform linux/arm64 --tag ${IMG}-arm64 $(docker_flags) .
+ docker build --platform linux/amd64 --tag ${IMG}-amd64 $(docker_flags) .
.PHONY: docker-push
-docker-push: ## Push docker image with the manager.
- podman push ${IMG}-arm64
- podman push ${IMG}-amd64
- podman manifest create ${IMG} ${IMG}-arm64 ${IMG}-amd64
- podman manifest push ${IMG} docker://docker.io/${IMG}
- podman manifest rm ${IMG}
+docker-push: docker-build
+ docker push ${IMG}-arm64
+ docker push ${IMG}-amd64
+ docker manifest create ${IMG} ${IMG}-arm64 ${IMG}-amd64
+ docker manifest push --purge ${IMG}
##@ Deployment
diff --git a/core/headscale/controller/api/v1/groupversion_info.go b/core/headscale/controller/api/v1/groupversion_info.go
index 2449e9e..7536a7e 100644
--- a/core/headscale/controller/api/v1/groupversion_info.go
+++ b/core/headscale/controller/api/v1/groupversion_info.go
@@ -15,8 +15,8 @@
*/
// Package v1 contains API Schema definitions for the headscale v1 API group
-//+kubebuilder:object:generate=true
-//+groupName=headscale.dodo.cloud
+// +kubebuilder:object:generate=true
+// +groupName=headscale.dodo.cloud
package v1
import (
diff --git a/core/installer/Makefile b/core/installer/Makefile
index 0fc236c..fe61694 100644
--- a/core/installer/Makefile
+++ b/core/installer/Makefile
@@ -1,5 +1,6 @@
repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/pcloud-installer:latest
endif
@@ -67,18 +68,17 @@
push_arm64: clean build_arm64
mkdir tmp
cp -r ../../charts tmp/
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/pcloud-installer:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/pcloud-installer:arm64 $(docker_flags) .
rm -rf tmp
$(podman) push $(repo_name)/pcloud-installer:arm64
push_amd64: clean build_amd64
mkdir tmp
cp -r ../../charts tmp/
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/pcloud-installer:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/pcloud-installer:amd64 $(docker_flags) .
rm -rf tmp
$(podman) push $(repo_name)/pcloud-installer:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/pcloud-installer:latest $(repo_name)/pcloud-installer:arm64 $(repo_name)/pcloud-installer:amd64
- $(podman) manifest push $(repo_name)/pcloud-installer:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/pcloud-installer:latest
+ $(podman) manifest push --purge $(repo_name)/pcloud-installer:latest $(manifest_dest)
diff --git a/core/port-allocator/Makefile b/core/port-allocator/Makefile
index 3133983..3135f4a 100644
--- a/core/port-allocator/Makefile
+++ b/core/port-allocator/Makefile
@@ -1,5 +1,6 @@
repo_name ?= giolekva
podman ?= docker
+docker_flags=--provenance=false --sbom=false
ifeq ($(podman), podman)
manifest_dest=docker://docker.io/$(repo_name)/port-allocator:latest
endif
@@ -34,14 +35,13 @@
/usr/local/go/bin/go build -o server_amd64 *.go
push_arm64: clean build_arm64
- $(podman) build --platform linux/arm64 --tag=$(repo_name)/port-allocator:arm64 .
+ $(podman) build --platform linux/arm64 --tag=$(repo_name)/port-allocator:arm64 $(docker_flags) .
$(podman) push $(repo_name)/port-allocator:arm64
push_amd64: clean build_amd64
- $(podman) build --platform linux/amd64 --tag=$(repo_name)/port-allocator:amd64 .
+ $(podman) build --platform linux/amd64 --tag=$(repo_name)/port-allocator:amd64 $(docker_flags) .
$(podman) push $(repo_name)/port-allocator:amd64
push: push_arm64 push_amd64
$(podman) manifest create $(repo_name)/port-allocator:latest $(repo_name)/port-allocator:arm64 $(repo_name)/port-allocator:amd64
- $(podman) manifest push $(repo_name)/port-allocator:latest $(manifest_dest)
- $(podman) manifest rm $(repo_name)/port-allocator:latest
+ $(podman) manifest push --purge $(repo_name)/port-allocator:latest $(manifest_dest)
diff --git a/core/resource-renderer/Makefile b/core/resource-renderer/Makefile
index ae6b7d3..87665d6 100644
--- a/core/resource-renderer/Makefile
+++ b/core/resource-renderer/Makefile
@@ -1,3 +1,4 @@
+docker_flags=--provenance=false --sbom=false
# Image URL to use all building/pushing image targets
IMG ?= giolekva/resource-renderer-controller
@@ -88,16 +89,15 @@
.PHONY: docker-build
docker-build: test clean build_arm64 build_amd64 ## Build docker image with the manager.
- docker build --platform linux/arm64 --tag ${IMG}:arm64 .
- docker build --platform linux/amd64 --tag ${IMG}:amd64 .
+ docker build --platform linux/arm64 --tag ${IMG}:arm64 $(docker_flags) .
+ docker build --platform linux/amd64 --tag ${IMG}:amd64 $(docker_flags) .
.PHONY: docker-push
-docker-push: ## Push docker image with the manager.
+docker-push: docker-build ## Push docker image with the manager.
docker push ${IMG}:arm64
docker push ${IMG}:amd64
docker manifest create ${IMG}:latest ${IMG}:arm64 ${IMG}:amd64
- docker manifest push ${IMG}:latest
- docker manifest rm ${IMG}:latest
+ docker manifest push --purge ${IMG}:latest
##@ Deployment
diff --git a/core/resource-renderer/api/v1/groupversion_info.go b/core/resource-renderer/api/v1/groupversion_info.go
index 8076936..1abc826 100644
--- a/core/resource-renderer/api/v1/groupversion_info.go
+++ b/core/resource-renderer/api/v1/groupversion_info.go
@@ -15,8 +15,8 @@
*/
// Package v1 contains API Schema definitions for the dodo.cloud v1 API group
-//+kubebuilder:object:generate=true
-//+groupName=dodo.cloud.dodo.cloud
+// +kubebuilder:object:generate=true
+// +groupName=dodo.cloud.dodo.cloud
package v1
import (