manual-approval icon indicating copy to clipboard operation
manual-approval copied to clipboard

Add a makefile command to assist with multi-arch builds

Open Bwvolleyball opened this issue 3 years ago • 4 comments

Add a buildx makefile command that leverages docker buildx to make multi-architecture images. --platform can be any platforms that are the intersect of all base images used in the Dockerfile, but intel chips vs. arm chips is a great start, and should be supported with no additional effort.

Note that the machine that runs this command will need to have both buildx configured, and probably QEMU in order to emulate the differing architectures. Here's some additional details explaning buildx: https://docs.docker.com/build/building/multi-platform/

~~I would have also added this to the CI, but it looks like github actions isn't configured to build the final artifacts or deploy those. Let me know if you're interested in further automating this in some fashion!~~

~~This indirectly addresses https://github.com/trstringer/manual-approval/issues/54, but doesn't do anything to run this to create the actual artifacts.~~

This adds a new release job that should take care of the multi-arch builds, release tagging, etc. to address https://github.com/trstringer/manual-approval/issues/54

Bwvolleyball avatar Nov 24 '22 04:11 Bwvolleyball

Sorry for the delay on this. This looks good, but could you verify if you've tested this out manually? Or better yet, could you add a couple of steps to the CI pipeline to test out different multi-arch builds?

trstringer avatar Feb 17 '23 01:02 trstringer

@trstringer - would you be open to re-working the CI pipeline to help automate the build, release, deploy pipeline? That is pretty much the only way to work this into the CI pipeline.

Maybe the push to main can cause a build and publish as latest, and then we devise some sort of manually triggerable action that is capable of cutting a release and building / deploying the versioned artifacts?

I have tested this locally as well, but, open to your thoughts on the above. It would also probably make maintaining this project a lot easier for you the more that is automated.

Bwvolleyball avatar Feb 21 '23 17:02 Bwvolleyball

Bumping this @trstringer - do you want to automate this whole build pipeline for releasing? Last I checked it seems like none of this release build is automated. That direction would make the most sense and then this could be auto-done from CI.

Bwvolleyball avatar Apr 17 '23 21:04 Bwvolleyball

Bumping to @trstringer

Bwvolleyball avatar Jun 15 '23 20:06 Bwvolleyball