libreschool-client-manager/README.md

87 lines
1.6 KiB
Markdown
Raw Permalink Normal View History

2019-04-29 19:10:07 +00:00
# libreschool-client-manager
2019-05-05 21:42:20 +00:00
This software uses Ansible Playbooks to configure all connected clients.
## Available Events
Adopt a machine (which should already exist in the *hosts* db):
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-adopt pc-99 username password
```
2019-05-05 21:42:20 +00:00
Reboot a machine:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-reboot pc-01
```
2019-05-05 21:42:20 +00:00
Reboot all machines:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-reboot-all
```
2019-05-05 21:42:20 +00:00
Force reconfiguration of a machine:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-reconfigure pc-02
```
2019-05-05 21:42:20 +00:00
Force reconfiguration of all machines:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-reconfigure-all
```
2019-05-05 21:42:20 +00:00
Shutdown a machine:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-shutdown pc-02
```
2019-05-05 21:42:20 +00:00
Shutdown all machines:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-shutdown-all
```
2019-05-05 21:42:20 +00:00
Update source configuration timestamp:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-update-lastconfig
```
2019-05-05 21:42:20 +00:00
Wakeup a machine:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-wake pc-02
```
2019-05-05 21:42:20 +00:00
Wakeup all machines:
2020-03-07 19:53:59 +00:00
```bash
# signal-event client-wake-all
```
2019-05-05 21:42:20 +00:00
### Support for a group of machines
2020-04-01 23:22:25 +00:00
2019-05-05 21:42:20 +00:00
If you defined a group of machines, you can send signals to groups also.
2020-03-07 19:53:59 +00:00
```bash
# db hosts set epoptes_lab1 group members 'pc-01 pc-02 pc-03' master pc-01
# signal-event client-wake epoptes_lab1
```
2019-05-05 21:42:20 +00:00
## E-smith DB reference
2020-04-01 23:22:25 +00:00
2019-05-05 21:42:20 +00:00
The general configuration is stored in the *client-manager* key. Properties of such key are:
2020-03-07 19:53:59 +00:00
2019-05-05 21:42:20 +00:00
* *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:
2020-03-07 19:53:59 +00:00
2019-05-05 21:42:20 +00:00
* *sshUser*: ssh user used to connect to the host. This is set when SSH adoption is successful