mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
![]() In essense, this just involves marshalling structs back and forth to a remote process, via the plugin client. There are a couple of types that don't JSONify well, notably `net.IPNet`, so there is some translation to be done. To conform to the driverapi interface, we must give the list of endpoint interfaces to the remote process, and let it puzzle out what it's supposed to do; including the possibility of returning an error. The constraints on EndpointInfo are enforced by the remote driver implementation; namely: * It can't be nil * If it's got non-empty Interfaces(), the remote process can't put more in In the latter case, or if we fail to add an interface for some (future) reason, we try to roll the endpoint creation back. Likewise for join -- if we fail to set the fields of the JoinInfo, we roll the join back by leaving. Signed-off-by: Michael Bridgen <mikeb@squaremobius.net> |
||
---|---|---|
.. | ||
driver.go | ||
driver_test.go | ||
messages.go |