ClockworkFeature

Clockwork as a feature (clockwork §CW-D-1, §CW-D-9, §CW-D-15).

In the namespace nodekit. Declared in src/libs/libnodekit/nodekit/features/ClockworkFeature.hpp.

Detailed description

Holds the node's schedule book, `<node folder>/clockwork.json`, and one clockwork engine on the queue of BatchFeature. Needs `batch`.

- **One book, two nodes**: the book's folder holds a QLockFile, `clockwork.lock`. The node that holds it runs the engine. Any other node shows the schedules read-only, names the node that fires them, and tries the lock again every 60 s, so it takes over when the first node ends. The lock has no age limit: a live holder keeps it for as long as it runs, and QLockFile breaks the lock of a dead process on this computer. - **The node switch**: the setting `clockwork/enabled`, "Run stored schedules", on by default. Off: no firing, and no miss is counted. - **Access**: the facility `clockwork`, the engine. - **Lifecycle**: the engine starts at install, when the node holds the lock, and stops at uninstall. - **Proof**: testClockworkFeature.

In this section