Skip to main content
mod-SystemManager

mod-SystemManager

The mod-SystemManager is the central authority for all services running on the debix. It handles service (de)registration, helps with dependency resolution and holds important debugging information for the mod-Transceiver to use.

Runs on Rover1 Debix
Precompiled binary available here
Adheres to Makefile spec
Source code is confidentially available using your Github token
Uses service.yaml
Does not register with SystemManager

Functionalities

  • Maintains a central database of all registered services, with the option to check if services are still running
  • Maintain a central tuning state based on all tuning states it received and automatically merged in a type-safe manner
  • Provides an easy interface to register services, request information about other services, list all registered services, request the current tuning state, notify servies about service registrations and notify services about a new tuning state

Running this module

  1. Download the latest version of this module using the rover utility.
sudo rover update
  1. Enable this module in your /home/debix/rover.yaml file by (re)adding the following lines:
...
- name: mod-SystemManager
  cmd: mod-SystemManager -service-yaml /home/debix/mods/mod-SystemManager/service.yaml -debug
...
  1. Start with the rover utility
sudo rover start

Using this module in your pipeline

The SystemManager is a meta-module that allows all other modules to run. The ASE framework provides mod-ServiceWrapper to conveniently connect with the SystemManager for any module you write. If you wish to have tighter integration, you can set up communication yourself using this specification.