refactor all *FromJob functions
Docker-DCO-1.1-Signed-off-by: Victor Vieux <victor.vieux@docker.com> (github: vieux)
This commit is contained in:
parent
187646127f
commit
9261511aa5
26
config.go
26
config.go
|
@ -23,29 +23,31 @@ type DaemonConfig struct {
|
||||||
|
|
||||||
// ConfigFromJob creates and returns a new DaemonConfig object
|
// ConfigFromJob creates and returns a new DaemonConfig object
|
||||||
// by parsing the contents of a job's environment.
|
// by parsing the contents of a job's environment.
|
||||||
func ConfigFromJob(job *engine.Job) *DaemonConfig {
|
func DaemonConfigFromJob(job *engine.Job) *DaemonConfig {
|
||||||
var config DaemonConfig
|
config := &DaemonConfig{
|
||||||
config.Pidfile = job.Getenv("Pidfile")
|
Pidfile: job.Getenv("Pidfile"),
|
||||||
config.Root = job.Getenv("Root")
|
Root: job.Getenv("Root"),
|
||||||
config.AutoRestart = job.GetenvBool("AutoRestart")
|
AutoRestart: job.GetenvBool("AutoRestart"),
|
||||||
|
EnableIptables: job.GetenvBool("EnableIptables"),
|
||||||
|
EnableIpForward: job.GetenvBool("EnableIpForward"),
|
||||||
|
BridgeIp: job.Getenv("BridgeIp"),
|
||||||
|
DefaultIp: net.ParseIP(job.Getenv("DefaultIp")),
|
||||||
|
InterContainerCommunication: job.GetenvBool("InterContainerCommunication"),
|
||||||
|
GraphDriver: job.Getenv("GraphDriver"),
|
||||||
|
}
|
||||||
if dns := job.GetenvList("Dns"); dns != nil {
|
if dns := job.GetenvList("Dns"); dns != nil {
|
||||||
config.Dns = dns
|
config.Dns = dns
|
||||||
}
|
}
|
||||||
config.EnableIptables = job.GetenvBool("EnableIptables")
|
|
||||||
config.EnableIpForward = job.GetenvBool("EnableIpForward")
|
|
||||||
if br := job.Getenv("BridgeIface"); br != "" {
|
if br := job.Getenv("BridgeIface"); br != "" {
|
||||||
config.BridgeIface = br
|
config.BridgeIface = br
|
||||||
} else {
|
} else {
|
||||||
config.BridgeIface = DefaultNetworkBridge
|
config.BridgeIface = DefaultNetworkBridge
|
||||||
}
|
}
|
||||||
config.BridgeIp = job.Getenv("BridgeIp")
|
|
||||||
config.DefaultIp = net.ParseIP(job.Getenv("DefaultIp"))
|
|
||||||
config.InterContainerCommunication = job.GetenvBool("InterContainerCommunication")
|
|
||||||
config.GraphDriver = job.Getenv("GraphDriver")
|
|
||||||
if mtu := job.GetenvInt("Mtu"); mtu != -1 {
|
if mtu := job.GetenvInt("Mtu"); mtu != -1 {
|
||||||
config.Mtu = mtu
|
config.Mtu = mtu
|
||||||
} else {
|
} else {
|
||||||
config.Mtu = DefaultNetworkMtu
|
config.Mtu = DefaultNetworkMtu
|
||||||
}
|
}
|
||||||
return &config
|
|
||||||
|
return config
|
||||||
}
|
}
|
||||||
|
|
58
container.go
58
container.go
|
@ -105,23 +105,29 @@ type Config struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func ContainerConfigFromJob(job *engine.Job) *Config {
|
func ContainerConfigFromJob(job *engine.Job) *Config {
|
||||||
var config Config
|
config := &Config{
|
||||||
config.Hostname = job.Getenv("Hostname")
|
Hostname: job.Getenv("Hostname"),
|
||||||
config.Domainname = job.Getenv("Domainname")
|
Domainname: job.Getenv("Domainname"),
|
||||||
config.User = job.Getenv("User")
|
User: job.Getenv("User"),
|
||||||
config.Memory = job.GetenvInt64("Memory")
|
Memory: job.GetenvInt64("Memory"),
|
||||||
config.MemorySwap = job.GetenvInt64("MemorySwap")
|
MemorySwap: job.GetenvInt64("MemorySwap"),
|
||||||
config.CpuShares = job.GetenvInt64("CpuShares")
|
CpuShares: job.GetenvInt64("CpuShares"),
|
||||||
config.AttachStdin = job.GetenvBool("AttachStdin")
|
AttachStdin: job.GetenvBool("AttachStdin"),
|
||||||
config.AttachStdout = job.GetenvBool("AttachStdout")
|
AttachStdout: job.GetenvBool("AttachStdout"),
|
||||||
config.AttachStderr = job.GetenvBool("AttachStderr")
|
AttachStderr: job.GetenvBool("AttachStderr"),
|
||||||
|
Tty: job.GetenvBool("Tty"),
|
||||||
|
OpenStdin: job.GetenvBool("OpenStdin"),
|
||||||
|
StdinOnce: job.GetenvBool("StdinOnce"),
|
||||||
|
Image: job.Getenv("Image"),
|
||||||
|
VolumesFrom: job.Getenv("VolumesFrom"),
|
||||||
|
WorkingDir: job.Getenv("WorkingDir"),
|
||||||
|
NetworkDisabled: job.GetenvBool("NetworkDisabled"),
|
||||||
|
}
|
||||||
|
job.GetenvJson("ExposedPorts", &config.ExposedPorts)
|
||||||
|
job.GetenvJson("Volumes", &config.Volumes)
|
||||||
if PortSpecs := job.GetenvList("PortSpecs"); PortSpecs != nil {
|
if PortSpecs := job.GetenvList("PortSpecs"); PortSpecs != nil {
|
||||||
config.PortSpecs = PortSpecs
|
config.PortSpecs = PortSpecs
|
||||||
}
|
}
|
||||||
job.GetenvJson("ExposedPorts", &config.ExposedPorts)
|
|
||||||
config.Tty = job.GetenvBool("Tty")
|
|
||||||
config.OpenStdin = job.GetenvBool("OpenStdin")
|
|
||||||
config.StdinOnce = job.GetenvBool("StdinOnce")
|
|
||||||
if Env := job.GetenvList("Env"); Env != nil {
|
if Env := job.GetenvList("Env"); Env != nil {
|
||||||
config.Env = Env
|
config.Env = Env
|
||||||
}
|
}
|
||||||
|
@ -131,15 +137,11 @@ func ContainerConfigFromJob(job *engine.Job) *Config {
|
||||||
if Dns := job.GetenvList("Dns"); Dns != nil {
|
if Dns := job.GetenvList("Dns"); Dns != nil {
|
||||||
config.Dns = Dns
|
config.Dns = Dns
|
||||||
}
|
}
|
||||||
config.Image = job.Getenv("Image")
|
|
||||||
job.GetenvJson("Volumes", &config.Volumes)
|
|
||||||
config.VolumesFrom = job.Getenv("VolumesFrom")
|
|
||||||
config.WorkingDir = job.Getenv("WorkingDir")
|
|
||||||
if Entrypoint := job.GetenvList("Entrypoint"); Entrypoint != nil {
|
if Entrypoint := job.GetenvList("Entrypoint"); Entrypoint != nil {
|
||||||
config.Entrypoint = Entrypoint
|
config.Entrypoint = Entrypoint
|
||||||
}
|
}
|
||||||
config.NetworkDisabled = job.GetenvBool("NetworkDisabled")
|
|
||||||
return &config
|
return config
|
||||||
}
|
}
|
||||||
|
|
||||||
type HostConfig struct {
|
type HostConfig struct {
|
||||||
|
@ -153,19 +155,21 @@ type HostConfig struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func ContainerHostConfigFromJob(job *engine.Job) *HostConfig {
|
func ContainerHostConfigFromJob(job *engine.Job) *HostConfig {
|
||||||
var hostConfig HostConfig
|
hostConfig := &HostConfig{
|
||||||
|
ContainerIDFile: job.Getenv("ContainerIDFile"),
|
||||||
|
Privileged: job.GetenvBool("Privileged"),
|
||||||
|
PublishAllPorts: job.GetenvBool("PublishAllPorts"),
|
||||||
|
}
|
||||||
|
job.GetenvJson("LxcConf", &hostConfig.LxcConf)
|
||||||
|
job.GetenvJson("PortBindings", &hostConfig.PortBindings)
|
||||||
if Binds := job.GetenvList("Binds"); Binds != nil {
|
if Binds := job.GetenvList("Binds"); Binds != nil {
|
||||||
hostConfig.Binds = Binds
|
hostConfig.Binds = Binds
|
||||||
}
|
}
|
||||||
hostConfig.ContainerIDFile = job.Getenv("ContainerIDFile")
|
|
||||||
job.GetenvJson("LxcConf", &hostConfig.LxcConf)
|
|
||||||
hostConfig.Privileged = job.GetenvBool("Privileged")
|
|
||||||
job.GetenvJson("PortBindings", &hostConfig.PortBindings)
|
|
||||||
if Links := job.GetenvList("Links"); Links != nil {
|
if Links := job.GetenvList("Links"); Links != nil {
|
||||||
hostConfig.Links = Links
|
hostConfig.Links = Links
|
||||||
}
|
}
|
||||||
hostConfig.PublishAllPorts = job.GetenvBool("PublishAllPorts")
|
|
||||||
return &hostConfig
|
return hostConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
type BindMap struct {
|
type BindMap struct {
|
||||||
|
|
|
@ -42,8 +42,7 @@ func init() {
|
||||||
// The signals SIGINT, SIGQUIT and SIGTERM are intercepted for cleanup.
|
// The signals SIGINT, SIGQUIT and SIGTERM are intercepted for cleanup.
|
||||||
func jobInitApi(job *engine.Job) engine.Status {
|
func jobInitApi(job *engine.Job) engine.Status {
|
||||||
job.Logf("Creating server")
|
job.Logf("Creating server")
|
||||||
// FIXME: ImportEnv deprecates ConfigFromJob
|
srv, err := NewServer(job.Eng, DaemonConfigFromJob(job))
|
||||||
srv, err := NewServer(job.Eng, ConfigFromJob(job))
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
job.Error(err)
|
job.Error(err)
|
||||||
return engine.StatusErr
|
return engine.StatusErr
|
||||||
|
|
Loading…
Reference in New Issue