Re: Roadmap doc for project MAXIMUS

Mark Simpson
 

Thanks Mike, very helpful and I thought Amazon lambda ran on Jeff Bezo’s magical unicorns !
I would guess that Corda Serveless would run on a decentralised pool of servers that span clouds and corporate data centres.

On 15 Oct 2018, at 13:26, Mike Hearn via Groups.Io <mike@...> wrote:

Pretty sure AWS Lambda runs on servers 😉
 
Yes I’d love to get us to the point where developers inside an organization can trivially deploy apps to a node via a self service API. That’s going to be essential to reach the “3 firms, 3 devs, 3 days” goal I outlined in my CordaCon talk.
 
Some Corda users are very conservative. To get there we’ll need a few components:
 
  1. A way to deploy software to the node in a controlled manner. Our current bet: teach the node about Maven repositories and how to resolve from them. Then you can point your node at an internal Artifactory that is connected to your CI system, such that the release process is gated by the standard code review and CI gates.

    That way, a company can know that the apps the node has access to have all come through a formalized release process and they can of course mirror Maven Central to ensure all the dependencies are snapshotted, as many firms already do.

  2. RPCs and shell commands to tell the node “install app with coordinate <com.megacorp:megaapp>” and “upgrade app with coordinate….”, so the install/upgrade process can be permissioned to admins.

  3. Support for automatic upgrade of marked apps. For example, during iterative testing between firms, you don’t want to involve the node admins for every upgrade cycle, it should be automatic once a new release is pushed to CI. Once the app becomes more important to the business automatic upgrade can be disabled, and if it’s really important, it can be run on an isolated machine from other less critical apps or apps that are still in development.
 
So the goal is to have a smooth ramp from iterating-every-day to a more controlled production state where maybe more signoffs are required.
 
Ivan has a PR already that implements most of this, including running Maven resolution over flows. So you can host an “app store” on a BNO node and use the BNO Membership Service app to restrict access based on Corda identities, potentially in future it could integrate with tokens too – app store on the ledger? Sure, why not?
 
 
 

Join corda-dev@groups.io to automatically receive all group messages.