README.manager.rst 1.08 KB

slapos.manager

Manager is a plugin-like class that is being run in multiple phases of slapos node lifecycle.

  • format, manager can format additionally the underlaying OS
  • software, manager can react on software installation
  • instance, manager can update instance runtime frequently

Constructor will receive configuration of current stage. Then each method receives object most related to the current operation. For details see <slapos/manager/interface.py>.

In code, a list of manager instances can be easily retreived by

from slapos import manager manager_list = manager.from_config(config)

Where from_config extracts "manager_list" item from dict-like config argument and then dynamically loads modules named according to the configuration inside slapos.manager package. The manager must be a class named Manager and implementing interface slapos.manager.interface.IManager.

Managers might require a list of user for whom they are allowed to perform tasks. This list of users is given by "power_user_list" in [slapos] section in the config file.