Skip to content

Commit

Permalink
add release docs
Browse files Browse the repository at this point in the history
  • Loading branch information
greged93 committed Nov 24, 2024
1 parent 868c378 commit d9cdd9c
Showing 1 changed file with 52 additions and 0 deletions.
52 changes: 52 additions & 0 deletions release.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Introduction

This file outlines the current procedure for the release of the Kakarot-RPC. This procedure is subject to updates
and should be maintained in order to reflect the latest necessary steps to release.

# Procedure

## Staging

### Deploy updated contracts

- Run the `e2e pipeline` CI with the `deploy` argument, targeting staging. This will update the contracts on the
staging environment and finish with a pull request on the `Kakarot` repository with the updated deployment values.
- Merge the PR on the `Kakarot` repository.

### Prepare release

- Open a PR on the RPC repository titled "Prepare RPC alpha release". This PR should: update Karnot's
deployment-config.yaml file and update the `Kakarot` submodule dependency to point to the commit which contains the
updated deployments file.
- Prepare the release of the RPC by making an alpha release on the RPC repository. This will trigger the CI which
will build the RPC and indexer images.

### Deploy the release and test

- Run the `karnot-deployment` CI, targeting staging. This will update the staging environment with the correct
images and env.
- Run the `e2e pipeline` CI with the `test` argument, targeting staging.
- If all the above works, you can move on to the next step, which repeats the previous actions but on the production
environment.

## Production

### Deploy updated contracts

- Run the `e2e pipeline` CI with the `deploy` argument, targeting production. This will update the contracts on the
staging environment and finish with a pull request on the `Kakarot` repository with the updated deployment values.
- Merge the PR on the `Kakarot` repository.

### Release

- Open a PR on the RPC repository titled "Prepare RPC release". This PR should: update Karnot's
deployment-config.yaml file, update the `Kakarot` submodule dependency to point to the commit which contains the
updated deployments file, update the various docker files to points to the future release version, update the
manifest's (Cargo.toml) version.
- Release on the RPC repository. This will trigger the CI which will build the RPC and indexer images.

### Deploy the release

- Run the `karnot-deployment` CI, targeting production. This will update the production environment with the correct
images and env.
- OPTIONAL: run the `e2e pipeline` CI with the `test` argument, targeting production.

0 comments on commit d9cdd9c

Please sign in to comment.