2016-09-20 08:16:59 +00:00
|
|
|
package generate
|
|
|
|
|
|
|
|
import (
|
|
|
|
rspec "github.com/opencontainers/runtime-spec/specs-go"
|
|
|
|
)
|
|
|
|
|
|
|
|
func (g *Generator) initSpec() {
|
|
|
|
if g.spec == nil {
|
|
|
|
g.spec = &rspec.Spec{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-07-20 04:07:01 +00:00
|
|
|
func (g *Generator) initSpecProcess() {
|
|
|
|
g.initSpec()
|
|
|
|
if g.spec.Process == nil {
|
|
|
|
g.spec.Process = &rspec.Process{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-05 11:40:46 +00:00
|
|
|
func (g *Generator) initSpecProcessConsoleSize() {
|
|
|
|
g.initSpecProcess()
|
|
|
|
if g.spec.Process.ConsoleSize == nil {
|
|
|
|
g.spec.Process.ConsoleSize = &rspec.Box{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-07-20 04:07:01 +00:00
|
|
|
func (g *Generator) initSpecProcessCapabilities() {
|
|
|
|
g.initSpecProcess()
|
|
|
|
if g.spec.Process.Capabilities == nil {
|
|
|
|
g.spec.Process.Capabilities = &rspec.LinuxCapabilities{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecRoot() {
|
|
|
|
g.initSpec()
|
|
|
|
if g.spec.Root == nil {
|
|
|
|
g.spec.Root = &rspec.Root{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-09-20 08:16:59 +00:00
|
|
|
func (g *Generator) initSpecAnnotations() {
|
|
|
|
g.initSpec()
|
|
|
|
if g.spec.Annotations == nil {
|
|
|
|
g.spec.Annotations = make(map[string]string)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-06-22 17:32:14 +00:00
|
|
|
func (g *Generator) initSpecHooks() {
|
|
|
|
g.initSpec()
|
|
|
|
if g.spec.Hooks == nil {
|
|
|
|
g.spec.Hooks = &rspec.Hooks{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-09-20 08:16:59 +00:00
|
|
|
func (g *Generator) initSpecLinux() {
|
|
|
|
g.initSpec()
|
|
|
|
if g.spec.Linux == nil {
|
|
|
|
g.spec.Linux = &rspec.Linux{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-01-04 15:53:55 +00:00
|
|
|
func (g *Generator) initSpecLinuxIntelRdt() {
|
|
|
|
g.initSpecLinux()
|
|
|
|
if g.spec.Linux.IntelRdt == nil {
|
|
|
|
g.spec.Linux.IntelRdt = &rspec.LinuxIntelRdt{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-09-20 08:16:59 +00:00
|
|
|
func (g *Generator) initSpecLinuxSysctl() {
|
|
|
|
g.initSpecLinux()
|
|
|
|
if g.spec.Linux.Sysctl == nil {
|
|
|
|
g.spec.Linux.Sysctl = make(map[string]string)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecLinuxSeccomp() {
|
|
|
|
g.initSpecLinux()
|
|
|
|
if g.spec.Linux.Seccomp == nil {
|
2017-04-12 23:12:04 +00:00
|
|
|
g.spec.Linux.Seccomp = &rspec.LinuxSeccomp{}
|
2016-09-20 08:16:59 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecLinuxResources() {
|
|
|
|
g.initSpecLinux()
|
|
|
|
if g.spec.Linux.Resources == nil {
|
2017-04-12 23:12:04 +00:00
|
|
|
g.spec.Linux.Resources = &rspec.LinuxResources{}
|
2016-09-20 08:16:59 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-01-04 15:53:55 +00:00
|
|
|
func (g *Generator) initSpecLinuxResourcesBlockIO() {
|
|
|
|
g.initSpecLinuxResources()
|
|
|
|
if g.spec.Linux.Resources.BlockIO == nil {
|
|
|
|
g.spec.Linux.Resources.BlockIO = &rspec.LinuxBlockIO{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-09-20 08:16:59 +00:00
|
|
|
func (g *Generator) initSpecLinuxResourcesCPU() {
|
|
|
|
g.initSpecLinuxResources()
|
|
|
|
if g.spec.Linux.Resources.CPU == nil {
|
2017-04-12 23:12:04 +00:00
|
|
|
g.spec.Linux.Resources.CPU = &rspec.LinuxCPU{}
|
2016-09-20 08:16:59 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecLinuxResourcesMemory() {
|
|
|
|
g.initSpecLinuxResources()
|
|
|
|
if g.spec.Linux.Resources.Memory == nil {
|
2017-04-12 23:12:04 +00:00
|
|
|
g.spec.Linux.Resources.Memory = &rspec.LinuxMemory{}
|
2016-09-20 08:16:59 +00:00
|
|
|
}
|
|
|
|
}
|
2016-11-24 11:26:11 +00:00
|
|
|
|
|
|
|
func (g *Generator) initSpecLinuxResourcesNetwork() {
|
|
|
|
g.initSpecLinuxResources()
|
|
|
|
if g.spec.Linux.Resources.Network == nil {
|
2017-04-12 23:12:04 +00:00
|
|
|
g.spec.Linux.Resources.Network = &rspec.LinuxNetwork{}
|
2016-11-24 11:26:11 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecLinuxResourcesPids() {
|
|
|
|
g.initSpecLinuxResources()
|
|
|
|
if g.spec.Linux.Resources.Pids == nil {
|
2017-04-12 23:12:04 +00:00
|
|
|
g.spec.Linux.Resources.Pids = &rspec.LinuxPids{}
|
2016-11-24 11:26:11 +00:00
|
|
|
}
|
|
|
|
}
|
2018-01-04 15:53:55 +00:00
|
|
|
|
|
|
|
func (g *Generator) initSpecSolaris() {
|
|
|
|
g.initSpec()
|
|
|
|
if g.spec.Solaris == nil {
|
|
|
|
g.spec.Solaris = &rspec.Solaris{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecSolarisCappedCPU() {
|
|
|
|
g.initSpecSolaris()
|
|
|
|
if g.spec.Solaris.CappedCPU == nil {
|
|
|
|
g.spec.Solaris.CappedCPU = &rspec.SolarisCappedCPU{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecSolarisCappedMemory() {
|
|
|
|
g.initSpecSolaris()
|
|
|
|
if g.spec.Solaris.CappedMemory == nil {
|
|
|
|
g.spec.Solaris.CappedMemory = &rspec.SolarisCappedMemory{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecWindows() {
|
|
|
|
g.initSpec()
|
|
|
|
if g.spec.Windows == nil {
|
|
|
|
g.spec.Windows = &rspec.Windows{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecWindowsHyperV() {
|
|
|
|
g.initSpecWindows()
|
|
|
|
if g.spec.Windows.HyperV == nil {
|
|
|
|
g.spec.Windows.HyperV = &rspec.WindowsHyperV{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecWindowsResources() {
|
|
|
|
g.initSpecWindows()
|
|
|
|
if g.spec.Windows.Resources == nil {
|
|
|
|
g.spec.Windows.Resources = &rspec.WindowsResources{}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (g *Generator) initSpecWindowsResourcesMemory() {
|
|
|
|
g.initSpecWindowsResources()
|
|
|
|
if g.spec.Windows.Resources.Memory == nil {
|
|
|
|
g.spec.Windows.Resources.Memory = &rspec.WindowsMemoryResources{}
|
|
|
|
}
|
|
|
|
}
|