From b0ef41f624ee6eafbeb3bc867421614b107a951e Mon Sep 17 00:00:00 2001 From: Lucien Gougerot Date: Fri, 8 Apr 2016 16:56:07 +0200 Subject: [PATCH] Closes #3285 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This modification permits the swarm-agent created by docker-machine to take into account the —swarm-opt arguments. Signed-off-by: Lucien Gougerot --- libmachine/provision/configure_swarm.go | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/libmachine/provision/configure_swarm.go b/libmachine/provision/configure_swarm.go index d7a95a8e4b..501d77d7a7 100644 --- a/libmachine/provision/configure_swarm.go +++ b/libmachine/provision/configure_swarm.go @@ -119,15 +119,20 @@ func configureSwarm(p Provisioner, swarmOptions swarm.Options, authOptions auth. }, } + cmdWorker := []string{ + "join", + "--advertise", + advertiseInfo, + } + for _, option := range swarmOptions.ArbitraryFlags { + cmdWorker = append(cmdWorker, "--"+option) + } + cmdWorker = append(cmdWorker, swarmOptions.Discovery) + swarmWorkerConfig := &dockerclient.ContainerConfig{ - Image: swarmOptions.Image, - Env: swarmOptions.Env, - Cmd: []string{ - "join", - "--advertise", - advertiseInfo, - swarmOptions.Discovery, - }, + Image: swarmOptions.Image, + Env: swarmOptions.Env, + Cmd: cmdWorker, HostConfig: workerHostConfig, } if swarmOptions.IsExperimental {