Go to file
Arsenii Petrovich 1db3655281 Remove debug info and allow 405 code (#75)
* Update format of status codes and update azurerm module version

* Change body response from * to nothing
2018-12-25 15:14:36 +03:00
.circleci Updates for CI and bug fixing (#64) 2018-10-05 16:59:42 +03:00
aws Move Terraform files to the root 2018-03-02 16:47:51 +03:00
azure Remove debug info and allow 405 code (#75) 2018-12-25 15:14:36 +03:00
helper-scripts Issue#38:MoC-preconf role refactor (#55) 2018-09-14 11:06:31 +03:00
.gitignore Implemented fixes due to movement jumpbox to the MoC 2018-07-04 13:05:54 +03:00
Dockerfile Merge pull request #52 from VladimirNovgorodov/master 2018-09-04 21:36:43 +03:00
LICENSE Create LICENSE 2018-02-22 00:17:37 -06:00
README.md Add 0x prefix for validator keys (#61) 2018-10-05 16:55:36 +03:00

README.md

Deployment Automation

This repository contains ansible+terraform scripts to automate deployment of new networks resembling "POA Network".

Namely, the following operations are performed:

  • Random account is generated for Master of Ceremony (MoC)

  • Bytecode of the Network Consensus Contract is prepared

  • Based on these data, genesis json file is prepared

  • Netstat node is started

  • Several (configurable number) bootnodes are started, bootnodes.txt is exchanged between them.

  • Additionally, some more bootnodes can be started behind a Gateway, forming a publicly accessible RPC endpoint for the network. This endpoint is availble over http, but the user may later assign it a DNS name, generate valid ssl certificates and upload them to the Gateway config, turning this endpoint to https.

  • Explorer node is started.

  • MoC's node is started.

  • Ceremony is performed on the MoC's node, i.e. other consensus contracts are deployed to the network.

  • Several (configurable number) initial keys are generated.

  • Subset (or all) of initial keys are converted into (mining + voting + payout) keys.

  • For a subset (or for all) of converted keys, validator nodes are started.

  • Simple tests can be run against the network: (1) check that txs are getting mined (2) check that all validators mine blocks (only makes sense if validator nodes were started for all mining keys).

  • Artifacts (spec.json, bootnodes.txt, contracts.json, ...) are stored on the MoC's node.

  • hosts file is generated on the user's machine containing ip addresses of all nodes and their respective roles.

Most of the work is done by ansible, but to bring up the infrastructure, ansible calls terraform.

Usage

Currently, only deployment to Azure is supported: Azure deployment README