libreschool-client-manager/README.md

1.6 KiB

libreschool-client-manager

This software uses Ansible Playbooks to configure all connected clients.

Available Events

Adopt a machine (which should already exist in the hosts db):

# signal-event client-adopt pc-99 username password

Reboot a machine:

# signal-event client-reboot pc-01

Reboot all machines:

# signal-event client-reboot-all

Force reconfiguration of a machine:

# signal-event client-reconfigure pc-02

Force reconfiguration of all machines:

# signal-event client-reconfigure-all

Shutdown a machine:

# signal-event client-shutdown pc-02

Shutdown all machines:

# signal-event client-shutdown-all

Update source configuration timestamp:

# signal-event client-update-lastconfig

Wakeup a machine:

# signal-event client-wake pc-02

Wakeup all machines:

# signal-event client-wake-all

Support for a group of machines

If you defined a group of machines, you can send signals to groups also.

# db hosts set epoptes_lab1 group members 'pc-01 pc-02 pc-03' master pc-01
# signal-event client-wake epoptes_lab1

E-smith DB reference

The general configuration is stored in the client-manager key. Properties of such key are:

  • lastConfig: timestamp of the actual configuration set
  • ManagementKeyFile: management user's SSH public key
  • ManagementPrivateKeyFile: management user's SSH private key

All host-specific information are stored in the hosts db. For each host we have:

  • sshUser: ssh user used to connect to the host. This is set when SSH adoption is successful