-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #6 from stellar/rpc-release
Update Workflows for RPC Only Release
- Loading branch information
Showing
8 changed files
with
67 additions
and
80 deletions.
There are no files selected for viewing
This file contains 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
This file was deleted.
Oops, something went wrong.
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,58 @@ | ||
# Releasing | ||
|
||
The process for how to release the crates in this repository are documented here: | ||
To release Soroban RPC, follow this process **in order**: | ||
|
||
https://github.com/stellar/actions/blob/main/README-rust-release.md | ||
## Update Horizon Version Dependency | ||
1. Run `go get github.com/stellar/go@<horizon_release_tag>` to update `go.mod` and `go.sum` to match the tagged Horizon version branch. | ||
2. Commit this change to `main` in a pull request | ||
|
||
## Follow Rust Workflow | ||
Currently, the `soroban-rpc` repo doesn't publish crates, so we will be running a *modified* version of our main [Rust release workflow](https://github.com/stellar/actions/blob/main/README-rust-release.md). | ||
|
||
1. Run the [Bump Version workflow](https://github.com/stellar/actions/blob/main/README-rust-release.md#step-1-run-the-bump-version-workflow) from `main` | ||
2. [Review the PR](https://github.com/stellar/actions/blob/main/README-rust-release.md#2-review-pr) from running the Bump Version workflow | ||
3. [Merge the PR](https://github.com/stellar/actions/blob/main/README-rust-release.md#3-merge-pr) after the publish dry runs complete successfully. Although currently we don't publish crates from the `soroban-rpc` repo, we want the dry runs to succeed. | ||
|
||
## Create a GitHub Release From a Tag | ||
1. Create an annotated tag with `git tag -a v<release_version_number> -m "Description for release"` | ||
2. Push the tag to remote with `git push origin --tags` | ||
3. Create a new [GitHub release](https://github.com/stellar/soroban-rpc/releases/new) from the previously created tag. | ||
* The release title MUST NOT start with a v, otherwise artifact uploads fail (see [workflow file](https://github.com/stellar/soroban-tools/blob/main/.github/workflows/publish.yml) and this [Slack thread](https://stellarfoundation.slack.com/archives/C04ECVCV162/p1694729751569919) for context) | ||
4. Monitor GitHub actions until they succeed | ||
|
||
## Push New RPC Debian Package | ||
|
||
1. Run the [Buildmeister soroban-package-builder pipeline](https://buildmeister-v3.stellar-ops.com/job/Platform/job/soroban-package-builder/) | ||
* Set `VERSION_OVERRIDE` if necessary, replacing "-" with "~" (e.g. 20.0.0~rc1) | ||
* Set `BRANCH` to the release tag (e.g. v20.0.0-rc1) | ||
* Enable `PROMOTE_TO_TESTING` | ||
* ![Pipeline Parameters](docs/img/soroban-package-builder.png) | ||
|
||
2. Review the package stage log, and note the build number for next steps | ||
|
||
![Soroban Package Logs](docs/img/soroban-package-logs.png) | ||
|
||
## Push New Docker Image | ||
|
||
For reference, here is the [Soroban RPC docker repo](https://hub.docker.com/r/stellar/soroban-rpc) | ||
|
||
1. Run the [Buildmeister soroban-rpc-docker-builder pipeline](https://buildmeister-v3.stellar-ops.com/job/Platform/job/soroban-rpc-docker-builder/) | ||
* Double check `STELLAR_CORE_VERSION` uses a version *without* test in the name | ||
* ![Soroban Core Version](docs/img/soroban-core-version.png) | ||
* ![Pipeline Parameters](docs/img/soroban-rpc-docker-builder.png) | ||
|
||
## Update Test Configs | ||
|
||
1. Update the [monorepo’s horizon.yml integration test config](https://github.com/stellar/go/blob/master/.github/workflows/horizon.yml) to point to the new rpc image (e.g. [go#5054](https://github.com/stellar/go/pull/5054)) | ||
|
||
## Update Quickstart Image Configs | ||
|
||
1. Update the quickstart image build configs to use the latest RPC and horizon (e.g. [quickstart#502](https://github.com/stellar/quickstart/pull/502/files)). | ||
* Update `soroban_rpc_ref`, `go_ref`, and `core_ref` in all [build workflows](https://github.com/stellar/quickstart/tree/master/.github/workflows) | ||
* Update `SOROBAN_RPC_REF`, `CORE_REF`, and `HORIZON_REF` in [the Makefile](https://github.com/stellar/quickstart/blob/master/Makefile) | ||
|
||
## Promote to Stable | ||
|
||
1. Run the Buildmeister [soroban-rpc-promote-to-stable pipeline](https://buildmeister-v3.stellar-ops.com/job/Platform/job/stellar-soroban-rpc-promote-to-stable/) | ||
* Set `PACKAGE` to the release version | ||
* ![Pipeline Parameters](docs/img/soroban-rpc-promote-to-stable.png) |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.