Vendor Microsoft/hcsshim @ v0.5.2
Signed-off-by: John Howard <jhoward@microsoft.com>
This commit is contained in:
parent
3d5cec70b4
commit
8fe9eb0551
|
@ -1,6 +1,6 @@
|
||||||
# the following lines are in sorted order, FYI
|
# the following lines are in sorted order, FYI
|
||||||
github.com/Azure/go-ansiterm 388960b655244e76e24c75f48631564eaefade62
|
github.com/Azure/go-ansiterm 388960b655244e76e24c75f48631564eaefade62
|
||||||
github.com/Microsoft/hcsshim v0.5.17
|
github.com/Microsoft/hcsshim v0.5.23
|
||||||
github.com/Microsoft/go-winio v0.4.2
|
github.com/Microsoft/go-winio v0.4.2
|
||||||
github.com/Sirupsen/logrus v0.11.0
|
github.com/Sirupsen/logrus v0.11.0
|
||||||
github.com/davecgh/go-spew 346938d642f2ec3594ed81d874461961cd0faa76
|
github.com/davecgh/go-spew 346938d642f2ec3594ed81d874461961cd0faa76
|
||||||
|
|
|
@ -35,7 +35,6 @@ type ContainerProperties struct {
|
||||||
SystemType string
|
SystemType string
|
||||||
Owner string
|
Owner string
|
||||||
SiloGUID string `json:"SiloGuid,omitempty"`
|
SiloGUID string `json:"SiloGuid,omitempty"`
|
||||||
IsDummy bool `json:",omitempty"`
|
|
||||||
RuntimeID string `json:"RuntimeId,omitempty"`
|
RuntimeID string `json:"RuntimeId,omitempty"`
|
||||||
IsRuntimeTemplate bool `json:",omitempty"`
|
IsRuntimeTemplate bool `json:",omitempty"`
|
||||||
RuntimeImagePath string `json:",omitempty"`
|
RuntimeImagePath string `json:",omitempty"`
|
||||||
|
@ -121,7 +120,7 @@ const (
|
||||||
// Supported resource types are Network and Request Types are Add/Remove
|
// Supported resource types are Network and Request Types are Add/Remove
|
||||||
type ResourceModificationRequestResponse struct {
|
type ResourceModificationRequestResponse struct {
|
||||||
Resource ResourceType `json:"ResourceType"`
|
Resource ResourceType `json:"ResourceType"`
|
||||||
Data string `json:"Settings"`
|
Data interface{} `json:"Settings"`
|
||||||
Request RequestType `json:"RequestType,omitempty"`
|
Request RequestType `json:"RequestType,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -585,7 +584,7 @@ func (container *container) CreateProcess(c *ProcessConfig) (Process, error) {
|
||||||
return nil, makeContainerError(container, operation, "", err)
|
return nil, makeContainerError(container, operation, "", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
logrus.Debugf(title+" succeeded id=%s processid=%s", container.id, process.processID)
|
logrus.Debugf(title+" succeeded id=%s processid=%d", container.id, process.processID)
|
||||||
return process, nil
|
return process, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package hcsshim
|
package hcsshim
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"encoding/json"
|
||||||
"io"
|
"io"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
@ -8,16 +9,18 @@ import (
|
||||||
// ProcessConfig is used as both the input of Container.CreateProcess
|
// ProcessConfig is used as both the input of Container.CreateProcess
|
||||||
// and to convert the parameters to JSON for passing onto the HCS
|
// and to convert the parameters to JSON for passing onto the HCS
|
||||||
type ProcessConfig struct {
|
type ProcessConfig struct {
|
||||||
ApplicationName string
|
ApplicationName string `json:",omitempty"`
|
||||||
CommandLine string
|
CommandLine string `json:",omitempty"`
|
||||||
User string
|
User string `json:",omitempty"`
|
||||||
WorkingDirectory string
|
WorkingDirectory string `json:",omitempty"`
|
||||||
Environment map[string]string
|
Environment map[string]string `json:",omitempty"`
|
||||||
EmulateConsole bool
|
EmulateConsole bool `json:",omitempty"`
|
||||||
CreateStdInPipe bool
|
CreateStdInPipe bool `json:",omitempty"`
|
||||||
CreateStdOutPipe bool
|
CreateStdOutPipe bool `json:",omitempty"`
|
||||||
CreateStdErrPipe bool
|
CreateStdErrPipe bool `json:",omitempty"`
|
||||||
ConsoleSize [2]uint
|
ConsoleSize [2]uint `json:",omitempty"`
|
||||||
|
CreateInUtilityVm bool `json:",omitempty"` // Used by Linux Containers on Windows
|
||||||
|
OCISpecification *json.RawMessage `json:",omitempty"` // Used by Linux Containers on Windows
|
||||||
}
|
}
|
||||||
|
|
||||||
type Layer struct {
|
type Layer struct {
|
||||||
|
@ -36,6 +39,16 @@ type MappedDir struct {
|
||||||
type HvRuntime struct {
|
type HvRuntime struct {
|
||||||
ImagePath string `json:",omitempty"`
|
ImagePath string `json:",omitempty"`
|
||||||
SkipTemplate bool `json:",omitempty"`
|
SkipTemplate bool `json:",omitempty"`
|
||||||
|
LinuxInitrdPath string `json:",omitempty"` // Host path to an initrd image for starting a Linux utility VM
|
||||||
|
LinuxKernelPath string `json:",omitempty"` // Host path to kernel for starting a Linux utility VM
|
||||||
|
}
|
||||||
|
|
||||||
|
type MappedVirtualDisk struct {
|
||||||
|
HostPath string `json:",omitempty"` // Path to VHD on the host
|
||||||
|
ContainerPath string // Platform-specific mount point path in the container
|
||||||
|
CreateInUtilityVM bool `json:",omitempty"`
|
||||||
|
ReadOnly bool `json:",omitempty"`
|
||||||
|
Cache string `json:",omitempty"` // "" (Unspecified); "Disabled"; "Enabled"; "Private"; "PrivateAllowSharing"
|
||||||
}
|
}
|
||||||
|
|
||||||
// ContainerConfig is used as both the input of CreateContainer
|
// ContainerConfig is used as both the input of CreateContainer
|
||||||
|
@ -43,10 +56,9 @@ type HvRuntime struct {
|
||||||
type ContainerConfig struct {
|
type ContainerConfig struct {
|
||||||
SystemType string // HCS requires this to be hard-coded to "Container"
|
SystemType string // HCS requires this to be hard-coded to "Container"
|
||||||
Name string // Name of the container. We use the docker ID.
|
Name string // Name of the container. We use the docker ID.
|
||||||
Owner string // The management platform that created this container
|
Owner string `json:",omitempty"` // The management platform that created this container
|
||||||
IsDummy bool // Used for development purposes.
|
|
||||||
VolumePath string `json:",omitempty"` // Windows volume path for scratch space. Used by Windows Server Containers only. Format \\?\\Volume{GUID}
|
VolumePath string `json:",omitempty"` // Windows volume path for scratch space. Used by Windows Server Containers only. Format \\?\\Volume{GUID}
|
||||||
IgnoreFlushesDuringBoot bool // Optimization hint for container startup in Windows
|
IgnoreFlushesDuringBoot bool `json:",omitempty"` // Optimization hint for container startup in Windows
|
||||||
LayerFolderPath string `json:",omitempty"` // Where the layer folders are located. Used by Windows Server Containers only. Format %root%\windowsfilter\containerID
|
LayerFolderPath string `json:",omitempty"` // Where the layer folders are located. Used by Windows Server Containers only. Format %root%\windowsfilter\containerID
|
||||||
Layers []Layer // List of storage layers. Required for Windows Server and Hyper-V Containers. Format ID=GUID;Path=%root%\windowsfilter\layerID
|
Layers []Layer // List of storage layers. Required for Windows Server and Hyper-V Containers. Format ID=GUID;Path=%root%\windowsfilter\layerID
|
||||||
Credentials string `json:",omitempty"` // Credentials information
|
Credentials string `json:",omitempty"` // Credentials information
|
||||||
|
@ -57,16 +69,18 @@ type ContainerConfig struct {
|
||||||
StorageBandwidthMaximum uint64 `json:",omitempty"` // Maximum Storage Bandwidth in bytes per second
|
StorageBandwidthMaximum uint64 `json:",omitempty"` // Maximum Storage Bandwidth in bytes per second
|
||||||
StorageSandboxSize uint64 `json:",omitempty"` // Size in bytes that the container system drive should be expanded to if smaller
|
StorageSandboxSize uint64 `json:",omitempty"` // Size in bytes that the container system drive should be expanded to if smaller
|
||||||
MemoryMaximumInMB int64 `json:",omitempty"` // Maximum memory available to the container in Megabytes
|
MemoryMaximumInMB int64 `json:",omitempty"` // Maximum memory available to the container in Megabytes
|
||||||
HostName string // Hostname
|
HostName string `json:",omitempty"` // Hostname
|
||||||
MappedDirectories []MappedDir // List of mapped directories (volumes/mounts)
|
MappedDirectories []MappedDir `json:",omitempty"` // List of mapped directories (volumes/mounts)
|
||||||
SandboxPath string `json:",omitempty"` // Location of unmounted sandbox. Used by Hyper-V containers only. Format %root%\windowsfilter
|
|
||||||
HvPartition bool // True if it a Hyper-V Container
|
HvPartition bool // True if it a Hyper-V Container
|
||||||
EndpointList []string // List of networking endpoints to be attached to container
|
|
||||||
NetworkSharedContainerName string `json:",omitempty"` // Name (ID) of the container that we will share the network stack with.
|
NetworkSharedContainerName string `json:",omitempty"` // Name (ID) of the container that we will share the network stack with.
|
||||||
|
EndpointList []string `json:",omitempty"` // List of networking endpoints to be attached to container
|
||||||
HvRuntime *HvRuntime `json:",omitempty"` // Hyper-V container settings. Used by Hyper-V containers only. Format ImagePath=%root%\BaseLayerID\UtilityVM
|
HvRuntime *HvRuntime `json:",omitempty"` // Hyper-V container settings. Used by Hyper-V containers only. Format ImagePath=%root%\BaseLayerID\UtilityVM
|
||||||
Servicing bool // True if this container is for servicing
|
Servicing bool `json:",omitempty"` // True if this container is for servicing
|
||||||
AllowUnqualifiedDNSQuery bool // True to allow unqualified DNS name resolution
|
AllowUnqualifiedDNSQuery bool `json:",omitempty"` // True to allow unqualified DNS name resolution
|
||||||
DNSSearchList string `json:",omitempty"` // Comma seperated list of DNS suffixes to use for name resolution
|
DNSSearchList string `json:",omitempty"` // Comma seperated list of DNS suffixes to use for name resolution
|
||||||
|
ContainerType string `json:",omitempty"` // "Linux" for Linux containers on Windows. Omitted otherwise.
|
||||||
|
TerminateOnLastHandleClosed bool `json:",omitempty"` // Should HCS terminate the container once all handles have been closed
|
||||||
|
MappedVirtualDisks []MappedVirtualDisk `json:",omitempty"` // Array of virtual disks to mount at start
|
||||||
}
|
}
|
||||||
|
|
||||||
type ComputeSystemQuery struct {
|
type ComputeSystemQuery struct {
|
||||||
|
|
|
@ -59,4 +59,5 @@ func waitForNotification(callbackNumber uintptr, expectedNotification hcsNotific
|
||||||
case <-c:
|
case <-c:
|
||||||
return ErrTimeout
|
return ErrTimeout
|
||||||
}
|
}
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue