-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Fix bdist during installation of Python requirements #18745
Conversation
❕ Build Aborted
Expand to view the summary
Build stats
Test stats 🧪
Test errorsExpand to view the tests failures
Steps errorsExpand to view the steps failures
Log outputExpand to view the last 100 lines of log output
|
Hi @andrewkroh . I was hoping this might be something you could take a look at. Any chance you could weigh in when you have a moment? Thanks! |
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.
Sounds like a good change to me. Let's test it on CI and verify that it fixes the issues everywhere.
Co-authored-by: Andrew Kroh <andrew.kroh@elastic.co>
Hi @andrewkroh . I looked through the logs from this test run and couldn't detect any failures related to bdist or wheel. The failure on APM server is somewhat transient so verifying this fix prior to merging it might prove challenging. Are you opposed to merging this as-is and seeing how things look on the APM Server CI job over the next 1-2 weeks? |
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.
LGTM.
* Fix bdist/wheel errors on build * Use independent args * Formatting * Remove -r * Collapse into single line * Update dev-tools/mage/pytest.go Co-authored-by: Andrew Kroh <andrew.kroh@elastic.co> Co-authored-by: Andrew Kroh <andrew.kroh@elastic.co> (cherry picked from commit 10a2ce9)
* Fix bdist/wheel errors on build * Use independent args * Formatting * Remove -r * Collapse into single line * Update dev-tools/mage/pytest.go Co-authored-by: Andrew Kroh <andrew.kroh@elastic.co> (cherry picked from commit 10a2ce9) Co-authored-by: cachedout <mike.place@elastic.co>
* Fix bdist/wheel errors on build * Use independent args * Formatting * Remove -r * Collapse into single line * Update dev-tools/mage/pytest.go Co-authored-by: Andrew Kroh <andrew.kroh@elastic.co> Co-authored-by: Andrew Kroh <andrew.kroh@elastic.co>
What does this PR do?
This PR addresses an issue in the build system which produces errors similar to the following:
Note that these errors are from the APM CI where they have been discovered in builds for the APM Server project but the source of the errors appears to stem from libbeat.
A full discussion and background on this issue can be found here: elastic/apm-server#3661
Cause and resolution
I believe this may have been introduced during the migration to Python 3 but I don't have a test history that goes back far enough to confirm this.
This is a difficult-to-reproduce problem and I have yet to be able to do so locally. However, it seems clear that the issue is that the
wheel
Python package needs to be present in order for the wheels to be created. This fix attempts to simply simply tellpip
to installwheel
into the newly-created virtual environment before it proceeds with installing packages from the requirements file.Why is it important?
Fixes errors found in the CI on package which depend on
libbeat
.Checklist
I have made corresponding changes to the documentationI have made corresponding change to the default configuration filesI have added tests that prove my fix is effective or that my feature worksI have added an entry inCHANGELOG.next.asciidoc
orCHANGELOG-developer.next.asciidoc
.How to test this PR locally
I haven't found a way to just run the
PythonVirtualenv
target with mage but I did runmage pythonUnitTest
which does seem to exercise this code path.Related issues