-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[improve][build] Create images before build python wheels #17536
Conversation
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.
Maybe we can add an option to determine whether to create the images.
@RobertIndie In theory the images should already be available in Docker hub and it takes a lot of time to rebuild them. Is there any particular image that is missing? |
@merlimat IMO, maintaining the images in DockerHub manually is not a good way to do that, especially because only a few members have the permission. If the release manager forgot to run The basic build image usually installed some dependencies by downloading and building. It should not take much time. But I found it could be speeded up significantly by reducing the output. For example, replace |
For example, the version of OpenSSL is wrong in the pulsar python client 2.10.1. You can see more detail here: #17097 (comment) I think this is because the latest image was not used in the release 2.10.1 process. |
I have added an option to skip the image creation. PTAL again, 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.
Could you update wiki/release/release-process.md as well?
@BewareMyPower If we add a |
@merlimat Did you mean |
Creating the images takes a very long time. We should have the images built once, available on Docker hub and cached as needed. By doing |
I agree now. I've thought the
My point is not about whether the local image is latest. I mean the process is complicated and needs some manual operations. We must document that once any of the following files are changed, we must notify a maintainer of apachepulsar DockerHub account to upload the newest image.
If we want to change these Dockerfiles, for example, the In addition, we should not use such a tag like In conclusion, I agree that we should not add an option to create base images for building Python wheels currently. But we should make the process clear in case when the base image changed. |
I realized the key point suddenly. #17538 upgrades the OpenSSL version to 1.1.1n for some Dockerfiles, but even it has been merged into the master, it's hard to know:
See the related issue: #17097 |
Co-authored-by: Yunze Xu <[email protected]>
I think we can make these operations happen in CI. If there is a PR merged into the master branch, we can use the CI to check for changes to these files. If there are changes, we can automatically push the latest image to the docker hub |
The pr had no activity for 30 days, mark with Stale label. |
Closed as the development of the Python client has been permanently moved to https://github.com/apache/pulsar-client-python. |
Motivation
Currently in the release process of the python client, there is no indication that the related images need to be created before building python wheels. This may cause the release manager to build the wheel without using the latest images.
Modifications
create-images.sh
in thebuild-wheels.sh
--skip-create-images
to thebuild-wheels.sh
to skip the image creation. The default is not skipped.Documentation
Check the box below or label this PR directly.
Need to update docs?
doc-required
(Your PR needs to update docs and you will update later)
doc-not-needed
(Please explain why)
doc
(Your PR contains doc changes)
doc-complete
(Docs have been already added)