[Fix] Some info in the release checklist (#1516)

* [Fix] Some info in the release checklist

* fix the rest of the links

* adding more details

* improve details it

* adding proxy filters to release notes

* remove proxy checks

Co-authored-by: NachoPal <ignacio.palacios.santos@gmail.com>
Co-authored-by: parity-processbot <>
This commit is contained in:
Roman Useinov
2022-08-10 19:50:14 +02:00
committed by GitHub
parent b0f2816b81
commit cd3fcf6d89
2 changed files with 51 additions and 30 deletions
+9 -9
View File
@@ -11,14 +11,14 @@ title: Cumulus {{ env.VERSION }} Release checklist
### Codebase ### Codebase
These checks should be performed on the codebase. These checks should be performed on the codebase.
- [ ] the [`spec_version`](../../docs/release.md#spec-version) has been incremented since the - [ ] the [`spec_version`](https://github.com/paritytech/cumulus/blob/master/docs/release.md#spec-version) has been incremented since the
last release for any native runtimes from any existing use on public (non-private/test) networks last release for any native runtimes from any existing use on public (non-private/test) networks
- [ ] previously [completed migrations](../../docs/release.md#old-migrations-removed) are - [ ] previously [completed migrations](https://github.com/paritytech/cumulus/blob/master/docs/release.md#old-migrations-removed) are
removed for any public (non-private/test) networks removed for any public (non-private/test) networks
- [ ] No migrations added in the last release that would need to be removed - [ ] No migrations added in the last release that would need to be removed
- [ ] pallet and [extrinsic ordering](../../docs/release.md#extrinsic-ordering) as well as `SignedExtension`s have stayed - [ ] pallet and [extrinsic ordering](https://github.com/paritytech/cumulus/blob/master/docs/release.md#extrinsic-ordering--storage) as well as `SignedExtension`s have stayed
the same. Bump `transaction_version` otherwise the same. Bump `transaction_version` otherwise
- [ ] the [benchmarks](../../docs/release.md#benchmarks) ran - [ ] the [benchmarks](https://github.com/paritytech/ci_cd/wiki/Benchmarks:-cumulus) ran
- [ ] the weights have been updated for any modified runtime logic - [ ] the weights have been updated for any modified runtime logic
- [ ] the various pieces of XCM config are sane - [ ] the various pieces of XCM config are sane
@@ -27,20 +27,20 @@ These checks should be performed on the codebase.
The following checks can be performed after we have forked off to the release- The following checks can be performed after we have forked off to the release-
candidate branch or started an additional release candidate branch (rc-2, rc-3, etc) candidate branch or started an additional release candidate branch (rc-2, rc-3, etc)
- [ ] Verify [new migrations](../../docs/release.md#new-migrations) complete successfully, and the - [ ] Verify [new migrations](https://github.com/paritytech/cumulus/blob/master/docs/release.md#new-migrations) complete successfully, and the
runtime state is correctly updated for any public (non-private/test) runtime state is correctly updated for any public (non-private/test)
networks networks
- [ ] Run integration tests - [ ] Run [integration tests](https://github.com/paritytech/cumulus/blob/master/docs/release.md#integration-tests), and make sure they pass.
- [ ] Push runtime upgrade to Westmint and verify network stability - [ ] Push runtime upgrade to Westmint and verify network stability
### Github ### Github
- [ ] Check that a draft release has been created at the [Github Releases page](https://github.com/paritytech/cumulus/releases) with relevant [release - [ ] Check that a draft release has been created at the [Github Releases page](https://github.com/paritytech/cumulus/releases) with relevant [release
notes](../../docs/release.md#release-notes) notes](https://github.com/paritytech/cumulus/blob/master/docs/release.md#release-notes)
- [ ] Check that [build artifacts](../../docs/release.md#build-artifacts) have been added to the - [ ] Check that [build artifacts](https://github.com/paritytech/cumulus/blob/master/docs/release.md#build-artifacts) have been added to the
draft-release. draft-release.
--- ---
Read more about the [release documentation](../../docs/release.md). Read more about the [release documentation](https://github.com/paritytech/cumulus/blob/master/docs/release.md).
+42 -21
View File
@@ -75,35 +75,56 @@ function of the appropriate pallets.
### Extrinsic Ordering & Storage ### Extrinsic Ordering & Storage
Offline signing libraries depend on a consistent API of call indices and functions. Nowadays, we are no longer using Offline signing libraries depend on a consistent ordering of call indices and
indices but the task of checking whether the API remains compatible remained and the name "Extrinsic Ordering" remained functions. Compare the metadata of the current and new runtimes and ensure that
as well although we no longer check the ordering itself. the `module index, call index` tuples map to the same set of functions. It also checks if there have been any changes in `storage`. In case of a breaking change, increase `transaction_version`.
Compare the metadata of the current and new runtimes and ensure that the `module index, call index` tuples map to the To verify the order has not changed, manually start the following [Github Action](https://github.com/paritytech/cumulus/actions/workflows/extrinsic-ordering-check-from-bin.yml). It takes around a minute to run and will produce the report as artifact you need to manually check.
same set of functions. It also checks if there have been any changes in `storage`. In case of a breaking change,
increase `transaction_version`.
To verify that the API did not break, manually start the following [Github To run it, in the _Run Workflow_ dropdown:
Action](https://github.com/paritytech/cumulus/actions/workflows/extrinsic-ordering-check-from-bin.yml). It takes around 1. **Use workflow from**: to ignore, leave `master` as default
a minute to run and will produce the report as artifact you need to manually check. 2. **The WebSocket url of the reference node**:
- Statemint: `wss://statemint-rpc.polkadot.io`
- Statemine: `wss://statemine-rpc.polkadot.io`
- Westmint: `wss://westmint-rpc.polkadot.io`
3. **A url to a Linux binary for the node containing the runtime to test**: Paste the URL of the latest release-candidate binary from the draft-release on Github. The binary has to previously be uploaded to S3 (Github url link to the binary is constantly changing)
- E.g: https://releases.parity.io/cumulus/v0.9.270-rc3/polkadot-parachain
4. **The name of the chain under test. Usually, you would pass a local chain**:
- Statemint: `statemint-local`
- Statemine: `statemine-local`
- Westmint: `westmint-local`
5. Click **Run workflow**
When the workflow is done, click on it and download the zip artifact, inside you'll find an `output.txt` file. The When the workflow is done, click on it and download the zip artifact, inside you'll find an `output.txt` file. The things to look for in the output are lines like:
output should be appended as comment to the "Checklist issue".
The things to look for in the output are lines like:
- `[Identity] idx 28 -> 25 (calls 15)` - indicates the index for Identity has changed - `[Identity] idx 28 -> 25 (calls 15)` - indicates the index for Identity has changed
- `[+] Society, Recovery` - indicates the new version includes 2 additional modules/pallets - `[+] Society, Recovery` - indicates the new version includes 2 additional modules/pallets.
- If no indices have changed, every modules line should look something like `[Identity] idx 25 (calls 15)` - If no indices have changed, every modules line should look something like `[Identity] idx 25 (calls 15)`
**Note**: Adding new functions to the runtime does not constitute a breaking change as long as the indexes did not **Note**: Adding new functions to the runtime does not constitute a breaking change
change. as long as the indexes did not change.
**Note**: Extrinsic function signatures changes (adding/removing & ordering arguments) are not caught by the job, so **Note**: Extrinsic function signatures changes (adding/removing & ordering arguments) are not caught by the job, so those changes should be reviewed "manually"
those changes should be reviewed "manually"
### Benchmarks ### Benchmarks
The Benchmarks can now be started from the CI. First find the CI pipeline from The Benchmarks can now be started from the CI. First find the CI pipeline from [here](https://gitlab.parity.io/parity/mirrors/cumulus/-/pipelines?page=1&scope=all&ref=release-parachains-v9220) and pick the latest.
[here](https://gitlab.parity.io/parity/mirrors/cumulus/-/pipelines?page=1&scope=all&ref=release-parachains-v9220) and [Guide](https://github.com/paritytech/ci_cd/wiki/Benchmarks:-cumulus)
pick the latest.
### Integration Tests
Until https://github.com/paritytech/ci_cd/issues/499 is done, tests will have to be run manually.
1. Go to https://github.com/paritytech/parachains-integration-tests and checkout to the release branch.
E.g. https://github.com/paritytech/parachains-integration-tests/tree/release-v9270-v0.9.27
for `release-parachains-v0.9.270`
2. Clone `release-parachains-<version>` branch from Cumulus
3. `cargo build --release`
4. Copy `./target/polkadot-parachain` to `./bin`
5. Clone `it/release-<version>-fast-sudo` from Polkadot
In case the branch does not exists (it is a manual process): cherry pick paritytech/polkadot@791c8b8 and run
`find . -type f -name "*.toml" -print0 | xargs -0 sed -i '' -e 's/polkadot-vX.X.X/polkadot-v<version>/g'`
6. `cargo build --release features --fast-runtime`
7. Copy `./target/polkadot` into `./bin` (in Cumulus)
8. Run the tests:
- Statemint: `yarn zombienet-test -c ./examples/statemint/config.toml -t ./examples/statemint`
- Statemine: `yarn zombienet-test -c ./examples/statemine/config.toml -t ./examples/statemine`