This replaces the previous method of attempting to clean up servers when
an unexpected exit occurs in the client (e.g. SIGINT or panic) by a
heartbeat protocol. If the server does not hear from the connecting
client within a certain interval of time (500ms in this commit), it will
de-activate itself. This prevents dangling Docker Machine server
processes from accumulating.
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
- First RPC steps
- Work on some flaws in RPC model
- Remove unused TLS settings from Engine and Swarm options
- Add code to correctly encode data over the network
- Add client driver for RPC
- Rename server driver file
- Start to make marshal make sense
- Fix silly RPC method args and add client
- Fix some issues with RPC calls, and marshaling
- Simplify plugin main.go
- Move towards 100% plugin in CLI
- Ensure that plugin servers are cleaned up properly
- Make flag parsing for driver flags work properly
Includes some work carried from @dmp42 updating the build process and
tests to use the new method.
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>