sylvain 2ef7ec175e test: add edge case tests for unicode, empty repos, malformed API
Add tests for unicode descriptions, repos with no commits and no
release, malformed JSON responses, HTML responses, control characters
in names, empty and very long descriptions.

fixes #13

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 19:16:06 +01:00
2026-03-10 18:21:33 +01:00
2026-03-10 18:21:33 +01:00

gitea-dashboard

Dashboard CLI affichant en une commande l'état de tous les repos d'une instance Gitea : issues ouvertes, dernières releases et progression des milestones.

Prérequis

  • Python >= 3.10
  • Accès à une instance Gitea avec un token API

Installation

pip install -e .

Configuration

Le dashboard se configure via deux variables d'environnement :

Variable Description Défaut
GITEA_URL URL de l'instance Gitea http://192.168.0.106:3000
GITEA_TOKEN Token API Gitea (requis)

Pour créer un token : Gitea > Settings > Applications > Generate Token.

Exemple de configuration dans votre shell :

export GITEA_URL=https://gitea.tsmse.fr
# Définir GITEA_TOKEN avec la valeur obtenue depuis Gitea > Settings > Applications

Usage

gitea-dashboard
# ou
python -m gitea_dashboard

Filtrage des repos

L'option --repo/-r filtre les repos à afficher (sous-chaîne, insensible à la casse). L'option --exclude/-x exclut des repos de l'affichage. Les deux options sont cumulables et répétables.

# Afficher uniquement les repos contenant "api"
gitea-dashboard --repo api

# Afficher les repos contenant "dashboard" ou "monitor"
gitea-dashboard -r dashboard -r monitor

# Exclure les repos contenant "archive" ou "test"
gitea-dashboard --exclude archive --exclude test

# Combiner inclusion et exclusion
gitea-dashboard --repo projet --exclude archive

Tri des repos

L'option --sort/-s trie les repos selon un critère :

Valeur Description
name Ordre alphabétique (défaut)
issues Nombre d'issues décroissant
release Date de release décroissante
activity Date du dernier commit décroissante
# Trier par nombre d'issues (les plus actifs en premier)
gitea-dashboard --sort issues

# Trier par activité récente
gitea-dashboard -s activity

Export JSON

L'option --format json exporte les données du dashboard au format JSON au lieu de l'affichage tabulaire. Utile pour intégrer le dashboard dans d'autres outils.

gitea-dashboard --format json
gitea-dashboard --format json > export.json

Exemple de sortie

                       Gitea Dashboard
┏━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┓
┃ Repo            ┃ Issues ┃ Release              ┃ Dernier commit ┃
┡━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━┩
│ mon-projet      │      3 │ v1.2.0 (il y a 2j)   │ il y a 3h      │
│ autre-repo      │      0 │ —                    │ il y a 5j      │
└─────────────────┴────────┴──────────────────────┴────────────────┘

Milestones
  mon-projet / v2.0 : 3/5 (60%)  [échéance dépassée]

Développement

# Installer avec les dépendances de développement
pip install -e ".[dev]"

# Lancer les tests
pytest

# Vérifier le style
ruff check src/ tests/

Licence

Usage personnel.

Description
CLI Python dashboard for Gitea repos status (issues, releases, milestones)
Readme 429 KiB
v1.4.0 Latest
2026-03-13 04:21:29 +01:00
Languages
Python 100%