Files
docker-cli/components/engine/daemon/execdriver/execdrivers/execdrivers_linux.go
Qiang Huang f2ac9ec822 Fix golint warnings for daemon/execdriver/*
Addresses: #14756

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 3d17c3bb663a5d7a65bd39a5ef32cb4668b48c53
Component: engine
2015-07-28 08:43:22 +08:00

28 lines
937 B
Go

// +build linux
package execdrivers
import (
"fmt"
"path"
"github.com/docker/docker/daemon/execdriver"
"github.com/docker/docker/daemon/execdriver/lxc"
"github.com/docker/docker/daemon/execdriver/native"
"github.com/docker/docker/pkg/sysinfo"
)
// NewDriver returns a new execdriver.Driver from the given name configured with the provided options.
func NewDriver(name string, options []string, root, libPath, initPath string, sysInfo *sysinfo.SysInfo) (execdriver.Driver, error) {
switch name {
case "lxc":
// we want to give the lxc driver the full docker root because it needs
// to access and write config and template files in /var/lib/docker/containers/*
// to be backwards compatible
return lxc.NewDriver(root, libPath, initPath, sysInfo.AppArmor)
case "native":
return native.NewDriver(path.Join(root, "execdriver", "native"), initPath, options)
}
return nil, fmt.Errorf("unknown exec driver %s", name)
}