Skip to content

Release 2517 distribution #2410

Closed
Closed
@jpraynaud

Description

@jpraynaud

Why

In order to deploy new features, improvements and bug fixes, we need to release a new distribution.

What

Create and release a new distribution 2517

Important

  • 🔥 Blocked by Sign ancillary files with IOG key #2362
  • Clean docker compose files:
    • pre-release-preview
    • release-preprod
    • release-mainnet
  • Declare custom origin tags: HYDRA,LACE,BLOCKFROST,IBC,DOLOS,AMARU,ACROPOLIS
    • pre-release-preview
    • release-preprod
    • release-mainnet
  • Upgrade to Cardano node 10.3.1:
    • pre-release-preview
    • release-preprod
    • release-mainnet

Distribution +1:

Note

  • TBD
  • Rotate ancillary signer service account keys:
    • release-mainnet

How

Phase 1: Prepare distribution

  • Run a backward compatibility test in the CI on the unstable distribution
  • Run a full restoration of a Cardano node on testing-preview
  • Prepare a PR to upgrade repository dependencies (with runbook)
  • Merge the PR to upgrade repository dependencies
  • Check that all minor versions of all crates have been bumped for breaking change (if needed)
    • Bump client minor to 0.12.0
    • Bump client CLI minor to 0.12.0
    • Bump client WASM minor to 0.9.0
  • Check if versions of repository linked crates are correct for publication to crates.io(mithril-common, mithril-client)
  • Check if Cardano minimum supported versions in networks.json must be updated following the runbook
  • Create a draft PR for rotating the documentation
  • Create a PR for rotating the CHANGELOG.md (set the distribution version)
  • Merge the PR for rotating the CHANGELOG.md
  • Prepare a PR that updates examples (Cardano DB + Cardano DB v2)

Phase 2: Rollout pre-release distribution

  • Configure pre-release-preview environment with custom origin tags
  • Configure pre-release-preview environment with Cardano 10.3.1
  • Clean docker compose files of pre-release-preview
  • Tag and deploy a 2517.0-pre pre-release distribution on the pre-release-preview network
  • Fill highlights, distributions compatibility and release notes sections in the pre-release page on GitHub
  • Make sure pre-release-preview is working as expected
  • Run a full restoration of a Cardano node on pre-release-preview
  • Make sure Grafana dashboards are fetching data for pre-release-preview
  • Make sure libraries version next have been published on npm registry
  • Run an all green client multi-platform test in the CI
  • Run an all green aggregator stress test in the CI (not working, but worked earlier wit the unstable release)
  • Run a Cardano transaction prover benchmark:
    • Store results in the issue
    • Make sure that there is no performance drop since last release
  • Announce the pre-release on discord channel
  • Announce any breaking change in:
    • #cardano-scaling slack channel for pre-release
    • #mithril-lace slack channel for pre-release
    • #blockfrost-scaling slack channel for pre-release
    • catalyst team channel for pre-release
    • acropolis team channel for pre-release
    • Cardano Foundation IBC bridge team
  • Wait for at least 2 signers running the new version (could be more if era change is tested) over at least 2 epochs

Phase 3: Rollout release distribution

  • Create a PR to fix the Hydra tutorial
  • Create a new key for the ancillary signer service account of release-mainnet
  • Configure release-mainnet environment with new service account credentials
  • Tag and deploy a 2517.0 release distribution on the pre-release-preview network
  • Fill highlights, distributions compatibility and release notes sections in the release page on GitHub
  • Make sure pre-release-preview is working as expected
  • Update networks compatibility table in release notes
  • Configure release-mainnet environment with custom origin tags
  • Configure release-mainnet environment with Cardano 10.3.1
  • Clean docker compose files of release-mainnet
  • Configure release-preprod environment with custom origin tags
  • Configure release-preprod environment with Cardano 10.3.1
  • Clean docker compose files of release-preprod
  • Release the 2517.0
  • Make sure release-mainnet is working as expected
  • Make sure release-preprod is working as expected
  • Run a full restoration of a Cardano node on `release-mainnet``
  • Run a full restoration of a Cardano node on release-preprod
  • Make sure libraries have been published on crates.io
  • Make sure libraries version latest have been published on npm registry
  • Make sure Grafana dashboards are fetching data for release-mainnet
  • Make sure Grafana dashboards are fetching data for release-preprod
  • Destroy the previous key for the ancillary signer service account of release-mainnet
  • Merge the PR for rotating the documentation
  • Merge a PR for rotating the CHANGELOG.md:
    • Updating the release date of the distribution
    • Updating the crate versions table
  • Merge the PR that updates examples (Cardano DB + Cardano DB v2)
  • Announce the release on discord channel (with breaking-change, upcoming features activation, ...)
  • Announce any breaking/new feature change in:
    • #cardano-scaling slack channel for release
    • #mithril-lace slack channel for release
    • #blockfrost-scaling slack channel for release
    • catalyst team channel for release
    • acropolis team channel for release
    • Cardano Foundation IBC bridge team
  • Make sure the Cardano DB v1 has successfully signed ancillary files
  • Update Hydra tutorial if client breaking change for database restoration (with origin tag)
  • Dev blog post:
    • Distribution 2517
    • Sign ancillary files with IOG key

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions