Skip to content
Snippets Groups Projects
Select Git revision
  • update-docker-compose-rpc-squid-names
  • master default protected
  • 308-add-a-runtime-api-to-simulate-max-net-tx-cost-for-the-end-user-fees-refund
  • 270-parametrage-de-la-gtest
  • 305-re-enable-sanity-tests
  • network/gdev-800 protected
  • cgeek/issue-297-cpu
  • gdev-800-tests
  • fix-252
  • 1000i100-test
  • hugo/tmp-0.9.1
  • network/gdev-803 protected
  • hugo/endpoint-gossip
  • network/gdev-802 protected
  • hugo/distance-precompute
  • network/gdev-900 protected
  • tuxmain/anonymous-tx
  • debug/podman
  • hugo/195-doc
  • hugo/195-graphql-schema
  • gdev-900-0.10.1 protected
  • gdev-900-0.10.0 protected
  • gdev-900-0.9.2 protected
  • gdev-800-0.8.0 protected
  • gdev-900-0.9.1 protected
  • gdev-900-0.9.0 protected
  • gdev-803 protected
  • gdev-802 protected
  • runtime-801 protected
  • gdev-800 protected
  • runtime-800-bis protected
  • runtime-800 protected
  • runtime-800-backup protected
  • runtime-701 protected
  • runtime-700 protected
  • runtime-600 protected
  • runtime-500 protected
  • v0.4.1 protected
  • runtime-401 protected
  • v0.4.0 protected
40 results

.editorconfig

Blame
  • launch-a-live-network.md 4.58 KiB

    How to launch a live network

    Launching a new live network is more difficult than spawning a local blockchain. Follow this process if you know what you are doing and you already experimented a bit with local blockchains. Part of this process is automated with Rust scripts, including interaction with GitLab's GraphQL API. Do not hesitate to improve and complete it (see TODOs inside xtask/**/*.rs files).

    Requirements

    In order to build in a standardized environment, you need Docker.

    • see docker docs to install docker
    • make sure you can run docker as non-root user with docker info or so

    Preparation

    When launching a new network, you're likely to use a new runtime. See how to release a new runtime.

    Inject runtime in chainspec

    ĞDev runtime is automatically embeded in the raw chainspec with the include_bytes! macro. An other way to inject the runtime is to use "inject-runtime-code" xtask:

    cargo xtask inject-runtime-code --runtime runtime/gdev/target/srtool/release/wbuild/gdev-runtime/gdev_runtime.compact.compressed.wasm --raw-spec resources/gdev-raw.json 

    Bootstraping

    Choose the currency type

    For now, only gdev is supported.

    In the commands that will be indicated afterwards, you will have to replace CURRENCY by the currency type you have chosen.

    Choose the docker image

    Choose the docker image that contains the version of the code that you want to use.

    In the commands that will be indicated afterwards, you will have to replace TAG by the tag of the docker image that you have chosen (example : runtime-400).

    Generate the session keys of genesis authority

    Generate a random secret phrase:

    $ docker run --rm duniter/duniter-v2s:TAG -- key generate
    Secret phrase:       noble stay fury mean poverty delay stadium organ evil east vague can
      Secret seed:       0xb39c31fb10c5080721738880c2ea45412cb3df33df022bf8d9a51483b3a9b7a6
      Public key (hex):  0x90a0c2866034db9d05f8193a95fe5af8d5e12ab295a501c17c95cdbeaf226d62
      Account ID:        0x90a0c2866034db9d05f8193a95fe5af8d5e12ab295a501c17c95cdbeaf226d62
      Public key (SS58): 5FLLWRsxdLKfXH9VQH6Yv73hN1oc9KoFkZ5LEHEz1uTR1Qt3
      SS58 Address:      5FLLWRsxdLKfXH9VQH6Yv73hN1oc9KoFkZ5LEHEz1uTR1Qt3