-
Notifications
You must be signed in to change notification settings - Fork 70
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
Go: CD pipeline #3062
Go: CD pipeline #3062
Conversation
Signed-off-by: James Xin <[email protected]>
Signed-off-by: James Xin <[email protected]>
Signed-off-by: James Xin <[email protected]>
Signed-off-by: James Xin <[email protected]>
Signed-off-by: James Xin <[email protected]>
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.
Consider to update developer guide.
Please add more details to the PR desribing how CD works, include a diagram or a screenshot.
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.
Consider to update developer guide.
Please add more details to the PR desribing how CD works, include a diagram or a screenshot.
Signed-off-by: James Xin <[email protected]>
Signed-off-by: James Xin <[email protected]>
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
Signed-off-by: James Xin <[email protected]>
Co-authored-by: Joseph Brinkman <[email protected]> Signed-off-by: James Xin <[email protected]>
Issue link
This Pull Request is linked to issue (URL): #3051
Checklist
Before submitting the PR make sure the following are checked:
This workflow publish Valkey-GLIDE's Go client with the given version number.
It loads the supported platforms of Go from
build-matrix.json
, then build the.a
binary files and other nesessary auto-generated files, including protobuf generated.pb.go
files as well aslib.h
header file, on all platforms, and evetually commit and push these files on a git tag. Note that this specific for-release-only commit/tag is not part of any branch, but an isolated commit. They only way to refer to this commit (apart from its commit hash of course) is this tag. This design is to minimize the existance of binary and auto-generated files in our repo.As the official Go package management system essentially uses a distribute-by-source-code mechanism, meaning there's no "artifact" you can precompile, pack and release. Instead, your github repo, specifically the tag with the version info, is your release, which means the options left for corss languages project like us is to either include binary files in the repo, or require ALL end users to install the rust toolchain and compile our rust code on their own machine. We chose the former, as it seems to be the easier option for the end user.