Paolo Asperti
91feefde8c
All checks were successful
continuous-integration/drone/push Build is passing
|
||
---|---|---|
root | ||
.drone.yml | ||
.editorconfig | ||
.gitignore | ||
createlinks.pl | ||
libreschool-client-manager.spec | ||
LICENSE | ||
README.md |
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