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) FinalizeDump(ctx context.Context, opts *criu.CriuOpts, err error) error
- func (c NoNotify) FinalizeRestore(ctx context.Context, opts *criu.CriuOpts, err error) error
- func (c NoNotify) Initialize(ctx context.Context, criuPid int) error
- func (c NoNotify) InitializeDump(ctx context.Context, opts *criu.CriuOpts) error
- func (c NoNotify) InitializeRestore(ctx context.Context, opts *criu.CriuOpts) error
- func (c NoNotify) NetworkLock(ctx context.Context) error
- func (c NoNotify) NetworkUnlock(ctx context.Context) error
- 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) QueryExtFiles(ctx context.Context) ([]string, error)
- func (c NoNotify) SetupNamespaces(ctx context.Context, pid int32) error
- func (c NoNotify) SkipNamespaces(ctx context.Context, pid int32) error
- type Notify
- type NotifyCallback
- func (n NotifyCallback) FinalizeDump(ctx context.Context, opts *criu.CriuOpts, err error) error
- func (n NotifyCallback) FinalizeRestore(ctx context.Context, opts *criu.CriuOpts, err error) error
- func (n NotifyCallback) Initialize(ctx context.Context, criuPid int32) error
- func (n NotifyCallback) InitializeDump(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallback) InitializeRestore(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallback) NetworkLock(ctx context.Context) error
- func (n NotifyCallback) NetworkUnlock(ctx context.Context) error
- 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) QueryExtFiles(ctx context.Context) ([]string, error)
- func (n NotifyCallback) SetupNamespaces(ctx context.Context, pid int32) error
- func (n NotifyCallback) SkipNamespaces(ctx context.Context, pid int32) error
- type NotifyCallbackMulti
- func (n NotifyCallbackMulti) FinalizeDump(ctx context.Context, opts *criu.CriuOpts, err error) error
- func (n NotifyCallbackMulti) FinalizeRestore(ctx context.Context, opts *criu.CriuOpts, err error) error
- 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) InitializeDump(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallbackMulti) InitializeRestore(ctx context.Context, opts *criu.CriuOpts) error
- func (n NotifyCallbackMulti) NetworkLock(ctx context.Context) error
- func (n NotifyCallbackMulti) NetworkUnlock(ctx context.Context) error
- 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) QueryExtFiles(ctx context.Context) ([]string, error)
- func (n NotifyCallbackMulti) SetupNamespaces(ctx context.Context, pid int32) error
- func (n NotifyCallbackMulti) SkipNamespaces(ctx context.Context, pid int32) error
- type NotifyFunc
- type NotifyFuncExtFiles
- type NotifyFuncFd
- type NotifyFuncOpts
- type NotifyFuncOptsErr
- type NotifyFuncOptsNoError
- type NotifyFuncPid
- type NotifyScript
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) FinalizeDump ¶ added in v0.9.264
FinalizeDump NoNotify
func (NoNotify) FinalizeRestore ¶ added in v0.9.264
FinalizeRestore NoNotify
func (NoNotify) Initialize ¶
Initialize NoNotify
func (NoNotify) InitializeDump ¶ added in v0.9.264
InitializeDump NoNotify
func (NoNotify) InitializeRestore ¶
InitializeRestore NoNotify
func (NoNotify) NetworkLock ¶
NetworkLock NoNotify
func (NoNotify) NetworkUnlock ¶
NetworkUnlock NoNotify
func (NoNotify) OrphanPtsMaster ¶
func (NoNotify) PostRestore ¶
PostRestore NoNotify
func (NoNotify) PostResume ¶
PostResume NoNotify
func (NoNotify) PostSetupNamespaces ¶
PostSetupNamespaces NoNotify
func (NoNotify) PreRestore ¶
PreRestore NoNotify
func (NoNotify) QueryExtFiles ¶ added in v0.9.300
func (NoNotify) SetupNamespaces ¶
SetupNamespaces NoNotify
type Notify ¶
type Notify interface {
Initialize(ctx context.Context, criuPid int32) error
InitializeDump(ctx context.Context, opts *criu.CriuOpts) error
InitializeRestore(ctx context.Context, opts *criu.CriuOpts) error
FinalizeDump(ctx context.Context, opts *criu.CriuOpts, err error) error
FinalizeRestore(ctx context.Context, opts *criu.CriuOpts, err error) 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
SkipNamespaces(ctx context.Context, pid int32) error
PreResume(ctx context.Context) error
PostResume(ctx context.Context) error
OrphanPtsMaster(ctx context.Context, fd int32) error
QueryExtFiles(ctx context.Context) ([]string, error) // return external file keys after CRIU has seized the process tree.
}
Notify interface
type NotifyCallback ¶
type NotifyCallback struct {
InitializeFunc InitializeFunc
InitializeDumpFunc NotifyFuncOpts
InitializeRestoreFunc NotifyFuncOpts
FinalizeDumpFunc NotifyFuncOptsErr
FinalizeRestoreFunc NotifyFuncOptsErr
PreDumpFunc NotifyFuncOpts
PostDumpFunc NotifyFuncOpts
PreRestoreFunc NotifyFuncOpts
PostRestoreFunc NotifyFuncPid
NetworkLockFunc NotifyFunc
NetworkUnlockFunc NotifyFunc
SetupNamespacesFunc NotifyFuncPid
PostSetupNamespacesFunc NotifyFunc
SkipNamespacesFunc NotifyFuncPid
PreResumeFunc NotifyFunc
PostResumeFunc NotifyFunc
OrphanPtsMasterFunc NotifyFuncFd
QueryExtFilesFunc NotifyFuncExtFiles
Name string // to give some context to this callback
}
func (NotifyCallback) FinalizeDump ¶ added in v0.9.264
func (NotifyCallback) FinalizeRestore ¶ added in v0.9.264
func (NotifyCallback) Initialize ¶
func (n NotifyCallback) Initialize(ctx context.Context, criuPid int32) error
func (NotifyCallback) InitializeDump ¶ added in v0.9.264
func (NotifyCallback) InitializeRestore ¶
func (NotifyCallback) NetworkLock ¶
func (n NotifyCallback) NetworkLock(ctx context.Context) error
func (NotifyCallback) NetworkUnlock ¶
func (n NotifyCallback) NetworkUnlock(ctx context.Context) error
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) QueryExtFiles ¶ added in v0.9.300
func (n NotifyCallback) QueryExtFiles(ctx context.Context) ([]string, error)
func (NotifyCallback) SetupNamespaces ¶
func (n NotifyCallback) SetupNamespaces(ctx context.Context, pid int32) error
func (NotifyCallback) SkipNamespaces ¶ added in v0.9.292
func (n NotifyCallback) SkipNamespaces(ctx context.Context, pid int32) error
type NotifyCallbackMulti ¶
type NotifyCallbackMulti struct {
// contains filtered or unexported fields
}
func (NotifyCallbackMulti) FinalizeDump ¶ added in v0.9.264
func (NotifyCallbackMulti) FinalizeRestore ¶ added in v0.9.264
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) InitializeDump ¶ added in v0.9.264
func (NotifyCallbackMulti) InitializeRestore ¶
func (NotifyCallbackMulti) NetworkLock ¶
func (n NotifyCallbackMulti) NetworkLock(ctx context.Context) error
func (NotifyCallbackMulti) NetworkUnlock ¶
func (n NotifyCallbackMulti) NetworkUnlock(ctx context.Context) error
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) QueryExtFiles ¶ added in v0.9.300
func (n NotifyCallbackMulti) QueryExtFiles(ctx context.Context) ([]string, error)
func (NotifyCallbackMulti) SetupNamespaces ¶
func (n NotifyCallbackMulti) SetupNamespaces(ctx context.Context, pid int32) error
func (NotifyCallbackMulti) SkipNamespaces ¶ added in v0.9.292
func (n NotifyCallbackMulti) SkipNamespaces(ctx context.Context, pid int32) error
type NotifyFunc ¶
type NotifyFuncExtFiles ¶ added in v0.9.300
type NotifyFuncOptsErr ¶ added in v0.9.288
type NotifyFuncOptsNoError ¶ added in v0.9.244
type NotifyScript ¶ added in v0.9.264
type NotifyScript = NoNotify