From f2eb8b825b4612e5c2f336b29ff3d472dc62fdf6 Mon Sep 17 00:00:00 2001 From: Aaron Lehmann Date: Tue, 13 Jun 2017 11:37:41 -0700 Subject: [PATCH] Vendor swarmkit bf9b892 Signed-off-by: Aaron Lehmann --- components/engine/vendor.conf | 2 +- .../networkallocator/networkallocator.go | 4 ++++ .../github.com/docker/swarmkit/manager/manager.go | 15 ++++++++------- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/components/engine/vendor.conf b/components/engine/vendor.conf index b74d4a0729..4b4e1dacad 100644 --- a/components/engine/vendor.conf +++ b/components/engine/vendor.conf @@ -107,7 +107,7 @@ github.com/containerd/containerd cfb82a876ecc11b5ca0977d1733adbe58599088a github.com/tonistiigi/fifo 1405643975692217d6720f8b54aeee1bf2cd5cf4 # cluster -github.com/docker/swarmkit 6083c7689ed00a6f2d67941443603df69c2ff6ba +github.com/docker/swarmkit bf9b892c0b27bb3e13195bcef4d964fce2987bf1 github.com/gogo/protobuf v0.4 github.com/cloudflare/cfssl 7fb22c8cba7ecaf98e4082d22d65800cf45e042a github.com/google/certificate-transparency d90e65c3a07988180c5b1ece71791c0b6506826e diff --git a/components/engine/vendor/github.com/docker/swarmkit/manager/allocator/networkallocator/networkallocator.go b/components/engine/vendor/github.com/docker/swarmkit/manager/allocator/networkallocator/networkallocator.go index a2fda20348..df79849f04 100644 --- a/components/engine/vendor/github.com/docker/swarmkit/manager/allocator/networkallocator/networkallocator.go +++ b/components/engine/vendor/github.com/docker/swarmkit/manager/allocator/networkallocator/networkallocator.go @@ -152,6 +152,10 @@ func (na *NetworkAllocator) Allocate(n *api.Network) error { n.DriverState = &api.Driver{ Name: d.name, } + // In order to support backward compatibility with older daemon + // versions which assumes the network attachment to contains + // non nil IPAM attribute, passing an empty object + n.IPAM = &api.IPAMOptions{Driver: &api.Driver{}} } else { nw.pools, err = na.allocatePools(n) if err != nil { diff --git a/components/engine/vendor/github.com/docker/swarmkit/manager/manager.go b/components/engine/vendor/github.com/docker/swarmkit/manager/manager.go index a5a39723f1..311e63da6c 100644 --- a/components/engine/vendor/github.com/docker/swarmkit/manager/manager.go +++ b/components/engine/vendor/github.com/docker/swarmkit/manager/manager.go @@ -945,18 +945,19 @@ func (m *Manager) becomeLeader(ctx context.Context) { if err := store.CreateNetwork(tx, newIngressNetwork()); err != nil { log.G(ctx).WithError(err).Error("failed to create default ingress network") } - // Create now the static predefined node-local networks which - // are known to be present in each cluster node. This is needed - // in order to allow running services on the predefined docker - // networks like `bridge` and `host`. - log.G(ctx).Info("Creating node-local predefined networks") - for _, p := range networkallocator.PredefinedNetworks() { + } + // Create now the static predefined if the store does not contain predefined + //networks like bridge/host node-local networks which + // are known to be present in each cluster node. This is needed + // in order to allow running services on the predefined docker + // networks like `bridge` and `host`. + for _, p := range networkallocator.PredefinedNetworks() { + if store.GetNetwork(tx, p.Name) == nil { if err := store.CreateNetwork(tx, newPredefinedNetwork(p.Name, p.Driver)); err != nil { log.G(ctx).WithError(err).Error("failed to create predefined network " + p.Name) } } } - return nil })