2016-03-18 18:53:27 +00:00
|
|
|
package libcontainerd
|
|
|
|
|
2016-08-17 22:46:28 +00:00
|
|
|
import (
|
|
|
|
"github.com/Microsoft/hcsshim"
|
2016-09-27 17:26:59 +00:00
|
|
|
"github.com/opencontainers/runtime-spec/specs-go"
|
2016-08-17 22:46:28 +00:00
|
|
|
)
|
2016-03-18 18:53:27 +00:00
|
|
|
|
|
|
|
// Process contains information to start a specific application inside the container.
|
2016-09-27 17:26:59 +00:00
|
|
|
type Process specs.Process
|
2016-03-18 18:53:27 +00:00
|
|
|
|
2016-08-17 22:46:28 +00:00
|
|
|
// Summary contains a ProcessList item from HCS to support `top`
|
|
|
|
type Summary hcsshim.ProcessListItem
|
2016-03-20 22:58:23 +00:00
|
|
|
|
2016-04-02 00:02:38 +00:00
|
|
|
// StateInfo contains description about the new state container has entered.
|
|
|
|
type StateInfo struct {
|
|
|
|
CommonStateInfo
|
|
|
|
|
|
|
|
// Platform specific StateInfo
|
2016-04-13 20:34:07 +00:00
|
|
|
UpdatePending bool // Indicates that there are some update operations pending that should be completed by a servicing container.
|
2016-04-02 00:02:38 +00:00
|
|
|
}
|
|
|
|
|
2016-12-14 07:50:25 +00:00
|
|
|
// Stats contains statistics from HCS
|
2016-09-07 23:08:51 +00:00
|
|
|
type Stats hcsshim.Statistics
|
2016-03-18 18:53:27 +00:00
|
|
|
|
|
|
|
// Resources defines updatable container resource values.
|
|
|
|
type Resources struct{}
|
2016-04-13 20:34:07 +00:00
|
|
|
|
2016-09-18 01:17:51 +00:00
|
|
|
// ServicingOption is a CreateOption with a no-op application that signifies
|
2016-08-17 23:10:01 +00:00
|
|
|
// the container needs to be used for a Windows servicing operation.
|
2016-04-13 20:34:07 +00:00
|
|
|
type ServicingOption struct {
|
|
|
|
IsServicing bool
|
|
|
|
}
|
2016-05-12 14:52:00 +00:00
|
|
|
|
2016-09-18 01:17:51 +00:00
|
|
|
// FlushOption is a CreateOption that signifies if the container should be
|
2016-09-16 17:41:47 +00:00
|
|
|
// started with flushes ignored until boot has completed. This is an optimisation
|
|
|
|
// for first boot of a container.
|
|
|
|
type FlushOption struct {
|
|
|
|
IgnoreFlushesDuringBoot bool
|
|
|
|
}
|
|
|
|
|
2016-09-19 21:47:48 +00:00
|
|
|
// HyperVIsolationOption is a CreateOption that indicates whether the runtime
|
|
|
|
// should start the container as a Hyper-V container, and if so, the sandbox path.
|
|
|
|
type HyperVIsolationOption struct {
|
|
|
|
IsHyperV bool
|
|
|
|
SandboxPath string `json:",omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// LayerOption is a CreateOption that indicates to the runtime the layer folder
|
|
|
|
// and layer paths for a container.
|
|
|
|
type LayerOption struct {
|
2016-12-14 07:50:25 +00:00
|
|
|
// LayerFolderPath is the path to the current layer folder. Empty for Hyper-V containers.
|
2016-09-19 21:47:48 +00:00
|
|
|
LayerFolderPath string `json:",omitempty"`
|
|
|
|
// Layer paths of the parent layers
|
|
|
|
LayerPaths []string
|
|
|
|
}
|
|
|
|
|
2016-09-18 01:17:51 +00:00
|
|
|
// NetworkEndpointsOption is a CreateOption that provides the runtime list
|
|
|
|
// of network endpoints to which a container should be attached during its creation.
|
|
|
|
type NetworkEndpointsOption struct {
|
2016-09-13 00:17:09 +00:00
|
|
|
Endpoints []string
|
|
|
|
AllowUnqualifiedDNSQuery bool
|
2016-09-18 01:17:51 +00:00
|
|
|
}
|
|
|
|
|
2016-06-07 19:15:50 +00:00
|
|
|
// CredentialsOption is a CreateOption that indicates the credentials from
|
|
|
|
// a credential spec to be used to the runtime
|
|
|
|
type CredentialsOption struct {
|
|
|
|
Credentials string
|
|
|
|
}
|
|
|
|
|
2016-05-12 14:52:00 +00:00
|
|
|
// Checkpoint holds the details of a checkpoint (not supported in windows)
|
|
|
|
type Checkpoint struct {
|
|
|
|
Name string
|
|
|
|
}
|
|
|
|
|
|
|
|
// Checkpoints contains the details of a checkpoint
|
|
|
|
type Checkpoints struct {
|
|
|
|
Checkpoints []*Checkpoint
|
|
|
|
}
|