diff --git a/vendor.conf b/vendor.conf index f1803480d5..42ea2e9361 100644 --- a/vendor.conf +++ b/vendor.conf @@ -23,7 +23,7 @@ github.com/RackSec/srslog 456df3a81436d29ba874f3590eeeee25d666f8a5 github.com/imdario/mergo 0.2.1 #get libnetwork packages -github.com/docker/libnetwork 4df06c4a7d9b67d0948eab39c5d013d7296acdbf +github.com/docker/libnetwork b908488a139e81cb8c4091cd836745aeb4d813a4 github.com/docker/go-events 18b43f1bc85d9cdd42c05a6cd2d444c7a200a894 github.com/armon/go-radix e39d623f12e8e41c7b5529e9a9dd67a1e2261f80 github.com/armon/go-metrics eb0af217e5e9747e41dd5303755356b62d28e3ec diff --git a/vendor/github.com/docker/libnetwork/config/config.go b/vendor/github.com/docker/libnetwork/config/config.go index 6e29563df6..171f1852c0 100644 --- a/vendor/github.com/docker/libnetwork/config/config.go +++ b/vendor/github.com/docker/libnetwork/config/config.go @@ -35,6 +35,7 @@ type Config struct { // DaemonCfg represents libnetwork core configuration type DaemonCfg struct { Debug bool + Experimental bool DataDir string DefaultNetwork string DefaultDriver string @@ -222,6 +223,14 @@ func OptionPluginGetter(pg plugingetter.PluginGetter) Option { } } +// OptionExperimental function returns an option setter for experimental daemon +func OptionExperimental(exp bool) Option { + return func(c *Config) { + logrus.Debugf("Option Experimental: %v", exp) + c.Daemon.Experimental = exp + } +} + // ProcessOptions processes options and stores it in config func (c *Config) ProcessOptions(options ...Option) { for _, opt := range options { diff --git a/vendor/github.com/docker/libnetwork/controller.go b/vendor/github.com/docker/libnetwork/controller.go index 154b337a94..b551230baf 100644 --- a/vendor/github.com/docker/libnetwork/controller.go +++ b/vendor/github.com/docker/libnetwork/controller.go @@ -188,7 +188,7 @@ func New(cfgOptions ...config.Option) (NetworkController, error) { return nil, err } - for _, i := range getInitializers() { + for _, i := range getInitializers(c.cfg.Daemon.Experimental) { var dcfg map[string]interface{} // External plugins don't need config passed through daemon. They can @@ -476,7 +476,7 @@ func (c *controller) ID() string { func (c *controller) BuiltinDrivers() []string { drivers := []string{} - for _, i := range getInitializers() { + for _, i := range getInitializers(c.cfg.Daemon.Experimental) { if i.ntype == "remote" { continue } diff --git a/vendor/github.com/docker/libnetwork/drivers_experimental_linux.go b/vendor/github.com/docker/libnetwork/drivers_experimental_linux.go index ca7c9f9b0e..4f540d4a87 100644 --- a/vendor/github.com/docker/libnetwork/drivers_experimental_linux.go +++ b/vendor/github.com/docker/libnetwork/drivers_experimental_linux.go @@ -1,5 +1,3 @@ -// +build experimental - package libnetwork import "github.com/docker/libnetwork/drivers/ipvlan" diff --git a/vendor/github.com/docker/libnetwork/drivers_freebsd.go b/vendor/github.com/docker/libnetwork/drivers_freebsd.go index 416bba04d8..d117c25780 100644 --- a/vendor/github.com/docker/libnetwork/drivers_freebsd.go +++ b/vendor/github.com/docker/libnetwork/drivers_freebsd.go @@ -5,7 +5,7 @@ import ( "github.com/docker/libnetwork/drivers/remote" ) -func getInitializers() []initializer { +func getInitializers(experimental bool) []initializer { return []initializer{ {null.Init, "null"}, {remote.Init, "remote"}, diff --git a/vendor/github.com/docker/libnetwork/drivers_linux.go b/vendor/github.com/docker/libnetwork/drivers_linux.go index 50416512f3..c53d516fa6 100644 --- a/vendor/github.com/docker/libnetwork/drivers_linux.go +++ b/vendor/github.com/docker/libnetwork/drivers_linux.go @@ -9,7 +9,7 @@ import ( "github.com/docker/libnetwork/drivers/remote" ) -func getInitializers() []initializer { +func getInitializers(experimental bool) []initializer { in := []initializer{ {bridge.Init, "bridge"}, {host.Init, "host"}, @@ -19,6 +19,8 @@ func getInitializers() []initializer { {overlay.Init, "overlay"}, } - in = append(in, additionalDrivers()...) + if experimental { + in = append(in, additionalDrivers()...) + } return in } diff --git a/vendor/github.com/docker/libnetwork/drivers_solaris.go b/vendor/github.com/docker/libnetwork/drivers_solaris.go index ad5184a3fc..c4fcd96b7e 100644 --- a/vendor/github.com/docker/libnetwork/drivers_solaris.go +++ b/vendor/github.com/docker/libnetwork/drivers_solaris.go @@ -6,7 +6,7 @@ import ( "github.com/docker/libnetwork/drivers/solaris/overlay" ) -func getInitializers() []initializer { +func getInitializers(experimental bool) []initializer { return []initializer{ {overlay.Init, "overlay"}, {bridge.Init, "bridge"}, diff --git a/vendor/github.com/docker/libnetwork/drivers_stub_linux.go b/vendor/github.com/docker/libnetwork/drivers_stub_linux.go deleted file mode 100644 index e20428c72f..0000000000 --- a/vendor/github.com/docker/libnetwork/drivers_stub_linux.go +++ /dev/null @@ -1,7 +0,0 @@ -// +build !experimental - -package libnetwork - -func additionalDrivers() []initializer { - return nil -} diff --git a/vendor/github.com/docker/libnetwork/drivers_windows.go b/vendor/github.com/docker/libnetwork/drivers_windows.go index 87705e7652..384d855cb8 100644 --- a/vendor/github.com/docker/libnetwork/drivers_windows.go +++ b/vendor/github.com/docker/libnetwork/drivers_windows.go @@ -7,7 +7,7 @@ import ( "github.com/docker/libnetwork/drivers/windows/overlay" ) -func getInitializers() []initializer { +func getInitializers(experimental bool) []initializer { return []initializer{ {null.Init, "null"}, {overlay.Init, "overlay"},