Que fait repository-freshness-checker ?
Utilise l'inventaire généré par review-repo full pour vérifier (en mode check-only) les liens Markdown publics, les EOL des images de base Docker et les plages de support des Azure Functions Extension Bundles. Utilisé pour une inspection complète ou une vérification de fraîcheur.
Prérequis
- review-repo full doit avoir été exécuté au préalable sur le dépôt cible pour générer le fichier d'inventaire (
_inventory.ymlpar défaut). - Python 3.7+ (ou l'environnement défini par l'inventaire) doit être disponible.
Utilisation
python -m fresh_check --inventory <chemin/vers/_inventory.yml>
Options
--inventory: (obligatoire) Chemin vers le fichier_inventory.ymlgénéré parreview-repo full.--check-links: (optionnel) Vérifie uniquement les liens Markdown publics.--check-docker: (optionnel) Vérifie uniquement les EOL des images de base Docker.--check-functions: (optionnel) Vérifie uniquement les plages de support des Azure Functions Extension Bundles.
Remarque : Si aucune option spécifique n'est fournie, les trois vérifications sont exécutées.
Résultats
- Liens Markdown : Signale les liens retournant un code d'erreur HTTP 4xx ou 5xx, ou dont le domaine ne répond pas.
- Images Docker : Compare les tags des images de base avec les dates d'EOL connues et alerte si la date d'EOL est dépassée ou approche.
- Azure Functions Extension Bundles : Vérifie que les plages de versions majeures utilisées dans
host.jsonsont bien sous support actif.
Format de sortie
Tous les résultats sont affichés dans la console et peuvent être formatés en JSON pour une intégration CI/CD.
{
"links": {
"total": 10,
"broken": 2,
"details": [
{"url": "https://example.com/broken", "status": 404, "file": "doc/readme.md"}
]
},
"docker": {
"images": [
{"image": "node:14", "eol_date": "2023-04-30", "status": "eol_passed"}
]
},
"functions": {
"bundles": [
{"bundle": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[2.*, 3.0.0)", "support": "ended"}
]
}
}
Configuration
Aucune variable d'environnement supplémentaire n'est requise ; le fichier d'inventaire contient toutes les informations nécessaires (links, docker_images, functions_bundles).
Exemples
# Vérification complète
python -m fresh_check --inventory ./output/_inventory.yml
# Vérification uniquement des liens
python -m fresh_check --inventory ./output/_inventory.yml --check-links
# Vérification uniquement de Docker et Functions
python -m fresh_check --inventory ./output/_inventory.yml --check-docker --check-functions