-
Notifications
You must be signed in to change notification settings - Fork 352
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
arm64 linux build machines seem to be missing key components? #12395
Comments
CMAKE configuration fails right out of the gate:
|
Also seeing this in other PRs, eg dotnet/runtime#81516 |
Potential fix dotnet/runtime#81354 |
Please let us know if that change addresses this issue. We rolled out the docker containers yesterday, so it is possible that something changed under the hood when we rebuilt them. @sbomer made the last changes to the arm64 cross image, though I can't see any evidence (there) that cmake was changed. Doesn't preclude it though. Since we get cmake from (most likely) a kitware apt repository, and they change things without us knowing about them, it's possible they made a change that broke you. A potential fix is to go back to the previous build, which I believe should be ubuntu-20.04-cross-arm64-20230125182303-e516922. I also know that @jkotas has investigated these sorts of build errors before too |
This build break was not introduced by cmake changes. It was introduced by the arm64 cross image changes. Given that the container updates are rolled out without any validation gates in the new system, we are going to see sudden wide-spread build breaks like this one with regular frequency. |
For reference, this was the previous wide-spread build break caused by container rollout that I have helped fixing: dotnet/runtime#78522 |
In the new system (which we aren't using yet. That's still months away), we do plan on having validation of the images. The current system, you are correct, has no way of validating |
Do you have a design doc for the new system and how it is going to do validation? The last design doc that I have seen assumed floating container labels that are updated without going through repo CI validation. |
I must have misunderstood what you meant by validation. I don't know if we are going to be able to have repo ci validation, beyond folks having pipelines that use the staging docker images, which exist today, and you are welcome to use. I just mean that we will have validation that everything we said will be installed is installed correctly, like we do for our Helix VMs. This issue is something we could potentially have with the VMs as well: something changes in, for example, a package manager, that isn't specifically communicated and it breaks product repos that assume something else. |
Helix VMs are used for tests. Test dependencies are a lot less brittle than build dependencies. If this kind of validation was proven to be sufficient to prevent breaks with test image updates, it is not necessarily going to be sufficient to prevent breaks with build image updates. We can give it a try and see whether it is causing unreasonable pain. |
Things seem to be fixed. As Jan says this was a problem detected by CMAKE but not a problem with CMAKE; something broke the ability to compile and link simple programs and the error was noticed by the linker. Very early in a build CMAKE will compile and run simple programs to figure out how to properly configure the build settings for the things we actually want to compile. These early compiles are a natural place to hit issues if various bits of build componentry are not present. |
@jkotas Helix VMs are also used for builds. Images are updated regularly with patches and VS updates, including moving to the next minor version of VS when it goes RTM. We provide scouting queues so that repo owners can verify what will get rolled out soon (staging, essentially), or in cases where they need new features outside of the normal rollout schedule. |
As it appears that thing are fixed, closing issue. |
Build
https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=156337
Build leg reported
Build / CoreCLR Product Build linux arm64 checked / Build CoreCLR Runtime
Pull Request
dotnet/runtime#81377
Action required for the engineering services team
To triage this issue (First Responder / @dotnet/dnceng):
If this is an issue that is causing build breaks across multiple builds and would get benefit from being listed on the build analysis check, follow the next steps:
Release Note Category
Release Note Description
Additional information about the issue reported
No response
Report
Summary
The text was updated successfully, but these errors were encountered: