Contract refactoring
Overview
Adds external contract support to DMS
Closes architecture#468 (closed)
Acceptance tests: #1138 (closed)
Detail summary here
Acceptance test
Setup:
3 organisation keys 3 dms keys with the correct capabilities from the org keys
Nodes:
An orchestrator node A compute provider node Another node which acts as the contract host Another "child" node under compute provider with the right caps delegated from the above compute provider
orchestrator node, sends a contract create to contract host given a contract file which is a json with the required filed (i already have a sample)
compute provider can list the incoming contracts compute provider node has to accept the incoming and sign it using the approve actor command
behind the scene contract host gets final confirmation from all parties and marks the contract as accepted.
Any parties with the right caps can now get the status of the contract by invoking the state behaviour on the contract actor
Do a deployment on the "child" compute provider node given the contract details