feat: Add GitHub Release workflow for Python SDK#46
Merged
wanlin31 merged 1 commit intogoogle:mainfrom Sep 15, 2025
Merged
Conversation
8082607 to
19e4e14
Compare
19e4e14 to
8feed92
Compare
8feed92 to
4d09cc6
Compare
Annhiluc
reviewed
Sep 11, 2025
Collaborator
Annhiluc
left a comment
There was a problem hiding this comment.
Would we be able to do something similar for other languages?
| git push origin sdks/python/v0.1.0-core.0.2.8 | ||
| ``` | ||
| 4. Find the draft release, verify the executable is built and uplaoaded successfully. | ||
| 5. Publish the relase No newline at end of file |
Collaborator
There was a problem hiding this comment.
Is there a command for this?
Collaborator
Author
There was a problem hiding this comment.
I think npm and pip support this most seamlessly, golang is more on the fetch the code directly, dotnet and java may need some workaround, they might need to download the artifact and install from local.
As of now JS and Dotnet has already been published, this exercises is trying to not avoid publishing the python test-server-sdk itself as a product.
Collaborator
There was a problem hiding this comment.
Ack. For the 'publish the release' step is there a command for this?
Collaborator
Author
Annhiluc
approved these changes
Sep 15, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This PR introduces a new release process for the Python SDK, distributing it as a wheel file attached to GitHub Releases instead of publishing it to PyPI. This approach allows us to version and distribute the SDK without treating it as a standalone product.
Python release process
New Versioning Scheme: Python SDK tags will now follow a composite format, sdks/python/v[SDK_VERSION]-core.[CORE_VERSION], to link each SDK release directly to the version of the core Go executable it wraps.
Automated Release Workflow: A new GitHub Actions workflow (release-python-sdk.yml) triggers automatically when a tag matching sdks/python/v* is pushed.
And we then set up the a release workflow that looks for tag that start with
sdks/python/v, and build the artifact attach to a draft release.Usage
Users can now install a specific version of the Python SDK directly from GitHub Releases using
Example
Test:
Since the we used a fork method, the build actually trigged on my fork. Once this is merged, the tag will trigger the release on upstream.
Create a release
Successfully triggered the build on pushing the tag
Build finish successfully
Created draft release
Clean up the test