kpt-config-sync icon indicating copy to clipboard operation
kpt-config-sync copied to clipboard

publish arm64 images

Open seankhliao opened this issue 10 months ago • 5 comments

partly out of my own laziness to build the images myself, could the project publish multi platform images for easy deployment onto arm clusters as well?

seankhliao avatar Sep 22 '23 16:09 seankhliao

When trying to build it myself for linux/arm64, I also saw that a few images (git-sync, gcenode-askpass-sidecar, and resource-group-controller) didn't have their source in this repo

seankhliao avatar Sep 23 '23 13:09 seankhliao

Hi @seankhliao

git-sync is located here: https://github.com/kubernetes/git-sync gcenode-askpass-sidecar just got moved into this repo https://github.com/GoogleContainerTools/kpt-config-sync/tree/main/cmd/gcenode-askpass-sidecar

mikebz avatar Oct 10 '23 00:10 mikebz

@karlkfi and @sdowell can comment on whether or not the linux/arm64

I see:

PLATFORMS := linux_amd64 linux_arm64 darwin_amd64 darwin_arm64 windows_amd64

so it could be that the right platform gets pulled because we are using dockerx

mikebz avatar Oct 10 '23 00:10 mikebz

I did get this working a few days ago using resource-group-controller built from https://github.com/GoogleContainerTools/kpt-resource-group

The changes I had to make included somehow switching out the amd64 binaries pulled for helm and kustomize, as well as removing the hardcoded GOARCH=amd64 envs in Dockerfiles

seankhliao avatar Oct 10 '23 07:10 seankhliao

@karlkfi and @sdowell can comment on whether or not the linux/arm64

I see:

PLATFORMS := linux_amd64 linux_arm64 darwin_amd64 darwin_arm64 windows_amd64

so it could be that the right platform gets pulled because we are using dockerx

The PLATFORMS you referenced is used for building the nomos binary. We cross compile the nomos binary, but we currently do not support multi-arch images for the controllers. To support this would require some changes to upstream builds for third party components (opentelemetry, git-sync, resource-group, helm, kustomize), and then we would need to update this repo's build tooling to support multi-arch.

sdowell avatar Oct 10 '23 19:10 sdowell