12-05-2019 Workshop

Participants

 

  • @Medha Parlikar

  • @Ashok Ranadive (Unlicensed)

  • @Rita Allen (Unlicensed)

  • @Former user (Deleted)

  • @Former user (Deleted)

  • @Former user (Deleted)

  • Joowon

Pre-Requisites

Install Prerequisites described here: https://github.com/CasperLabs/CasperLabs/blob/dev/docs/BUILD.md#prerequisites

Pre-Compile Contract Examples:https://github.com/CasperLabs/CasperLabs/tree/master/execution-engine/contracts/examples

Connect to DevNet and sync your state on your node. Instructions are located below.

Goals

 

  • Help folks configure their nodes with Node 0.9.1

  • Connect to DevNet (Create the chainspec locally for DevNet)

  • Keep our old state and synch up.

 

Bootstrap Address

casperlabs://a605c8ddc4ed3dc9b881bfe006cc8175fb31e125@100.24.117.48?protocol=40400&discovery=40404

Software Version (GitHash)

Node 0.9.1 Githash: 3651e41e1c9194a662a69e2acfac9941b1e17862

Docker tag: latest

What you need to know:

  • Make sure you have a public / private key pair that you have generated via the explorer at https://clarity.casperlabs.io

  • Update your node to the latest version.

  • If you compile node locally, obtain the Mint and Proof-of-Stake contracts from the release repository tarballs and place them in the chainspec/genesis folder.

  • Download accounts.csv from the 0.9.1 release page located at: https://github.com/CasperLabs/CasperLabs/releases/tag/v0.9.1 and place it in the

    $ yourdatadirectory/.casperlabs/chainspec/genesis
  • md5sum: 15c20435e7ef4928e6f844c1a749b32c
  • Delete the data directory if you have to upgrade the node software or restart your node.

    • global-state

    • blockstore

    • dagstore

    • sqlite.db

  • Run the Execution Engine first, before launching the node.

  • When generating Keys using Docker, use the wrapper script as documented in GitHub

Discussion topics

Title

Description

Notes

Title

Description

Notes

Perform a deploy using a Python client

We have a windows client available - deploy a contract to DevNet. Mac Brew installation is also available

  • Perform a deployment, check a balance, perform a transfer using the clients.

Attempt to run the node without deleting the state.

 

See how long it takes to sync state, and that synching state is fine.

 

Validate that their ports are open to look at node metrics

Add their nodes to Grafana and observe their metrics-

Provide the public IP of the node to Tom to add to Prometheus. Watch the nodes synch up.

  • To find your external ip address use:

Send transactions & blocks

Add transactions to the system

  • Medha ran counter-call multiple times.

  • Must specify --payment-amount of 10000000

  • Bonding amount should be less than a 1000000

Observe the metrics in Grafana

As transactions are processed, observe the metrics in Grafana.

  • We were able to see metrics for Medha’s node.

Perform a token transfer between accounts

Transfer tokens between accounts

  • Create accounts using the transfer function

  • Verify the balance

Outcome:

  • Need to run the node with Prometheus enabled.

  • Piotr S was able to connect, but he had to completely clean everything off of his system. We don’t know why he had an issue. He also removed the manifest.toml from chainspec/genesis as well.

Action items

  1. Publish the chainspec → accounts.csv + compiled system contracts

  2. Publish the configuration / documentation on how to enable metrics collection in the node for a variety of platforms.

    1. Need to run the node with -m enabled

    2. Need to run a node exporter script. We can provide an example

Decisions

  •