You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+29-9Lines changed: 29 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,16 +4,17 @@ LSIT est un outil d'inventaire et de cartographie d'infrastructure système dév
4
4
5
5
Ce projet met en pratique les concepts d'Infrastructure as Code (IaC) et de développement d'outils d'administration en ligne de commande (CLI).
6
6
7
-
## Fonctionnalités (v0.3.0)
7
+
## Fonctionnalités (v0.3.1)
8
8
9
9
-**Auto-détection** : Récupération du nom d'hôte, de la RAM totale et du modèle de CPU.
10
10
-**Audit d'activité** : Capture des processus actifs et cartographie de l'arborescence `/home/vagrant`.
11
11
-**Audit de sécurité** : Détection des ports réseau en écoute (`ss -tuln`) et identification des utilisateurs avec privilèges sudo.
12
12
-**Interopérabilité** : Exportation des rapports au format texte brut (`.txt`) ou structuré (`.json`).
13
-
-**Tableau de bord web** : Visualisation des données en temps réel via un serveur HTTP intégré (port 8080), lancé en arrière-plan grâce au multithreading.
13
+
-**Tableau de bord web** : Visualisation des données en temps réel via un serveur Flask intégré (port 8080), lancé en arrière-plan grâce au multithreading.
14
14
-**Menu interactif SSH** : Interface de navigation accessible directement depuis la session SSH.
15
15
-**Horodatage** : Traçabilité précise de l'heure de l'audit.
16
16
-**Version dynamique** : La version est lue automatiquement depuis le `CHANGELOG.md`.
17
+
-**Automatisation Cron** : Génération quotidienne automatique d'un rapport JSON à minuit.
17
18
18
19
## Prérequis
19
20
@@ -46,9 +47,11 @@ L'environnement est entièrement automatisé. L'outil s'installe globalement sur
46
47
vagrant ssh
47
48
```
48
49
50
+
> Le port `8080` de la VM est automatiquement redirigé vers le port `8081` de la machine hôte.
51
+
49
52
## Utilisation
50
53
51
-
Une fois connecté en SSH, la commande `lsit` est disponible globalement sur le système.
54
+
Une fois connecté en SSH, le menu interactif se lance automatiquement. La commande `lsit` est également disponible globalement sur le système.
52
55
53
56
```bash
54
57
# Lancer le menu interactif (défaut)
@@ -71,7 +74,7 @@ lsit -v
71
74
72
75
```text
73
76
===================================
74
-
LSIT v0.3.0 - 2026-03-25
77
+
LSIT v0.3.1 - 2026-03-26
75
78
===================================
76
79
1. Générer un rapport TXT
77
80
2. Générer un rapport JSON
@@ -82,7 +85,7 @@ lsit -v
82
85
83
86
## Tableau de bord web
84
87
85
-
Le tableau de bord web est accessible sur `http://localhost:8080` après le lancement via `lsit --serve` ou l'option 3 du menu interactif.
88
+
Le tableau de bord web est accessible sur `http://localhost:8081` (port forwardé depuis la VM) après le lancement via `lsit --serve` ou l'option 3 du menu interactif.
86
89
87
90
Il affiche en temps réel les informations suivantes :
88
91
@@ -103,7 +106,7 @@ Pour arrêter le serveur, tapez `exit` ou `end` dans le terminal.
103
106
### TXT (`rapport_lsit.txt`)
104
107
105
108
```text
106
-
Date de l'audit : 2026-03-25 10:30:00
109
+
Date de l'audit : 2026-03-26 10:30:00
107
110
La cible a été identifiée. Nom de la machine : debian-vm
108
111
Mémoire totale : MemTotal: 2048000 kB
109
112
Modèle du CPU : Intel(R) Core(TM) i7-...
@@ -131,7 +134,7 @@ Netid State Local Address:Port ...
131
134
132
135
```json
133
136
{
134
-
"date": "2026-03-25 10:30:00",
137
+
"date": "2026-03-26 10:30:00",
135
138
"machine": "debian-vm",
136
139
"ram": "MemTotal: 2048000 kB",
137
140
"cpu": "Intel(R) Core(TM) i7-...",
@@ -142,15 +145,32 @@ Netid State Local Address:Port ...
142
145
}
143
146
```
144
147
148
+
## CI/CD — Versioning automatique
149
+
150
+
Le projet utilise un workflow GitHub Actions (`versionning.yml`) pour gérer le versioning sémantique automatiquement à chaque push sur `main`.
Le workflow génère et commit automatiquement le `CHANGELOG.md`, puis crée et pousse le tag Git correspondant. Un mode **dry-run** est disponible via `workflow_dispatch` pour prévisualiser les changements sans les appliquer.
160
+
145
161
## Structure du projet
146
162
147
163
```text
148
164
Linux-System-Inventory-Tool/
165
+
├── .github/
166
+
│ └── workflows/
167
+
│ └── versionning.yml # Workflow CI/CD de versioning sémantique
149
168
├── lsit.py # Script principal
150
169
├── Vagrantfile # Configuration de la VM Debian 12
151
170
├── CHANGELOG.md # Historique des versions
152
171
├── templates/
153
-
│ ├── dashboard.html # Template du tableau de bord web
172
+
│ └── dashboard.html # Template du tableau de bord web (Flask)
0 commit comments