Richard Dern

Drone-CI et htmltest pour traquer les liens morts dans Hugo

Voilà un excellent exemple de ce pourquoi j’ai une stack de publication qui peut sembler compliquée au premier abord mais qui, au final, permet de faire plein de choses sympathiques. Si vous voulez en savoir plus, je vous invite à lire les autres articles que j’ai écrit à ce sujet :

Rapidement : j’ai Drone-CI qui s’occupe de compiler et publier un site statique réalisé avec Hugo (le site que vous êtes en train de visiter). Je vais lui demander d’en faire un peu plus : parcourir le site à la recherche de liens morts et bloquer la mise en production tant que je ne les ai pas corrigés.

Il suffit de rajouter les quelques lignes suivantes dans le fichier .drone.yml du projet, dans la section steps :

  - name: test_links        # Nom de l'étape de la CI
    image: wjdp/htmltest    # Image docker utilisée
    commands:
      - htmltest public/    # Dans Drone-CI, le site Hugo compilé se trouve dans public/

En plus de vérifier la disponibilité des URLs, htmltest peut (et va) effectuer d’autres tests utiles et pertinents. Il est possible de configurer l’application plus en détails, mais le comportement de base de htmltest me convient bien.

Un petit « soucis » à noter : cette étape doit survenir après le déploiement en production, faute de quoi les liens vers une page nouvellement créée mais pas encore déployée seront considérés comme morts. On n’empêchera donc pas les liens morts d’arriver en production, mais au moins la CI pourra nous alerter de leur présence.

Évidemment, ça augmente quelque peu le temps de mise en production (je passe de 35 secondes à 3 minutes), mais au moins, plus de liens morts, en seulement quatre lignes de conf… Simple, pour une fois !

Soutenir le site

Si mon travail vous a été utile, vous pouvez contribuer aux frais qui permettent au site de rester en ligne, sans publicité intrusive.

Le paiement se fait sur la plateforme choisie : je ne reçois ni ne stocke vos données bancaires.

  • Ko-fi

    Plateforme spécialisée dans le soutien aux créateurs, adaptée aux dons ponctuels sans engagement.

  • PayPal

    Service de paiement très répandu, pratique si vous l'utilisez déjà.

À quoi servent les dons ?

Taxonomies

Tags
Véhicules

Pour aller plus loin

Articles relatifs

Historique des modifications

  1. Suppression des commentaires
  2. Bloc "Pour aller plus loin"
  3. Ajustement des mots-clés
  4. Ajout d'aliases
  5. Récupération d'articles d'archives
  6. Mise à jour des dates/heures dans les articles
  7. Intégration des liens lemmy
  8. Correction des données météo
  9. Ajout de données météo
  10. Initial commit