Difference between revisions of "Action scripts"
m (Add note for orphan-pts-master)
m (→Library: Replace 'criu_set_notify' with 'criu_set_notify_cb')
|Line 44:||Line 44:|
== Library ==
== Library ==
When using a library, one can set up a callback using the <code>
When using a library, one can set up a callback using the <code></code> routine.
Latest revision as of 22:48, 28 February 2020
--action-script command line option, CRIU can call your action scripts (also known as hooks) at various stages of dumping/restoring. The following hooks are available:
- called before the beginning of dump
- called when CRIU finished dumping tasks and before unfreezing them
- called before the beginning of restore
- called when CRIU has finished restoring tasks and before unlocking the network
- requested to unlock a container network (used by Docker and LXC)
- called when the root task is alive and new set of namespaces is created to set them up
- called after namespaces are configured
- called at the moment when processes and resources are already restored but not yet in running state
- called at the very end, when everything is restored and processes were resumed
- called after master pty is opened and unlocked (used by Docker). Used only in RPC mode, and the notification message contains a file descriptor for the master pty.
These hooks are added with the
--action-script shell-code-to-execute option. When called, the
CRTOOLS_SCRIPT_ACTION environment is set to a value determining which type of action is performed.
In case of RPC, action scripts are implemented as notifications. Once CRIU service wants to execute a script, it sends an RPC message to the caller and waits for it to respond with
criu_req message having
notify_success = true.
When using a library, one can set up a callback using the