Skip to content

Instantly share code, notes, and snippets.

@amc-ie
Last active May 29, 2024 21:26
Show Gist options
  • Save amc-ie/000e3a0fabbee3a4627ab6ac605fdd7f to your computer and use it in GitHub Desktop.
Save amc-ie/000e3a0fabbee3a4627ab6ac605fdd7f to your computer and use it in GitHub Desktop.
Mina 3.0.0 Epoch Transition Dry Run

This release represents the final build in the epoch transition test process which concludes the execution of this upgrade dry run.


Supported environments include macOS, Linux (Debian 10, 11 and Ubuntu 20.04 LTS), and any host machine with Docker.

Installation

Debian Packages

Debian Repository: First, set up and update the umt-mainnet Debian Repository for your platform with the following commands:

sudo rm /etc/apt/sources.list.d/mina*.list
sudo echo "deb [trusted=yes] http://packages.o1test.net $(lsb_release -cs) umt-mainnet" | sudo tee /etc/apt/sources.list.d/mina-umt.list
sudo apt-get update

Then, install the package(s) that you need:

Mina Daemon sudo apt-get install --allow-downgrades -y mina-mainnet=3.0.0-f872d85
Mina Archive sudo apt-get install --allow-downgrades -y mina-archive=3.0.0-f872d85
Mina Archive Schema create_schema.sql zkapp_tables.sql
Config File: var/lib/coda/config_f872d851.json

Docker Images

Every docker image is built for each of the supported platforms, replace CODENAME in the images below with your choice of focal, buster, or bullseye to select the base docker image.

Mina Daemon gcr.io/o1labs-192920/mina-daemon:3.0.0-f872d85-CODENAME-mainnet
Mina Archive gcr.io/o1labs-192920/mina-archive:3.0.0-f872d85-CODENAME
Mina Archive Schema create_schema.sql zkapp_tables.sql
Mina Rosetta gcr.io/o1labs-192920/mina-rosetta:3.0.0-f872d85-CODENAME

Step by Step Guides


Upgrade Package verification

Documentation
https://github.com/MinaProtocol/mina/blob/berkeley/docs/upgrading-to-berkeley.md

Further usage details are documented inside the script itself as its help message: https://github.com/MinaProtocol/mina/blob/berkeley/scripts/mina-verify-packaged-fork-config

You can find the fork config from the pre-upgrade network here.

Mina Archive Node

  1. Start the archive node using the migrated DB. You can migrate your database as instructed in this guide using the migration tool.

  2. Alternatively you can import the migrated db dump from here.

Mina Daemon

  1. If you don't already have one, create a libp2p key pair and persist it. mina libp2p generate-keypair -privkey-path <path-to-the-key-file>
  2. Set the environment variable MINA_LIBP2P_PASS with the password set for the libp2p key pair in the previous step.
  3. Run mina daemon with: -libp2p-keypair <path-to-the-key-file> and --peer-list-url https://storage.googleapis.com/o1labs-gitops-infrastructure/mainnet-final-step-post-hf-2/seed-list.txt

For more information on the upgrade and how to install and run our nodes, please see our new documentation!

If you are running the correct version on the correct network, mina client status will show:

Chain id:     fdee83124cd9338f0c058d8b06e2375c1c4d805347b4d2edae4268b6892d6413
Git SHA-1:    f872d8515f638e1a33884c51a330a1b51e1dd055

SDK Tooling

If you are new to the world of Berkeley & indeed zkApps we strongly encourage you to check it out! The new Berkeley era allows compatibility with the mina network and our extensive suite of SDK tooling that allows anyone to write smart contracts utilising zero knowledge proofs!

Start here zkApps Overview and let us know what you think!

Useful links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment