Skip to content

Commit

Permalink
v2.0.0_upgrade_guide
Browse files Browse the repository at this point in the history
  • Loading branch information
lezzokafka committed May 17, 2021
1 parent 1ecba0f commit b99d618
Show file tree
Hide file tree
Showing 2 changed files with 73 additions and 2 deletions.
2 changes: 1 addition & 1 deletion docs/getting-started/mainnet.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ This is a detailed documentation for setting up a **Validator** or a **Full Node
## Pre-requisites

**Remarks**:
Please follow this [guide](./upgrade_guide.md). If you are upgrade from `v1.1.0`/`v1.2.0` to `v1.2.1`
Please follow this [guide](./upgrade_guide.md#chain-maind-binary-upgrade-guide-v1-1-0-v1-2-0-to-v1-2-1). If you are upgrade from `v1.1.0`/`v1.2.0` to `v1.2.1`

### Supported OS

Expand Down
73 changes: 72 additions & 1 deletion docs/getting-started/upgrade_guide.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,76 @@
# The "Canis Major" upgrade upgrade guide (`v1.*` to `v2.0.0`) :

# `chain-maind` Binary upgrade guide:
:::warning
The chain-maind `v2.0.0` - Canis Major upgrade is proposed to be scheduled on 2nd of June, 2021.

**DO NOT UPGRADE to the binary `v2.0.0` before that suggested upgrade schedule and come across with the error message as described in [Step 0](#step-0-don-t-panic).**
:::
## Step 0 - Don't panic
At the point of proposed upgrade, user will the following error message on the `chain-maind`:

`ERR BINARY UPDATED BEFORE TRIGGER! UPGRADE "v2.0.0" - in binary but not executed on chain`

Don't panic - The Chain will be paused to allow the majority of validators to upgrade. Validators and full node hosts will have to upgrade your Crypto.org Chain nodes to the latest release binary.
## Step 1 - Get the `v2.0.0` binary

To simplify the following step, we will be using **Linux** for illustration. Binary for
[Mac](https://github.com/crypto-org-chain/chain-main/releases/download/v2.0.0/chain-main_2.0.0_Darwin_x86_64.tar.gz) and [Windows](https://github.com/crypto-org-chain/chain-main/releases/download/v2.0.0/chain-main_2.0.0_Windows_x86_64.zip) are also available.

- Terminate the `chain-maind`; afterwards, download the `v2.0.0` released binaries from github:

```bash
$ curl -LOJ https://github.com/crypto-org-chain/chain-main/releases/download/v2.0.0/chain-main_2.0.0_Linux_x86_64.tar.gz
$ tar -zxvf chain-main_2.0.0_Linux_x86_64.tar.gz
```


::: tip Remarks:
If you have stated `chain-maind` with *systemd* service, kindly stop it by

```bash
$ sudo systemctl stop chain-maind
```

:::



- For [homebrew](https://github.com/crypto-org-chain/homebrew-chain-maind#chain-maind-homebrew-tap) users, simply run

```bash
$ brew upgrade chain-maind
```

### Step 1.1 - Verify the version

You can verify the installation by checking the version of `chain-maind`, the latest version is `2.0.0`.

```bash
# check the version of chain-maind
$ ./chain-maind version
2.0.0
```

## Step 2. - Run everything

We are ready to start the node join the network again with the new binary:

- Start `chain-maind`, e.g.:

```bash
$ ./chain-maind start
```

Sit back and wait for the syncing process. You can query the node syncing status by
```bash
$ ./chain-maind status 2>&1 | jq '.SyncInfo.catching_up'
```
If the above command returns `false`, It means that your node **is synced**; otherwise, it returns `true` and implies your node is still catching up.




# `chain-maind` Binary upgrade guide (`v1.1.0`/`v1.2.0` to `v1.2.1`):

This is a guide for existing validator or full node to upgrade from `v1.1.0`/`v1.2.0` to `v1.2.1`:

Expand Down

0 comments on commit b99d618

Please sign in to comment.