The new driver uses Azure Resource Manager APIs and offers a lot
more functionality compared to the old Azure driver. It is also
easier to authenticate and does not require user to create and place
certificate files. It only has a single required argument.
This is a breaking change: The new driver cannot work with machines
created with the older Azure driver and vice versa (as the APIs are
entirely different and resources are not shared between old/new azure
APIs).
The new driver addresses many issues about the azure driver reported
so far.
This resolves#2742, resolves#1368, resolves#1142, resolves#2236,
resolves#2408, resolves#1126, resolves#774.
Signed-off-by: Ahmet Alp Balkan <ahmetalpbalkan@gmail.com>
This commit temporarily removes Azure driver and its dependencies
from the source tree and adds dependencies for the new Azure driver
(so that Azure driver PR will not have godeps changes and will be
easier to review).
Signed-off-by: Ahmet Alp Balkan <ahmetalpbalkan@gmail.com>
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>