Skip to content

Latest commit

 

History

History
58 lines (40 loc) · 3.72 KB

RELEASING.md

File metadata and controls

58 lines (40 loc) · 3.72 KB

Releasing

To release Soroban RPC, follow this process in order:

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.

  1. Run the Bump Version workflow from main
  2. Review the PR from running the Bump Version workflow
  3. Merge the 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 from the previously created tag.
    • The release title MUST NOT start with a v, otherwise artifact uploads fail (see workflow file and this Slack thread for context)
  4. Monitor GitHub actions until they succeed

Push New RPC Debian Package

  1. Run the Buildmeister soroban-package-builder pipeline

    • Set VERSION_OVERRIDE if necessary, replacing "-" with "" (e.g. 20.0.0rc1)
    • Set BRANCH to the release tag (e.g. v20.0.0-rc1)
    • Enable PROMOTE_TO_TESTING
    • Pipeline Parameters
  2. Review the package stage log, and note the build number for next steps

Soroban Package Logs

Push New Docker Image

For reference, here is the Soroban RPC docker repo

  1. Run the Buildmeister soroban-rpc-docker-builder pipeline
    • Double check STELLAR_CORE_VERSION uses a version without test in the name
    • Soroban Core Version
    • Pipeline Parameters

Update Test Configs

  1. Update the monorepo’s horizon.yml integration test config to point to the new rpc image (e.g. go#5054)

Update Quickstart Image Configs

  1. Update the quickstart image build configs to use the latest RPC and horizon (e.g. quickstart#502).
    • Update soroban_rpc_ref, go_ref, and core_ref in all build workflows
    • Update SOROBAN_RPC_REF, CORE_REF, and HORIZON_REF in the Makefile

Promote to Stable

  1. Run the Buildmeister soroban-rpc-promote-to-stable pipeline
    • Set PACKAGE to the release version
    • Pipeline Parameters