installmgr/README.md

74 lines
1.6 KiB
Markdown

# InstallMgr
Mini-app Flask remplaçant les CGI scripts de `scodoc.iutv`.
## API
- last_stable_version : numéro de la dernière release "officielle"
- upload_dump : réception (POST) d'un fichier de dump
- version?mode=${mode}\&release=${SCODOC_RELEASE}\&sn=${SN}"
mode = install | upgrade
release = current client release
sn = client serial number
returns: serial number
## Installation
1. Créer un utilisateur
```bash
adduser installmgr
```
2. Cloner le dépot
```bash
git clone https://scodoc.org/git/ScoDoc/installmgr.git /opt/installmgr
chown -R installmgr:installmgr /opt/installmgr
```
3. Créer l'environnement
```bash
su - installmgr
cd /opt/installmgr
python3 -m venv venv
source venv/bin/activate
pip install wheel
pip install -r requirements.txt
```
4. Créer les répertoires
```bash
mkdir incoming_dumps
# et éventuellement:
echo 1000 > counter
```
5. Configurer nginx
```nginx
location /scodoc-installmgr {
# forward application requests to the gunicorn server
proxy_pass http://localhost:8010;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_connect_timeout 120;
client_max_body_size 100m;
}
```
6. Installer le service
```bash
cp etc/installmgr.service /etc/systemd/system/
systemctl daemon-reload
systemctl start installmgr
```
7. Tester
Depuis un client extérieur,
```bash
http https://scodoc.org/scodoc-installmgr/last_stable_version
```