adikari / monorepo-diff-buildkite-plugin

Run separate pipelines for each folder in your monorepo
MIT License
202 stars 78 forks source link

Provide arm64 binary #71

Closed runlevel5 closed 3 years ago

runlevel5 commented 3 years ago

ARM-based Buildkite CI/CD has become very popular. Wondering if the team could release linux-arm64 binary?

Many thanks

adikari commented 3 years ago

@runlevel5 This sounds like a reasonable request. I am bit busy at the moment and wont be able to work on this. I am happy for you to take a stab at this and create a PR.

If you want to work on this here are some pointers that might help you get started.

  1. This is where the binary is built. Currently, it's hardcoded to amd64. Probably update this to take the arm64 as a parameter. https://github.com/chronotc/monorepo-diff-buildkite-plugin/blob/master/Makefile#L37
  2. Next, you might need to update this file and include another line to build the arm binary https://github.com/chronotc/monorepo-diff-buildkite-plugin/blob/master/.github/build#L3
  3. Then, you will need to update the GitHub action upload the binary to github releases https://github.com/chronotc/monorepo-diff-buildkite-plugin/blob/master/.github/workflows/publish.yml#L29

After this each release will have 2 binaries attached in the release. Next, we need to be able to specify which binary we want to use during build. Currently, on the command hook, the binary to use is hardcoded to be the only one available. You might want to use Buildkite environment variable to be able to download the correct binary. https://github.com/chronotc/monorepo-diff-buildkite-plugin/blob/master/hooks/command#L7

Happy to explore other possibilities to achieve this if you have suggestions. If you don't get around this, hopefully I will be free to pick this up at some point.

adikari commented 3 years ago

There is another issue requesting for mac binary https://github.com/chronotc/monorepo-diff-buildkite-plugin/issues/64

runlevel5 commented 3 years ago

@adikari I will have a look and make a PR