-
Notifications
You must be signed in to change notification settings - Fork 37
Add windows arm64 crossbuild support #652
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
This pull request does not have a backport label. Could you fix it @dwhyrock? 🙏
|
|
The change looks good to me but would be better to have someone from @elastic/elastic-agent-control-plane reviewing it. |
pkoutsovasilis
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My proposal is to leave this PR open until both beats and elastic-agent project can successfully be built against this new variant (through draft PRs), and only then merge it
Sounds good to me. |
what exactly are those draft PRs? (i'm just curious to know when we could support arm) |
|
Ok, I believe this PR is good to go and has shown that it can build Windows/arm64 artifacts for both Beats and Agent. PRsI have the following (draft) PRs:
CI BuildsThe latest CI builds for each of those (as of this comment) are here:
Both of the builds are (mostly) green. The one issue I've seen looks to be Linux/amd64/FIPS related, so it seems unrelated to the goal of this PR, which is "build Windows/arm64 Golang artifacts". Snippets from CINext StepsOnce this PR has been merged, I'll update the other two PRs to revert back the container namespace location. After that, I'll be following @pkoutsovasilis 's recommended Order of Operations, as I've documented in this issue, and will copy here:
|
blakerouse
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. I see it was able to build on the beats and elastic-agent repositories.
💚 Build Succeeded
History
|
Description
In order to build Elastic Agent for Windows ARM, we need to be able to cross-compile for it using a golang-crossbuild container.
This PR adds a new container with
windows-arm64in its name. It sets up and installs a newer package ofmingwthat contains binaries that can compile code into Windows PE ARM64 executables.Buildkite build: https://buildkite.com/elastic/golang-crossbuild/builds/1322
Question
Output
From the Buildkite build:
From the test compilation in the build:
Related Issues:
Related PR for Elastic Agent: elastic/elastic-agent#9751
^^ dependent on this PR being merged first