Move canonical root path detection to NewDaemon
Docker-DCO-1.1-Signed-off-by: Solomon Hykes <solomon@docker.com> (github: shykes)
This commit is contained in:
parent
a7d8c732b1
commit
e92a9e0b53
2 changed files with 12 additions and 12 deletions
|
@ -778,6 +778,17 @@ func NewDaemonFromDirectory(config *daemonconfig.Config, eng *engine.Engine) (*D
|
|||
selinuxSetDisabled()
|
||||
}
|
||||
|
||||
// get the canonical path to the Docker root directory
|
||||
var realRoot string
|
||||
if _, err := os.Stat(config.Root); err != nil && os.IsNotExist(err) {
|
||||
realRoot = config.Root
|
||||
} else {
|
||||
realRoot, err = utils.ReadSymlinkedDirectory(config.Root)
|
||||
if err != nil {
|
||||
log.Fatalf("Unable to get the full path to root (%s): %s", config.Root, err)
|
||||
}
|
||||
}
|
||||
config.Root = realRoot
|
||||
// Create the root directory if it doesn't exists
|
||||
if err := os.MkdirAll(config.Root, 0700); err != nil && !os.IsExist(err) {
|
||||
return nil, err
|
||||
|
|
|
@ -120,17 +120,6 @@ func main() {
|
|||
}
|
||||
|
||||
|
||||
// get the canonical path to the Docker root directory
|
||||
root := *flRoot
|
||||
var realRoot string
|
||||
if _, err := os.Stat(root); err != nil && os.IsNotExist(err) {
|
||||
realRoot = root
|
||||
} else {
|
||||
realRoot, err = utils.ReadSymlinkedDirectory(root)
|
||||
if err != nil {
|
||||
log.Fatalf("Unable to get the full path to root (%s): %s", root, err)
|
||||
}
|
||||
}
|
||||
if err := checkKernelAndArch(); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
@ -157,7 +146,7 @@ func main() {
|
|||
job := eng.Job("initserver")
|
||||
// include the variable here too, for the server config
|
||||
job.Setenv("Pidfile", *pidfile)
|
||||
job.Setenv("Root", realRoot)
|
||||
job.Setenv("Root", *flRoot)
|
||||
job.SetenvBool("AutoRestart", *flAutoRestart)
|
||||
job.SetenvList("Dns", flDns.GetAll())
|
||||
job.SetenvList("DnsSearch", flDnsSearch.GetAll())
|
||||
|
|
Loading…
Add table
Reference in a new issue