Commit Graph

423 Commits

Author SHA1 Message Date
Nathan LeClaire 2420975f4e Merge pull request #3423 from npcode/fix-swarm-port-binding
Fix port binding of swarm master
2016-05-27 13:46:51 -07:00
Bilal Amarni 650629a936 [SSH] Allow private keys with 0400 permissions
Signed-off-by: Bilal Amarni <bilal.amarni@gmail.com>
2016-05-23 16:30:08 +02:00
Yi EungJun d74f273c53 Fix port binding of swarm master
The port is 3376 by default but could be modified by --swarm-host
option.

Signed-off-by: Yi EungJun <eungjun.yi@navercorp.com>
2016-05-11 17:40:04 +09:00
Nicolas De Loof 8ed715fd4f Fixes #2302 Possibility to create master with manager, but without agent
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2016-04-28 20:16:56 +02:00
Nicolas De Loof ab1ca913ad Introduce —swarm-join-opt to pass options to agent nodes
Fixes #3285
Fix regression introduced by PR #3287

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2016-04-28 09:40:31 +02:00
Nathan LeClaire 6839107ecc Merge pull request #3287 from LBaali/3285
Add support for --swarm-opt to agent nodes
2016-04-25 12:24:00 -07:00
Nathan LeClaire 4e898b1806 Merge pull request #3362 from nathanleclaire/fix_dangling_amazonec2_ssh_key
Ensure that attempt to remove instance and SSH key both go through
2016-04-25 11:48:35 -07:00
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
Nathan LeClaire 008283733e Merge pull request #3330 from bamarni/issue-3268
[Generic] Copy the public key to machine directory (fixes #3268)
2016-04-22 10:58:53 -07:00
Bilal Amarni 9f8f1330c7 [Generic] Copy the public key to machine directory
Keeping an "orphan" private key can have some drawbacks :

http://apple.stackexchange.com/questions/18458/password-dialog-appears-when-ssh-private-key-permissions-are-set-to-0600/26252#26252

Signed-off-by: Bilal Amarni <bilal.amarni@gmail.com>
2016-04-22 10:11:57 +02:00
Lucien Gougerot b0ef41f624 Closes #3285
This modification permits the swarm-agent created by docker-machine to
take into account the —swarm-opt arguments.

Signed-off-by: Lucien Gougerot <lucien.gougerot@gmail.com>
2016-04-20 11:16:39 +02: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