Commit Graph

413 Commits

Author SHA1 Message Date
Nathan LeClaire
770d5bbb6f Ensure that attempt to remove instance and SSH key both go through
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-04-22 15:00:55 -07:00
Bilal Amarni
b62afc85f7 SSH - don't enable BatchMode
When a passphrase protected key is not yet in ssh-agent, it gives a
chance to the user to fill a prompt instead of silently failing.

Signed-off-by: Bilal Amarni <bilal.amarni@gmail.com>
2016-04-17 09:39:52 +02:00
Nathan LeClaire
9718d6c266 Merge pull request #3312 from nathanleclaire/unbreak_upgrade
Remove lxc-docker to docker-engine migration code
2016-04-14 16:10:59 -07:00
Nathan LeClaire
9576b63077 Remove lxc-docker to docker-engine migration code
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-04-14 15:35:12 -07:00
Nathan LeClaire
26cbaad949 Merge pull request #3278 from ezarko/1361
Oracle Enterprise Linux provisioner
2016-04-13 14:50:15 -07:00
Maksim Malchuk
be8f469a82 Correct error handling for external SSH client
In some cases, (e.g. private key not accessible or has incorrect
permissions) docker-machine failed with error "Something went wrong
running an SSH command!". This commit will add the correct debug
messages and show the correct errors for the bad private keys.
Also, due to incorrect handling POSIX file permissions in Windows
some checks should be ignored.

Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2016-04-12 11:43:18 +03:00
Nathan LeClaire
618201c116 Run Swarm containers without --net host
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-04-11 16:23:00 -07:00
Nathan LeClaire
e1a07a342f Merge pull request #3294 from nathanleclaire/revert_stat_error
Revert "Correct error handling for external SSH client"
2016-04-11 15:57:25 -07:00
Nathan LeClaire
f4d772f758 Revert "Correct error handling for external SSH client"
This reverts commit f2acfa9492.

Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-04-11 15:19:43 -07:00
Nathan LeClaire
22a1044075 Merge pull request #3290 from mmalchuk/master
Disable user-defined ssh_config configurations
2016-04-11 15:14:23 -07:00
Maksim Malchuk
d14cfaacfc Disable user-defined ssh_config configurations
Using the user-defined ssh_config configurations bring more problems
instead of enchancements.

Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2016-04-10 20:27:06 +03:00
Nathan LeClaire
2ecc55937c Fix RC version mismatch bug
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-04-07 15:49:03 -07:00
Eric A. Zarko
6c47f4d8e2 Adding Oracle Enterprise Linux provisioner
Fixes #1361
Fixes #3164
Corrected copy/paste typo in libmachine/provision/fedora_test.go
Preserve environment when performing yum update for proxy settings.

Signed-off-by: Eric A. Zarko <eric.zarko@oracle.com>
2016-04-07 09:04:23 -07:00
Nathan LeClaire
49d8473288 Make boot2docker RC download work for Machine RCs
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-04-04 12:32:54 -07:00
Nathan LeClaire
88827d3324 Merge pull request #3243 from tpires/3141_fix_check_docker_running
FIX #3141 Refactor netstat command and tests
2016-03-29 14:40:58 -07:00
Maksim Malchuk
f2acfa9492 Correct error handling for external SSH client
In some cases, (e.g. private key not accessible or has incorrect
permissions) docker-machine failed with error "Something went wrong
running an SSH command!". This commit will add the correct debug
messages and show the correct errors for the bad private keys.

Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2016-03-29 03:32:00 +03:00
Tiago Pires
a6f19ef936 FIX #3141 Refactor netstat command and tests
Updated `netstat` command to minimize its output with `-t` and `-l`
flags.
Refactored regex on `libmachine/provision/utils.go`:`checkDaemonUp` to
avoid `matchNetstatOut` returning `true` when remote machine has a
similar port to dockerPort listening (e.g. dockerPort := 2376 and
remote machine has port 23760 listening).
Refactored `utils_test.go` with more accurate `netstat` output.

Signed-off-by: Tiago Pires <tandrepires@gmail.com>
2016-03-28 23:29:26 +01:00
bingshen.wbs
9914e4027e add systemd requirement
Signed-off-by: bingshen.wbs <bingshen.wbs@alibaba-inc.com>
2016-03-15 16:19:54 +08:00
Nathan LeClaire
ef4823f2ac Merge pull request #3159 from ahmetalpbalkan/azure-arm
New Microsoft Azure docker-machine driver
2016-03-14 18:28:51 -07:00
Nathan LeClaire
6d41f4ae46 Merge pull request #3172 from xinxian0458/issue-3145
fixed issue-3145, enable engine-install-url in CentOS.
2016-03-14 15:25:12 -07:00
Jie Zhang
93fe1d199f fixed issue-3145, enable engine-install-url in CentOS.
Signed-off-by: Jie Zhang <zhangjie0220@gmail.com>
2016-03-14 14:24:44 +08:00
Tiago Pires
63ea976b1d FIX #1858 Add engine port
Added flag `--generic-engine-port` to `generic` drive in order to specify other port than `2376` on
Docker engine.
Updated `generic` driver documentation.

Signed-off-by: Tiago Pires <tandrepires@gmail.com>
2016-03-11 13:13:30 +00:00
Ahmet Alp Balkan
ed95f3baab New Microsoft Azure docker-machine driver
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>
2016-03-07 19:55:51 -08:00
Ahmet Alp Balkan
b53f020c90 Remove azure driver temporarily
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>
2016-03-07 13:34:09 -08:00
David Gageot
3aaf16db51 Use a typed error for consumers of libmachine
Signed-off-by: David Gageot <david@gageot.net>
2016-03-02 22:35:44 +01:00
Jason Roehm
5df137e562 fix: --engine-env was not effective when provisioning on CoreOS
Signed-off-by: Jason Roehm <jroehm@gmail.com>
2016-03-01 14:04:31 -05:00
Jean-Charles Sisk
b1999a7820 fix apt-get error on conf file conflict
Signed-off-by: Jean-Charles Sisk <jasisk@gmail.com>
2016-02-23 21:30:04 -05:00
David Gageot
ffb9cbed7a FIX #3056 ls timeout when instance is stopped
Signed-off-by: David Gageot <david@gageot.net>
2016-02-17 18:09:39 +01:00
Jean-Laurent de Morlhon
1eaf5a464f Merge pull request #3020 from mssola/swarm-experimental
Added a flag to enable experimental Swarm features
2016-02-13 14:10:44 -08:00
Miquel Sabaté Solà
7e201c4005 Added a flag to enable experimental Swarm features
The `create` command now has the `--swarm-experimental` boolean flag, that
tells the Swarm provisioner to enable experimental features in Swarm.

Fixes #2861

Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
2016-02-13 12:21:20 +01:00
David Gageot
8345672b18 FIX #3040 Slow test
Signed-off-by: David Gageot <david@gageot.net>
2016-02-11 13:31:36 -08:00
David Gageot
15b5a1d10d Merge pull request #2838 from mssola/export-session
libmachine/ssh: export the NativeClient.Session function
2016-02-09 17:36:25 -08:00
Pierre DAL-PRA
7dcd2c7b25 Warn that Boot2Docker ISO won't be auto upgraded if its URL is explicitly set
Signed-off-by: Pierre DAL-PRA <dalpra.pierre@gmail.com>
2016-02-09 00:50:23 +01:00
Nathan LeClaire
5ced31397e Wait for SSH before daemon detection
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-02-04 13:29:46 -08:00
Nathan LeClaire
265dd37594 Add correct Swarm port bindings
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-01-28 15:51:41 -08:00
David Gageot
b6be1b79bc Merge pull request #2954 from jeanlaurent/engine-url
Fix #2029 - local drivers dont run with engine-install-url
2016-01-28 18:26:01 +01:00
Jean-Laurent de Morlhon
8eb22b411b Fix #2029 - local drivers dont run with engine-install-url
Signed-off-by: Jean-Laurent de Morlhon <jeanlaurent@morlhon.net>
2016-01-28 18:05:58 +01:00
David Gageot
794cf4cf4d Make go vet ./... happy
Signed-off-by: David Gageot <david@gageot.net>
2016-01-28 11:15:12 +01:00
Miquel Sabaté Solà
0a2b5ab4d3 libmachine/ssh: added the Start and Wait functions to the Client interface
The Start function starts an SSH session and executes the given command. The
returned parameters are readers for the stdout and stderr. This way, developers
can further manipulate the output of the remote command. The Wait function is
command to that of the exec.Cmd type.

The readers returned by the Start function are io.ReadCloser instead of
io.Reader, as one might think. This is done this way to simplify the API so
the ExternalClient doesn't have to provide extra functions to close the
io.ReadCloser's as returned by the cmd.StdoutPipe and cmd.StderrPipe functions.

Finally, I've also changed the receivers of the functions related to the Native
and the External clients. This is done this way because we need to save the
open session or the command from each client in order to implement the Wait
function. Note that the Wait function is needed in order to properly close the
session that is hidden underneath the Native client.

Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
2016-01-27 09:52:29 +01:00
David Gageot
1bc6cdd357 FIX #2941 Wait for Docker after a restart
Signed-off-by: David Gageot <david@gageot.net>
2016-01-27 09:35:47 +01:00
David Gageot
62db9eb370 Merge pull request #2936 from nathanleclaire/poll_daemon_start
Wait for Docker daemon on host start
2016-01-27 09:27:34 +01:00
Nathan LeClaire
3757dc5313 Add code to wait for Docker daemon on start
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-01-26 18:42:10 -08:00
David Gageot
b4209ee84b Remove spurious log that adds no value and make ITs
sometimes fail because of an additional line.

Signed-off-by: David Gageot <david@gageot.net>
2016-01-26 17:07:13 +01:00
Patrik Erdes
92b9853478 Fix #2903, revert #2833 since it makes it impossible to start up a Swarm master with the token discovery method
Signed-off-by: Patrik Erdes <patrik@erdes.se>
2016-01-22 14:51:59 +01:00
Stefan Scherer
3b4b168051 Check grand parent if not directly called from a windows shell
Signed-off-by: Stefan Scherer <scherer_stefan@icloud.com>
2016-01-20 01:16:00 +01:00
Nathan LeClaire
ac0adbe7f8 Update CoreOS provisioner to use 'docker daemon'
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2016-01-18 14:28:42 -08:00
David Gageot
b5e6e20a8f Disable bugsnag report for upgrades for now
Signed-off-by: David Gageot <david@gageot.net>
2016-01-18 11:56:20 +01:00
David Gageot
d518e171b9 Fix bugsnag reports for create
Signed-off-by: David Gageot <david@gageot.net>
2016-01-18 11:42:21 +01:00
David Gageot
19ec3e6d50 Fix the build
Signed-off-by: David Gageot <david@gageot.net>
2016-01-18 11:06:03 +01:00
David Gageot
501b8666ce Merge pull request #2121 from nathanleclaire/provision_cmd
Add docker-machine provision command
2016-01-18 08:53:15 +01:00