microsoft / confidential-operations

A suite of tools to make operating a confidential consortium network easier
MIT License
0 stars 0 forks source link

Deploy new nodes to existing network #14

Open DomAyre opened 3 months ago

DomAyre commented 3 months ago
DomAyre commented 2 months ago

CCHost (the CCF node executable) takes a configuration file to describe the initial actions of the node, we currently have this template which describes a node who will start a new network.

We need to write a second template or just set the existing one using config_gen.py which uses the command "Join" instead of "Start" and sets any other required fields that the join protocol needs.

For more info, see the CCF docs https://microsoft.github.io/CCF/main/operations/configuration.html

DomAyre commented 2 months ago

To deploy this new flavour of node, see service_deploy.py we will want a new script which does mostly the same things, but we might need a second .bicep template (depending on what exactly needs to be changed)

Ultimately the new script will need to deploy a container instance running the Join config we create in step 1

DomAyre commented 2 months ago

For accepting the new node, we might need to submit proposals (likely as the initial node, see usage of the function proposal_submit across the repo for how to do that)

By default the initial network auto accepts proposals, but we would need to implement https://github.com/microsoft/confidential-operations/issues/15 if we want to operate with a constitution with more realistic voting procedures