-
Notifications
You must be signed in to change notification settings - Fork 147
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
Elastic Defend arm64 is not supported on Windows yet #4155
Elastic Defend arm64 is not supported on Windows yet #4155
Conversation
This pull request does not have a backport label. Could you fix it @intxgo? 🙏
NOTE: |
Pinging @elastic/elastic-agent (Team:Elastic-Agent) |
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.
This looks good to me from Endpoints perspective
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.
Aside from the small nitpick, the change looks good to me.
There is the small issue of the error in the endpoint spec though (CI is failing because of that)
could you review this again since the implementation has changed significantly |
This reverts commit 39a4ee9.
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.
i think it looks good, fix from sysinfo is included for older windows versions as well.
haven't tested this on arm machine
…x86_64 instead of amd64
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
The one test failure here is unrelated:
|
Going to force merge this one. |
What does this PR do?
This PR enhances elastic-endpoint spec to gracefully refrain from ever installing elastic-endpoint on Windows ARM, because Elastic Defend is not supported on it.
The win32 API used
IsWow64Process2
is available only on Windows >= Win10, however Agent is currently compiled using Go 1.21 which requires at least Windows 10 or Server 2016.The native architecture constants can be found here on MSDN web, however I believe it's unimportant to port them all since Elastic Defend is compiled only for x86_64 for Windows.
Reading environment variables could be an alternative solution, as Windows sets them by default, examples:
However environment variables could be easily modified, therefore calling native API is better solution.
Why is it important?
Elastic Defend is not provided yet for Windows ARM (Microsoft Surface X or VM on Apple M1/M2/M3) but since Windows Elastic Agent amd64 works fine on Windows ARM in emulation people install it.
Handling gracefully the incompatibility enables installing Agent across a fleet of Windows AMD64 and ARM64 devices with the same policy.
Checklist
./changelog/fragments
using the changelog toolAuthor's Checklist
How to test this PR locally
Related issues
Use cases
Screenshots
Logs
Questions to ask yourself