Skip to content
This repository has been archived by the owner on May 13, 2021. It is now read-only.

Latest commit

 

History

History
28 lines (25 loc) · 1.88 KB

RELEASE-CHECKLIST.md

File metadata and controls

28 lines (25 loc) · 1.88 KB

Releasing substrate-archive

Here's how to make a new release of substrate-archive.

Checklist

  1. Make a new branch, name it whatever you want, but vx.y.z-prep is a good template
  2. Update Cargo.toml in substrate-archive and substrate-archive-backend with the new version number.
  3. Update all references to substrate crates and polkadot to their respective latest releases.
  4. Update the CHANGELOG as specified here.
  5. Run all tests: TEST_DATABASE_URL="postgres://localhost:5432/archive cargo test --all.
  6. Push the PR against the release branch.
  7. Once reviewed, merge it to release.
  8. Tag the release branchwithgit tag vx.y.zand push the tags withgit push --tags`
  9. Build a binary for debian, compatible with the current glibc version (v2.31)
    1. docker run --rm -it debian:jessie (requires at least 8Gb RAM)
    2. install required dependencies apt-get update && apt-get -y install git curl gcc clang
    3. install rust from rustup.rs: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
    4. reload the shell: source $HOME/.cargo/env
    5. build archive: git clone https://github.com/paritytech/substrate-archive.git --branch release --single-branch && cd substrate-archive/bin/polkadot-archive && SKIP_WASM_BUILD=1 cargo build --release
    6. keeping the container running, in a another terminal find the id of the docker container with docker ps -a, copy the binary to host with docker cp $YOUR_CONTAINER_ID:/substrate-archive/bin/polkadot-archive/target/release/polkadot-archive .
  10. Prepare a new draft release in the github UI
    1. Upload the new binary
    2. Tag the new release against the release branch
    3. Write the release notes
    4. Get a review of the draft release from the team
    5. Publish the release
  11. Signal to devops that there is a new release available