From 006a8c73333ca8dbb8c64a44f72c6765bb033412 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Tue, 5 Mar 2019 22:57:37 +0100 Subject: [PATCH 1/2] [18.09] bump libnetwork 4725f2163fb (bump_18.09 branch) Signed-off-by: Sebastiaan van Stijn Upstream-commit: 8c5188801646046568a710d55f8df4686c98dbe1 Component: engine --- .../engine/hack/dockerfile/install/proxy.installer | 2 +- components/engine/vendor.conf | 2 +- .../github.com/docker/libnetwork/default_gateway.go | 6 ++---- .../github.com/docker/libnetwork/iptables/iptables.go | 9 ++------- .../vendor/github.com/docker/libnetwork/network.go | 8 +++----- .../github.com/docker/libnetwork/networkdb/cluster.go | 7 ++++++- 6 files changed, 15 insertions(+), 19 deletions(-) diff --git a/components/engine/hack/dockerfile/install/proxy.installer b/components/engine/hack/dockerfile/install/proxy.installer index 05a9da7f0e..315b79e975 100755 --- a/components/engine/hack/dockerfile/install/proxy.installer +++ b/components/engine/hack/dockerfile/install/proxy.installer @@ -3,7 +3,7 @@ # LIBNETWORK_COMMIT is used to build the docker-userland-proxy binary. When # updating the binary version, consider updating github.com/docker/libnetwork # in vendor.conf accordingly -LIBNETWORK_COMMIT=2cfbf9b1f98162a55829a21cc603c76072a75382 # bump_18.09 branch +LIBNETWORK_COMMIT=4725f2163fb214a6312f3beae5991f838ec36326 # bump_18.09 branch install_proxy() { case "$1" in diff --git a/components/engine/vendor.conf b/components/engine/vendor.conf index d86fe274ed..0485c1ace5 100644 --- a/components/engine/vendor.conf +++ b/components/engine/vendor.conf @@ -37,7 +37,7 @@ github.com/mitchellh/hashstructure 2bca23e0e452137f789efbc8610126fd8b94f73b #get libnetwork packages # When updating, also update LIBNETWORK_COMMIT in hack/dockerfile/install/proxy accordingly -github.com/docker/libnetwork 2cfbf9b1f98162a55829a21cc603c76072a75382 # bump_18.09 branch +github.com/docker/libnetwork 4725f2163fb214a6312f3beae5991f838ec36326 # bump_18.09 branch github.com/docker/go-events 9461782956ad83b30282bf90e31fa6a70c255ba9 github.com/armon/go-radix e39d623f12e8e41c7b5529e9a9dd67a1e2261f80 github.com/armon/go-metrics eb0af217e5e9747e41dd5303755356b62d28e3ec diff --git a/components/engine/vendor/github.com/docker/libnetwork/default_gateway.go b/components/engine/vendor/github.com/docker/libnetwork/default_gateway.go index cf094b39ee..b3336ebbe8 100644 --- a/components/engine/vendor/github.com/docker/libnetwork/default_gateway.go +++ b/components/engine/vendor/github.com/docker/libnetwork/default_gateway.go @@ -181,10 +181,8 @@ func (c *controller) defaultGwNetwork() (Network, error) { defer func() { <-procGwNetwork }() n, err := c.NetworkByName(libnGWNetwork) - if err != nil { - if _, ok := err.(types.NotFoundError); ok { - n, err = c.createGWNetwork() - } + if _, ok := err.(types.NotFoundError); ok { + n, err = c.createGWNetwork() } return n, err } diff --git a/components/engine/vendor/github.com/docker/libnetwork/iptables/iptables.go b/components/engine/vendor/github.com/docker/libnetwork/iptables/iptables.go index 6a108e93d0..4b8d8832e9 100644 --- a/components/engine/vendor/github.com/docker/libnetwork/iptables/iptables.go +++ b/components/engine/vendor/github.com/docker/libnetwork/iptables/iptables.go @@ -87,16 +87,11 @@ func initFirewalld() { } func detectIptables() { - path, err := exec.LookPath("iptables-legacy") // debian has iptables-legacy and iptables-nft now + path, err := exec.LookPath("iptables") if err != nil { - path, err = exec.LookPath("iptables") - if err != nil { - return - } + return } - iptablesPath = path - supportsXlock = exec.Command(iptablesPath, "--wait", "-L", "-n").Run() == nil mj, mn, mc, err := GetVersion() if err != nil { diff --git a/components/engine/vendor/github.com/docker/libnetwork/network.go b/components/engine/vendor/github.com/docker/libnetwork/network.go index 0a4a2277b0..f128cac785 100644 --- a/components/engine/vendor/github.com/docker/libnetwork/network.go +++ b/components/engine/vendor/github.com/docker/libnetwork/network.go @@ -396,11 +396,9 @@ func (n *network) validateConfiguration() error { driverOptions map[string]string opts interface{} ) - switch data.(type) { - case map[string]interface{}: - opts = data.(map[string]interface{}) - case map[string]string: - opts = data.(map[string]string) + switch t := data.(type) { + case map[string]interface{}, map[string]string: + opts = t } ba, err := json.Marshal(opts) if err != nil { diff --git a/components/engine/vendor/github.com/docker/libnetwork/networkdb/cluster.go b/components/engine/vendor/github.com/docker/libnetwork/networkdb/cluster.go index c989570848..2e7795440e 100644 --- a/components/engine/vendor/github.com/docker/libnetwork/networkdb/cluster.go +++ b/components/engine/vendor/github.com/docker/libnetwork/networkdb/cluster.go @@ -288,7 +288,12 @@ func (nDB *NetworkDB) rejoinClusterBootStrap() { return } - myself, _ := nDB.nodes[nDB.config.NodeID] + myself, ok := nDB.nodes[nDB.config.NodeID] + if !ok { + nDB.RUnlock() + logrus.Warnf("rejoinClusterBootstrap unable to find local node info using ID:%v", nDB.config.NodeID) + return + } bootStrapIPs := make([]string, 0, len(nDB.bootStrapIP)) for _, bootIP := range nDB.bootStrapIP { // botostrap IPs are usually IP:port from the Join From b9167a9818eafbdedd930feadf57df36e408dd6c Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Sat, 22 Dec 2018 14:37:38 +0100 Subject: [PATCH 2/2] Fix TestBuildWithSession, TestBuildSquashParent using wrong daemon during test These tests were spinning up a new daemon, but after the daemon was spun up, the default test-daemon was used by the client. Signed-off-by: Sebastiaan van Stijn (cherry picked from commit 9a3911ced83331b6efe698528a4480bd5ff3d7a6) Signed-off-by: Sebastiaan van Stijn Upstream-commit: 605bc1ffc5adc5a3968ebe7a58060d2542cc28f3 Component: engine --- components/engine/integration/build/build_session_test.go | 2 +- components/engine/integration/build/build_squash_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/engine/integration/build/build_session_test.go b/components/engine/integration/build/build_session_test.go index e1f5ae43ba..51559cbe11 100644 --- a/components/engine/integration/build/build_session_test.go +++ b/components/engine/integration/build/build_session_test.go @@ -27,7 +27,7 @@ func TestBuildWithSession(t *testing.T) { d.StartWithBusybox(t) defer d.Stop(t) - client := testEnv.APIClient() + client := d.NewClientT(t) dockerfile := ` FROM busybox diff --git a/components/engine/integration/build/build_squash_test.go b/components/engine/integration/build/build_squash_test.go index 8acdec596a..8326f2860c 100644 --- a/components/engine/integration/build/build_squash_test.go +++ b/components/engine/integration/build/build_squash_test.go @@ -26,7 +26,7 @@ func TestBuildSquashParent(t *testing.T) { d.StartWithBusybox(t) defer d.Stop(t) - client := testEnv.APIClient() + client := d.NewClientT(t) dockerfile := ` FROM busybox