# DAppNode EthMultiClient testing - Update with core hash
**Who did this test?**
```
wimel
18-04-2020
```
## Intro
- All checkboxes should be ticked for a successful test.
- All **empty** code boxes should be filled with an answer
- If anything does not look as expected, **take screenshots**, **record a video** or **paste logs**. This guide is in a hackmd so you can add as much info about the test result as you need
- Add captures in-place with hackmd's native "Insert image"
- Add brief logs (less than 10 lines) or question answers in place between triple back ticks \`\`\`
- Add bigger logs in a [pastebin.com](https://pastebin.com/) and add the link in-place with a brief description of it
- Add videos in an open, free, no-sign in platform such as [streamable.com](https://streamable.com/)
## 1. Prepare test
### 1.1 DAppNode's versions
Paste your DAppNode's versions, from /support/report
```
Core DAppNode Packages versions
ethchain.dnp.dappnode.eth: 0.2.20
wifi.dnp.dappnode.eth: 0.2.0
dappmanager.dnp.dappnode.eth: 0.2.24, commit: ab83eca5
vpn.dnp.dappnode.eth: 0.2.4, commit: 1873bf3d
ethforward.dnp.dappnode.eth: 0.2.3
ipfs.dnp.dappnode.eth: 0.2.4
core.dnp.dappnode.eth: 0.2.26
admin.dnp.dappnode.eth: 0.2.15, commit: 66299094
wamp.dnp.dappnode.eth: 0.2.0
bind.dnp.dappnode.eth: 0.2.1
System info
docker version: Docker version 18.09.8-ce, build 0dd43dd87fd530113bf44c9bba9ad8b20ce4637f
docker compose version: docker-compose version 1.24.1, build 4667896b
Disk usage: 51%
```

---
### 1.2 Record ETHCHAIN status
Such as `Synced #9171621` or `Syncing 73512/9165251`
```
INFO [04-18|11:58:01.611] Imported new chain segment blocks=1 txs=188 mgas=9.970 elapsed=217.792ms mgasps=45.778 number=9896303 hash=5d60bc…fe6041 dirty=1022.92MiB
```

---
### 1.3 Pre-test checklist
- [x] DNP_ETHCHAIN is installed, running, and set to GETH

- [ ] Geth DNP is not installed
- [x] DAPPMANAGER version is <= 0.2.24

- [x] ADMIN version is <= 0.2.15

- [x] Your DAppNode has NOT had any new `multi-client` branch version installed
- If yes: Reach out to Lion to clean your local DB
- If you can't do that, do the test in a clean DAppNode
## 2. Do test
- [x] Install new core package by hash

>_Before the upgrades and to provide max information about the upgrade process these are some warnings_



- [x] Record resulting DAppNode version again from `/support/report`
```
Core DAppNode Packages versions
dappmanager.dnp.dappnode.eth: 0.2.25, branch: HEAD, commit: 4141cf30
vpn.dnp.dappnode.eth: 0.2.5
bind.dnp.dappnode.eth: 0.2.2
core.dnp.dappnode.eth: 0.2.27
admin.dnp.dappnode.eth: 0.2.16, branch: heads/v0.2.16, commit: db1e7612
wifi.dnp.dappnode.eth: 0.2.0
ethforward.dnp.dappnode.eth: 0.2.3
ipfs.dnp.dappnode.eth: 0.2.4
wamp.dnp.dappnode.eth: 0.2.0
System info
docker version: Docker version 18.09.8-ce, build 0dd43dd87fd530113bf44c9bba9ad8b20ce4637f
docker compose version: docker-compose version 1.24.1, build 4667896b
Disk usage: 51%
```

- [x] Make sure the migration logs are correct. DAPPMANAGER logs should include (in order)
```
Removed ETHCHAIN package
Migrated ETHCHAIN Geth data volume
Migrated ETHCHAIN Identity volume
Deleted ETHCHAIN Geth data volume
Deleted ETHCHAIN Identity volume
Migrated ETHCHAIN
```
- [x] Make sure DNP_ETHCHAIN is not installed. It should no be in UI's view `/packages` system tab

- [x] Make sure Geth is installed. It should be in UI's view `/packages`

- [x] Make sure the volume migration was correct

- [x] Sync status should be the same. Compare with the sync status you recorded earlier

- [x] Go to /installer and make sure packages load from the remote server

## Some information and problems during the upgrade process:
>_On the first try to update can't update all packages and I need to force the upgrade again, the test is do it using the VPN client in remote mode using the web interface of DappNode._
>_On `system/repository` I can see a new "tab" `Repository`, with this I can check that the upgrade is correct._

>_On `system/info` I can see some "red" alerts I share the screen with the info._

>_Takes a little time to sync again the node when the upgrade is finish, we can see the logs of Geth under `/packages/geth.dnp.dappnode.eth/logs`_

>_I can check that I'm using the new option of DappNode and is using "remote" server until my node is totally sync_
