-
Notifications
You must be signed in to change notification settings - Fork 51
Closed
Labels
release 📦ReleaseRelease
Description
Why
In order to deploy new features, improvements and bug fixes, we need to release a new distribution.
Note
The previous distribution has been created with #2488.
What
Create and release a new distribution 2537
Important
- ⚠ Blocked by Upgrade to Cardano
10.5#2623 - ⚠ Blocked by List the invalid/missing immutable files in the
verifycommand in client CLI #2618 - ⚠ Rollback to JSON hex encoding for single signature
- Prepare PR
- Merge PR
- Update SSH keys:
- Prepare PR
- Merge PR
- Make
tools utxo-hdcommand stable in client CLI- Prepare PR
- Merge PR
- Rotate ancillary signer service account keys:
-
release-mainnet
-
- Bump minor version of
mithril-common(update constraint inCargo.toml) - Bump minor of
mithril-stmlibrary - Add
CardanoImmutableFilesFullsigned entity type in GitHub environment variables (Stabilize Cardano DB v2 client CLI/library - Phase 2 #2577)-
pre-release-preview -
release-preprod -
release-mainnet
-
- Upgrade to Cardano node
10.5.1:-
pre-release-preview -
release-preprod -
release-mainnet
-
Distribution +1:
Note
- Update constraints for
mithril-common,mithril-stm(update inCargo.toml) - Rotate ancillary signer service account keys:
- enhance documentation
-
release-mainnet
- Stabilize Cardano database backend next phase (https://github.com/orgs/input-output-hk/projects/26/views/14?pane=issue&itemId=118189101)
- TBD
How
Phase 1: Prepare distribution
- Run manual successful restoration of Cardano database + restart of the Cardano node:
- Cardano DB v1
- with ancillary
- without ancillary
- Cardano DB v2
- with ancillary
- without ancillary
- Cardano DB v1
- Run a backward compatibility test in the CI on the
unstabledistribution - Run an all green aggregator stress test in the CI
- Run an all green client multi-platform test in the CI (with the
2537.0built e2e test) - Prepare a PR to upgrade repository dependencies (with runbook)
- Reset the CI caches just before merging the PR to upgrade repository dependencies
- Merge the PR to upgrade repository dependencies
- Check that all minor versions of all crates have been bumped for breaking change (if needed)
- Bump
mithril-commonto0.6 - Bump
mithril-stmto0.5
- Bump
- 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.jsonmust 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
Phase 2: Rollout pre-release distribution
- Add
CardanoImmutableFilesFullsigned entity type onpre-release-preview - Update Cardano node version to
10.5.1onpre-release-preview - Tag and deploy a
2537.0-prepre-release distribution on thepre-release-previewnetwork - Fill highlights, distributions compatibility and release notes sections in the pre-release page on GitHub
- Make sure
pre-release-previewis working as expected - Make sure Grafana dashboards are fetching data for
pre-release-preview - Make sure libraries version
nexthave been published on npm registry - Run an all green client multi-platform test in the CI
- Run a Cardano transaction prover benchmark:
- Store results in the issue
- Make sure that there is no performance drop since last release
- Run manual successful restoration of Cardano database + restart of the Cardano node:
- Cardano DB v1 - with ancillary
- Cardano DB v2 - with ancillary
- 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 -
#mithril-catalyst slack channel for pre-release -
#mithril-acropolis slack channel for pre-release -
Cardano Foundation IBC bridge team
-
- Wait for at least
2signers running the new version (could be more if era change is tested) over at least2epochs
Phase 3: Rollout release distribution
- Tag and deploy a
2537.0release distribution on thepre-release-previewnetwork - Fill highlights, distributions compatibility and release notes sections in the release page on GitHub
- Make sure
pre-release-previewis working as expected - Update networks compatibility table in release notes
- Add
CardanoImmutableFilesFullsigned entity type onrelease-mainnet - Add
CardanoImmutableFilesFullsigned entity type onrelease-preprod - Update Cardano node version to
10.5.1onrelease-mainnet - Update Cardano node version to
10.5.1onrelease-preprod - Create
CRATES_IO_API_TOKEN_MITHRIL_CARDANO_NODE_INTERNAL_DATABASEin settings - Create a new key for the ancillary signer service account of
release-mainnet - Configure
release-mainnetenvironment with new service account credentials - Release the
2537.0 - Make sure
release-mainnetis working as expected - Make sure
release-preprodis working as expected - Make sure libraries have been published on crates.io
- Invite IOHK as owner on the new crate
mithril-cardano-node-internal-database - Make sure libraries version
latesthave 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 - Check that KMS credentials are working with the creation of the next Cardano database snapshot
- 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
- 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 -
#mithril-catalyst slack channel for release -
#mithril-acropolis slack channel for release -
Cardano Foundation IBC bridge team
-
-
Update Hydra tutorial if client breaking change for database restoration - Dev blog post:
- Distribution
2537 - Add dev blog post for ARM binaries support
- Update the
Switching to Cardano database incremental certificationdev blog post - Update the
Introducing the UTXO snapshot converter command in the Mithril client CLIdev blog post:- Without deprecated
--cardano-networkparameter - Without
unstablemention
- Without deprecated
- Distribution
Metadata
Metadata
Assignees
Labels
release 📦ReleaseRelease