Skip to content
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

Set break-system-packages in Debian 12 helix image #1046

Merged
merged 1 commit into from
May 10, 2024
Merged

Conversation

sbomer
Copy link
Member

@sbomer sbomer commented May 9, 2024

Fixes failures running tests on the new arm32 images in dotnet/runtime#102059:

[BEGIN EXECUTION]
+ sudo python -m pip install --disable-pip-version-check -r /root/helix/scripts/runtime_python_requirements.txt
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.
    
    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.
    
    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.
    
    See /usr/share/doc/python3.11/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

This fix is only for the arm32 image, which is the only one used in dotnet/runtime.

There are references to debian-12 arm images in aspnetcore, but they seem to be unused. The arm64 and amd64 images have similar errors if I try 'sudo pip install' locally, so they are probably broken as well, but I'm limiting the fix to arm32 images that we know we need for ci.

@sbomer
Copy link
Member Author

sbomer commented May 10, 2024

This is failing in an unrelated way:

Retry 5/5, retrying in 625 seconds...
mcr.microsoft.com/dotnet-buildtools/prereqs@sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5: Pulling from dotnet-buildtools/prereqs
1468e7ff95fc: Already exists
687858a0962b: Pulling fs layer
4a4d7a25a30b: Pulling fs layer
9e84e19a7c1b: Pulling fs layer
f6db9aacd22c: Pulling fs layer
4f7a1bebf4c1: Pulling fs layer
f6db9aacd22c: Waiting
4f7a1bebf4c1: Waiting
error pulling image configuration: download failed after attempts=1: unknown blob
-- EXECUTION ELAPSED TIME: 00:13:03.0327966
Unhandled exception: System.InvalidOperationException: Failed to execute docker pull mcr.microsoft.com/dotnet-buildtools/prereqs@sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5

error pulling image configuration: download failed after attempts=1: unknown blob
   at Microsoft.DotNet.ImageBuilder.ExecuteHelper.Execute(ProcessStartInfo info, Func`2 executor, Boolean isDryRun, String errorMessage, String executeMessageOverride) in /image-builder/src/ExecuteHelper.cs:line 101

@mthalman would you be able to help?

@sbomer sbomer closed this May 10, 2024
@sbomer sbomer reopened this May 10, 2024
@mthalman
Copy link
Member

I was able to pull that image locally. This may have just been a transient error from the MAR registry. I'm retrying the build.

@mthalman
Copy link
Member

Hmm, still not working. I'll have to look deeper. This is strange.

@mthalman
Copy link
Member

Ok, it is transient. Another build I tried eventually worked:

Error response from daemon: manifest for mcr.microsoft.com/dotnet-buildtools/prereqs@sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5 not found: manifest unknown: manifest sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5 is not found
Retry 1/5, retrying in 1 seconds...
Error response from daemon: manifest for mcr.microsoft.com/dotnet-buildtools/prereqs@sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5 not found: manifest unknown: manifest sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5 is not found
Retry 2/5, retrying in 5 seconds...
Error response from daemon: manifest for mcr.microsoft.com/dotnet-buildtools/prereqs@sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5 not found: manifest unknown: manifest sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5 is not found
Retry 3/5, retrying in 25 seconds...
mcr.microsoft.com/dotnet-buildtools/prereqs@sha256:dc3fba39dc74639dd787261b35fb761c6b463489796578e0dea052c0c0054af5: Pulling from dotnet-buildtools/prereqs
1468e7ff95fc: Already exists
687858a0962b: Pulling fs layer
4a4d7a25a30b: Pulling fs layer
9e84e19a7c1b: Pulling fs layer
f6db9aacd22c: Pulling fs layer
4f7a1bebf4c1: Pulling fs layer

@sbomer
Copy link
Member Author

sbomer commented May 10, 2024

Thank you!

@sbomer sbomer requested a review from mthalman May 10, 2024 16:33
Copy link
Member

@richlander richlander left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sadly, I believe this correct.

@sbomer sbomer merged commit eb2a25f into dotnet:main May 10, 2024
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants