From c413d4177b9621d6bcfd24c9b7118887ad378c49 Mon Sep 17 00:00:00 2001 From: allencloud Date: Sat, 17 Sep 2016 02:00:16 +0800 Subject: [PATCH] return err when both two service mode in request Signed-off-by: allencloud --- daemon/cluster/convert/service.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/daemon/cluster/convert/service.go b/daemon/cluster/convert/service.go index b87b3259c9..3213903b7e 100644 --- a/daemon/cluster/convert/service.go +++ b/daemon/cluster/convert/service.go @@ -185,7 +185,11 @@ func ServiceSpecToGRPC(s types.ServiceSpec) (swarmapi.ServiceSpec, error) { } } - //Mode + // Mode + if s.Mode.Global != nil && s.Mode.Replicated != nil { + return swarmapi.ServiceSpec{}, fmt.Errorf("cannot specify both replicated mode and global mode") + } + if s.Mode.Global != nil { spec.Mode = &swarmapi.ServiceSpec_Global{ Global: &swarmapi.GlobalService{},