From bd0871cbe7a2d0aa2830ab0ac7e2185b028cefd0 Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Mon, 29 Apr 2019 19:40:18 -0600 Subject: [PATCH] Update release doc to include testnet update instuctions (#4066) * Update release doc to include testnet update instuctions * Fixup headers and pick nits * Remove outdated testnet behavior --- RELEASE.md | 58 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 52 insertions(+), 6 deletions(-) diff --git a/RELEASE.md b/RELEASE.md index b5e28c7bde..acc28011be 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -61,7 +61,7 @@ There are three release channels that map to branches as follows: ## Release Steps -### Changing channels +### Advance the Channels #### Create the new branch 1. Pick your branch point for release on master. @@ -84,7 +84,7 @@ There are three release channels that map to branches as follows: At this point, `ci/channel-info.sh` should show your freshly cut release branch as "BETA_CHANNEL" and the previous release branch as "STABLE_CHANNEL". -### Updating channels (i.e. "making a release") +### Make the Release We use [github's Releases UI](https://github.com/solana-labs/solana/releases) for tagging a release. @@ -99,13 +99,59 @@ We use [github's Releases UI](https://github.com/solana-labs/solana/releases) fo release should be `.X-rc.0`. 1. Verify release automation: 1. [Crates.io](https://crates.io/crates/solana) should have an updated Solana version. - 1. ... -1. After testnet deployment, verify that testnets are running correct software. - http://metrics.solana.com should show testnet running on a hash from your - newly created branch. 1. Once the release has been made, update Cargo.toml on the release branch to the next semantic version (e.g. 0.9.0 -> 0.9.1) by running `./scripts/increment-cargo-version.sh patch`, then rebuild with `cargo build` to cause a refresh of `Cargo.lock`. 1. Push your Cargo.toml change and the autogenerated Cargo.lock changes to the release branch. + +### Update software on testnet.solana.com + +The testnet running on testnet.solana.com is set to use a fixed release tag +which is set in the Buildkite testnet-management pipeline. +This tag needs to be updated and the testnet restarted after a new release +tag is created. + +#### Update testnet schedules + +Go to https://buildkite.com/solana-labs and click through: Pipelines -> +testnet-management -> Pipeline Settings -> Schedules +Or just click here: +https://buildkite.com/solana-labs/testnet-management/settings/schedules + +There are two scheduled jobs for testnet: a daily restart and an hourly sanity-or-restart. \ +https://buildkite.com/solana-labs/testnet-management/settings/schedules/0efd7856-7143-4713-8817-47e6bdb05387 +https://buildkite.com/solana-labs/testnet-management/settings/schedules/2a926646-d972-42b5-aeb9-bb6759592a53 + +On each schedule: +1. Set TESTNET_TAG environment variable to the desired release tag. + 1. Example, TESTNET_TAG=v0.13.2 +1. Set the Build Branch to the branch that TESTNET_TAG is from. + 1. Example: v0.13 + +#### Restart the testnet + +Trigger a TESTNET_OP=create-and-start to refresh the cluster with the new version + +1. Go to https://buildkite.com/solana-labs/testnet-management +2. Click "New Build" and use the following settings, then click "Create Build" + 1. Commit: HEAD + 1. Branch: [channel branch as set in the schedules] + 1. Environment Variables: +``` +TESTNET=testnet +TESTNET_TAG=[same value as used in TESTNET_TAG in the schedules] +TESTNET_OP=create-and-start +``` + +#### Update documentation + +Document the new recommended version by updating +```export SOLANA_RELEASE=[new scheduled TESTNET_TAG value]``` +in book/src/testnet-participation.md for both edge and beta channel branches. + +### Alert the community + +Notify Discord users on #validator-support that a new release for +testnet.solana.com is available