From be55337b7139e3c74ca8ec46758fdab3b825cca3 Mon Sep 17 00:00:00 2001 From: Aidan Delaney Date: Mon, 15 Jul 2024 06:57:29 +0000 Subject: [PATCH 1/4] Note mutli-arch support excludes cross-build We are currently limited to building an application image for a platform on that platform Signed-off-by: Aidan Delaney Signed-off-by: Aidan Delaney --- .../for-app-developers/how-to/special-cases/build-for-arm.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md b/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md index 1019aa22c..552826934 100644 --- a/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md +++ b/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md @@ -12,6 +12,8 @@ weight=1 Building for the ARM architecture is now easier than ever! The `heroku/builder:24` builder supports both AMD64 and ARM64 architectures, and includes multi-arch Go, Java, Node.js, PHP, Python, Ruby and Scala buildpacks. You can read more about Heroku's [Cloud Native Buildpacks here][heroku-buildpacks]. +> **NOTE:** Our current multi-architecture support allows building an ARM64 application image on an ARM64 host, and building an AMD64 application image on an AMD64 host. We do not currently support building an application image for one architecture on a different architecture. + ### 1. Clone the [samples][samples] repository ``` From 333cf460c60308a6b2683953238ac1c1d6cf6c8e Mon Sep 17 00:00:00 2001 From: Aidan Delaney Date: Mon, 15 Jul 2024 06:58:35 +0000 Subject: [PATCH 2/4] Bump pack tools dependency Bump to the latest `pack` in our tools Signed-off-by: Aidan Delaney Signed-off-by: Aidan Delaney --- tools/go.mod | 4 ++-- tools/go.sum | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/go.mod b/tools/go.mod index 083b0c05f..f623442b5 100644 --- a/tools/go.mod +++ b/tools/go.mod @@ -5,7 +5,7 @@ go 1.22 toolchain go1.22.2 require ( - github.com/buildpacks/pack v0.33.2 + github.com/buildpacks/pack v0.34.2 github.com/gohugoio/hugo v0.126.1 github.com/spf13/cobra v1.8.0 ) @@ -82,7 +82,7 @@ require ( github.com/bep/overlayfs v0.9.2 // indirect github.com/bep/simplecobra v0.4.0 // indirect github.com/bep/tmc v0.5.1 // indirect - github.com/buildpacks/imgutil v0.0.0-20240514200737-4af87862ff7e // indirect + github.com/buildpacks/imgutil v0.0.0-20240605145725-186f89b2d168 // indirect github.com/buildpacks/lifecycle v0.19.6 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/chrismellard/docker-credential-acr-env v0.0.0-20230304212654-82a0ddb27589 // indirect diff --git a/tools/go.sum b/tools/go.sum index 6aa3d6cf4..034a123a1 100644 --- a/tools/go.sum +++ b/tools/go.sum @@ -218,10 +218,14 @@ github.com/bep/workers v1.0.0 h1:U+H8YmEaBCEaFZBst7GcRVEoqeRC9dzH2dWOwGmOchg= github.com/bep/workers v1.0.0/go.mod h1:7kIESOB86HfR2379pwoMWNy8B50D7r99fRLUyPSNyCs= github.com/buildpacks/imgutil v0.0.0-20240514200737-4af87862ff7e h1:IBH3oJu2okeB8W+bMTCYsRqbDT1+cjt6GuFtE52tAxM= github.com/buildpacks/imgutil v0.0.0-20240514200737-4af87862ff7e/go.mod h1:n2R6VRuWsAX3cyHCp/u0Z4WJcixny0gYg075J39owrk= +github.com/buildpacks/imgutil v0.0.0-20240605145725-186f89b2d168 h1:yVYVi1V7x1bXklOx9lpbTfteyzQKGZC/wkl+IlaVRlU= +github.com/buildpacks/imgutil v0.0.0-20240605145725-186f89b2d168/go.mod h1:n2R6VRuWsAX3cyHCp/u0Z4WJcixny0gYg075J39owrk= github.com/buildpacks/lifecycle v0.19.6 h1:/bmfMs35aSkxyzYDF+iHl9VnYmUBBbHBmnvo8XNEINk= github.com/buildpacks/lifecycle v0.19.6/go.mod h1:sWrBJzf/7dWrcHrWiV/P2+3jS8G8Ki5tczq8jO3XVRQ= github.com/buildpacks/pack v0.33.2 h1:AZ8sd0VwcISQWlBN+VBc+GSZ12WRskknB91ei3LGnP0= github.com/buildpacks/pack v0.33.2/go.mod h1:1lKkNvhBowhCW5RWodh73V0HjcJsJuUv9+1CUt/IliM= +github.com/buildpacks/pack v0.34.2 h1:6+BvuYeS07QUJZAkb/L9v2TI7mtLA2zzbfewfB4bRT8= +github.com/buildpacks/pack v0.34.2/go.mod h1:g1o7cohzXn2X+uYdWKdFgity1l2QvUDSGIMVhzBbA1M= github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= github.com/cenkalti/backoff/v4 v4.2.1 h1:y4OZtCnogmCPw98Zjyt5a6+QwPLGkiQsYW5oUqylYbM= github.com/cenkalti/backoff/v4 v4.2.1/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= @@ -604,6 +608,7 @@ github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+W github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.31.1 h1:KYppCUK+bUgAZwHOu7EXVBKyQA6ILvOESHkn/tgoqvo= github.com/onsi/gomega v1.31.1/go.mod h1:y40C95dwAD1Nz36SsEnxvfFe8FFfNxzI5eJ0EYGyAy0= +github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= From c917401747db04419dc78ffeeaf0cb2ba16f7fd1 Mon Sep 17 00:00:00 2001 From: Aidan Delaney Date: Tue, 23 Jul 2024 06:18:34 +0100 Subject: [PATCH 3/4] Update content/docs/for-app-developers/how-to/special-cases/build-for-arm.md Signed-off-by: Aidan Delaney Signed-off-by: Aidan Delaney --- .../for-app-developers/how-to/special-cases/build-for-arm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md b/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md index 552826934..40e00db57 100644 --- a/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md +++ b/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md @@ -12,7 +12,7 @@ weight=1 Building for the ARM architecture is now easier than ever! The `heroku/builder:24` builder supports both AMD64 and ARM64 architectures, and includes multi-arch Go, Java, Node.js, PHP, Python, Ruby and Scala buildpacks. You can read more about Heroku's [Cloud Native Buildpacks here][heroku-buildpacks]. -> **NOTE:** Our current multi-architecture support allows building an ARM64 application image on an ARM64 host, and building an AMD64 application image on an AMD64 host. We do not currently support building an application image for one architecture on a different architecture. +> **NOTE:** Our current multi-architecture support allows building an ARM64 application image on an ARM64 host, and building an AMD64 application image on an AMD64 host. We do not currently support building an application image for one architecture on a different architecture. ### 1. Clone the [samples][samples] repository From 03cef61a7078cdbb35eec59446045ee6108e208f Mon Sep 17 00:00:00 2001 From: Aidan Delaney Date: Wed, 24 Jul 2024 19:11:20 +0100 Subject: [PATCH 4/4] Update content/docs/for-app-developers/how-to/special-cases/build-for-arm.md Co-authored-by: Natalie Arellano Signed-off-by: Aidan Delaney Signed-off-by: Aidan Delaney --- .../for-app-developers/how-to/special-cases/build-for-arm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md b/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md index 40e00db57..03f11a211 100644 --- a/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md +++ b/content/docs/for-app-developers/how-to/special-cases/build-for-arm.md @@ -12,7 +12,7 @@ weight=1 Building for the ARM architecture is now easier than ever! The `heroku/builder:24` builder supports both AMD64 and ARM64 architectures, and includes multi-arch Go, Java, Node.js, PHP, Python, Ruby and Scala buildpacks. You can read more about Heroku's [Cloud Native Buildpacks here][heroku-buildpacks]. -> **NOTE:** Our current multi-architecture support allows building an ARM64 application image on an ARM64 host, and building an AMD64 application image on an AMD64 host. We do not currently support building an application image for one architecture on a different architecture. +> **NOTE:** Our current multi-architecture support allows building an ARM64 application image on an ARM64 host, and building an AMD64 application image on an AMD64 host. We do not currently support building an application image for one architecture on a different architecture. However, if your host machine supports emulation (e.g., with QEMU) you may be able to perform cross platform builds, albeit with a performance penalty. ### 1. Clone the [samples][samples] repository