...
1
2
3 package hcs
4
5 import (
6 hcsschema "github.com/Microsoft/hcsshim/internal/hcs/schema2"
7 "github.com/Microsoft/hcsshim/osversion"
8 "github.com/pkg/errors"
9 )
10
11 func (uvmb *utilityVMBuilder) SetUEFIBoot(dir string, path string, args string) error {
12 uvmb.doc.VirtualMachine.Chipset.Uefi = &hcsschema.Uefi{
13 BootThis: &hcsschema.UefiBootEntry{
14 DevicePath: path,
15 DeviceType: "VmbFs",
16 VmbFsRootPath: dir,
17 OptionalData: args,
18 },
19 }
20 return nil
21 }
22
23 func (uvmb *utilityVMBuilder) SetLinuxKernelDirectBoot(kernel string, initRD string, cmd string) error {
24 if osversion.Get().Build < 18286 {
25 return errors.New("Linux kernel direct boot requires at least Windows version 18286")
26 }
27 uvmb.doc.VirtualMachine.Chipset.LinuxKernelDirect = &hcsschema.LinuxKernelDirect{
28 KernelFilePath: kernel,
29 InitRdPath: initRD,
30 KernelCmdLine: cmd,
31 }
32 return nil
33 }
34
View as plain text