Documentation
¶
Index ¶
- type Criu
- func (c *Criu) Check(ctx context.Context, flags ...string) (string, error)
- func (c *Criu) Cleanup() error
- func (c *Criu) Dump(ctx context.Context, opts *criu.CriuOpts, nfy Notify) (*criu.CriuDumpResp, error)
- func (c *Criu) GetCriuVersion(ctx context.Context) (int, error)
- func (c *Criu) IsCriuAtLeast(ctx context.Context, version int) (bool, error)
- func (c *Criu) PreDump(ctx context.Context, opts *criu.CriuOpts, nfy Notify) error
- func (c *Criu) Prepare(ctx context.Context, stdin io.Reader, stdout, stderr io.Writer, ...) error
- func (c *Criu) Restore(ctx context.Context, opts *criu.CriuOpts, nfy Notify, stdin io.Reader, ...) (*criu.CriuRestoreResp, error)
- func (c *Criu) SetCriuPath(path string)
- func (c *Criu) StartPageServer(ctx context.Context, opts *criu.CriuOpts) error
- func (c *Criu) StartPageServerChld(ctx context.Context, opts *criu.CriuOpts) (int, int, error)
- type InitializeFunc
- type NoNotify
- func (c NoNotify) Initialize(ctx context.Context, criuPid int) error
- func (c NoNotify) NetworkLock(ctx context.Context) error
- func (c NoNotify) NetworkUnlock(ctx context.Context) error
- func (c NoNotify) OnRestoreError(ctx context.Context)
- func (c NoNotify) OrphanPtsMaster(ctx context.Context, fd int32) error
- func (c NoNotify) PostDump(ctx context.Context, dir string) error
- func (c NoNotify) PostRestore(ctx context.Context, pid int32) error
- func (c NoNotify) PostResume(ctx context.Context) error
- func (c NoNotify) PostSetupNamespaces(ctx context.Context) error
- func (c NoNotify) PreDump(ctx context.Context, dir string) error
- func (c NoNotify) PreRestore(ctx context.Context, dir string) error
- func (c NoNotify) PreResume(ctx context.Context) error
- func (c NoNotify) SetupNamespaces(ctx context.Context, pid int32) error
- type Notify
- type NotifyCallback
- func (n NotifyCallback) Initialize(ctx context.Context, criuPid int32) error
- func (n NotifyCallback) NetworkLock(ctx context.Context) error
- func (n NotifyCallback) NetworkUnlock(ctx context.Context) error
- func (n NotifyCallback) OnRestoreError(ctx context.Context)
- func (n NotifyCallback) OrphanPtsMaster(ctx context.Context, fd int32) error
- func (n NotifyCallback) PostDump(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallback) PostRestore(ctx context.Context, pid int32) error
- func (n NotifyCallback) PostResume(ctx context.Context) error
- func (n NotifyCallback) PostSetupNamespaces(ctx context.Context) error
- func (n NotifyCallback) PreDump(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallback) PreRestore(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallback) PreResume(ctx context.Context) error
- func (n NotifyCallback) SetupNamespaces(ctx context.Context, pid int32) error
- type NotifyCallbackMulti
- func (n *NotifyCallbackMulti) Include(nfy *NotifyCallback)
- func (n *NotifyCallbackMulti) IncludeMulti(nfy *NotifyCallbackMulti)
- func (n NotifyCallbackMulti) Initialize(ctx context.Context, criuPid int32) error
- func (n NotifyCallbackMulti) NetworkLock(ctx context.Context) error
- func (n NotifyCallbackMulti) NetworkUnlock(ctx context.Context) error
- func (n NotifyCallbackMulti) OnRestoreError(ctx context.Context)
- func (n NotifyCallbackMulti) OrphanPtsMaster(ctx context.Context, fd int32) error
- func (n NotifyCallbackMulti) PostDump(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallbackMulti) PostRestore(ctx context.Context, pid int32) error
- func (n NotifyCallbackMulti) PostResume(ctx context.Context) error
- func (n NotifyCallbackMulti) PostSetupNamespaces(ctx context.Context) error
- func (n NotifyCallbackMulti) PreDump(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallbackMulti) PreRestore(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallbackMulti) PreResume(ctx context.Context) error
- func (n NotifyCallbackMulti) SetupNamespaces(ctx context.Context, pid int32) error
- type NotifyFunc
- type NotifyFuncFd
- type NotifyFuncNoError
- type NotifyFuncOpts
- type NotifyFuncPid
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Criu ¶
type Criu struct {
// contains filtered or unexported fields
}
Criu struct
func (*Criu) Dump ¶
func (c *Criu) Dump( ctx context.Context, opts *criu.CriuOpts, nfy Notify, ) (*criu.CriuDumpResp, error)
Dump dumps a process
func (*Criu) GetCriuVersion ¶
GetCriuVersion executes the VERSION RPC call and returns the version as an integer. Major * 10000 + Minor * 100 + SubLevel
func (*Criu) IsCriuAtLeast ¶
IsCriuAtLeast checks if the version is at least the same as the parameter version
func (*Criu) Prepare ¶
func (c *Criu) Prepare(ctx context.Context, stdin io.Reader, stdout, stderr io.Writer, extraFiles ...*os.File) error
Prepare sets up everything for the RPC communication to CRIU
func (*Criu) Restore ¶
func (c *Criu) Restore( ctx context.Context, opts *criu.CriuOpts, nfy Notify, stdin io.Reader, stdout, stderr io.Writer, extraFiles ...*os.File, ) (*criu.CriuRestoreResp, error)
Restore restores a process
func (*Criu) SetCriuPath ¶
SetCriuPath allows setting the path to the CRIU binary if it is in a non standard location
func (*Criu) StartPageServer ¶
StartPageServer starts the page server
type NoNotify ¶
type NoNotify struct{}
NoNotify struct
func (NoNotify) Initialize ¶
Initialize NoNotify
func (NoNotify) NetworkLock ¶
NetworkLock NoNotify
func (NoNotify) NetworkUnlock ¶
NetworkUnlock NoNotify
func (NoNotify) OnRestoreError ¶
func (NoNotify) OrphanPtsMaster ¶
func (NoNotify) PostRestore ¶
PostRestore NoNotify
func (NoNotify) PostResume ¶
PostResume NoNotify
func (NoNotify) PostSetupNamespaces ¶
PostSetupNamespaces NoNotify
func (NoNotify) PreRestore ¶
PreRestore NoNotify
type Notify ¶
type Notify interface {
Initialize(ctx context.Context, criuPid int32) error
PreDump(ctx context.Context, opts *criu.CriuOpts) error
PostDump(ctx context.Context, opts *criu.CriuOpts) error
PreRestore(ctx context.Context, opts *criu.CriuOpts) error
PostRestore(ctx context.Context, pid int32) error
NetworkLock(ctx context.Context) error
NetworkUnlock(ctx context.Context) error
SetupNamespaces(ctx context.Context, pid int32) error
PostSetupNamespaces(ctx context.Context) error
PreResume(ctx context.Context) error
PostResume(ctx context.Context) error
OrphanPtsMaster(ctx context.Context, fd int32) error
OnRestoreError(ctx context.Context)
}
Notify interface
type NotifyCallback ¶
type NotifyCallback struct {
InitializeFunc InitializeFunc
PreDumpFunc NotifyFuncOpts
PostDumpFunc NotifyFuncOpts
PreRestoreFunc NotifyFuncOpts
PostRestoreFunc NotifyFuncPid
NetworkLockFunc NotifyFunc
NetworkUnlockFunc NotifyFunc
SetupNamespacesFunc NotifyFuncPid
PostSetupNamespacesFunc NotifyFunc
PreResumeFunc NotifyFunc
PostResumeFunc NotifyFunc
OrphanPtsMasterFunc NotifyFuncFd
OnRestoreErrorFunc NotifyFuncNoError
Name string // to give some context to this callback
}
func (NotifyCallback) Initialize ¶
func (n NotifyCallback) Initialize(ctx context.Context, criuPid int32) error
func (NotifyCallback) NetworkLock ¶
func (n NotifyCallback) NetworkLock(ctx context.Context) error
func (NotifyCallback) NetworkUnlock ¶
func (n NotifyCallback) NetworkUnlock(ctx context.Context) error
func (NotifyCallback) OnRestoreError ¶
func (n NotifyCallback) OnRestoreError(ctx context.Context)
func (NotifyCallback) OrphanPtsMaster ¶
func (n NotifyCallback) OrphanPtsMaster(ctx context.Context, fd int32) error
func (NotifyCallback) PostRestore ¶
func (n NotifyCallback) PostRestore(ctx context.Context, pid int32) error
func (NotifyCallback) PostResume ¶
func (n NotifyCallback) PostResume(ctx context.Context) error
func (NotifyCallback) PostSetupNamespaces ¶
func (n NotifyCallback) PostSetupNamespaces(ctx context.Context) error
func (NotifyCallback) PreRestore ¶
func (NotifyCallback) SetupNamespaces ¶
func (n NotifyCallback) SetupNamespaces(ctx context.Context, pid int32) error
type NotifyCallbackMulti ¶
type NotifyCallbackMulti struct {
// contains filtered or unexported fields
}
func (*NotifyCallbackMulti) Include ¶
func (n *NotifyCallbackMulti) Include(nfy *NotifyCallback)
func (*NotifyCallbackMulti) IncludeMulti ¶
func (n *NotifyCallbackMulti) IncludeMulti(nfy *NotifyCallbackMulti)
func (NotifyCallbackMulti) Initialize ¶
func (n NotifyCallbackMulti) Initialize(ctx context.Context, criuPid int32) error
func (NotifyCallbackMulti) NetworkLock ¶
func (n NotifyCallbackMulti) NetworkLock(ctx context.Context) error
func (NotifyCallbackMulti) NetworkUnlock ¶
func (n NotifyCallbackMulti) NetworkUnlock(ctx context.Context) error
func (NotifyCallbackMulti) OnRestoreError ¶
func (n NotifyCallbackMulti) OnRestoreError(ctx context.Context)
func (NotifyCallbackMulti) OrphanPtsMaster ¶
func (n NotifyCallbackMulti) OrphanPtsMaster(ctx context.Context, fd int32) error
func (NotifyCallbackMulti) PostRestore ¶
func (n NotifyCallbackMulti) PostRestore(ctx context.Context, pid int32) error
func (NotifyCallbackMulti) PostResume ¶
func (n NotifyCallbackMulti) PostResume(ctx context.Context) error
func (NotifyCallbackMulti) PostSetupNamespaces ¶
func (n NotifyCallbackMulti) PostSetupNamespaces(ctx context.Context) error
func (NotifyCallbackMulti) PreRestore ¶
func (NotifyCallbackMulti) PreResume ¶
func (n NotifyCallbackMulti) PreResume(ctx context.Context) error
func (NotifyCallbackMulti) SetupNamespaces ¶
func (n NotifyCallbackMulti) SetupNamespaces(ctx context.Context, pid int32) error