-
Notifications
You must be signed in to change notification settings - Fork 25
Release guide
thekingofcity edited this page Sep 23, 2022
·
5 revisions
- Bump up crate versions and update links, README, CHANGELOG, and examples. Cut a pull request that is just for the release.
- After the pull request is merged, tag the commit and make the release on Github.
- Upload CLI binaries to the release, namely
controller/cli
andsrc/cli
.
- Make sure no path dependencies exist in
Cargo.toml
files. - Make sure there are no uncommitted changes.
- Publish sub-crate first, you can use
cargo publish --dry-run
to check if there is any error. - Publish the Pravega rust client.
- Ensure the version in the Cargo.toml file corresponds to the release version.
- The release of the Python client to the https://pypi.org/project/pravega is automated by a github workflow. This workflow will be triggered when a github tag is created.
- Upload the new python binding
whl
artifacts in the pypi repository to the github release.
- Ensure the version in the Cargo.toml file corresponds to the release version.
- For the version in package.json, there is no need to alter it because the workflow will change it to the tag version, though it is recommended to update it for clarity.
- Steps 4, 5, and 6 are automated by a github workflow.
- A draft github release page is created automatically.
- The native node add-ons for Linux, macOS, and Windows will be built first and uploaded to the github release with the same tag.
- Then the javascript code will be compiled and uploaded to https://www.npmjs.com/package/@pravega/pravega. This workflow will be triggered only when the previous jobs succeed.
- Publish the auto-created github release page otherwise the users won't be able to pull the prebuilt binaries.