Open ColinPitrat opened 4 years ago
Il y a déjà plusieurs choses en place, mais c'est un peu "fait maison".
Pour tester plein de choses, il y a le script testing.sh
Il fait un petit jeu de
git stash
git clone
[travail dans le nouveau répertoire]
git stash apply
pour être sûr qu'il compile tout dans un répertoire sans 'aux', 'idx', etc.
Il teste entre autres :
Il y a même une fonction pour tester les liens morts dans la biblio, mais finalement on a décidé de ne plus s'en inquiéter. On en a parlé ici.
pytex
fait un joli hack d'un fichier source pour indiquer le commit courrant dans la source LaTeX avant la compilation.
Le sha1 du commit arrive sur la page 1 du PDF.
Là c'est du "organisation personnelle". J'ai 3 répertoirres :
Seul 'master' est connecté à github.
Ensuite j'ai un script 'deploy.sh' qui :
J'aime bien avoir un peu de souplesse par rapport aux tests. Par exemple pendant que je suis en train de travailler sur quelque chose, je veux pouvoir publier les résultats intermédiaires, même si je sais qu'il y a encore des références vers le futur.
PS : j'ai publié un patch sur pytex
pour ajouter le fichier manquant.
pytex marche pour moi maintenant, merci. Est-ce que l'utilisation de travis pour la publication automatique sur GitHub (ou ailleurs, le sftp devrait pouvoir se faire: https://docs.travis-ci.com/user/deployment/custom/) te parait intéressante du coup ou pas ? Si oui je peux peaufiner ma branche travis et envoyer une PR. Sinon on peut fermer le ticket :-)
Oui, je crois qu'on peut fermer. Pour l'instant, ma chaine fonctionne bien ... en tout cas chez moi.
En tout cas , merci de t'en préoccuper. Ça sera peut-être utile un jour.
Le HOTT book, qui est certainement un modèle à suivre, utilise effectivement Travis : https://github.com/HoTT/book/wiki/Nightly-Builds https://homotopytypetheory.org/book/
Avez-vous déjà étudié la possibilité d'utiliser un outil d'intégration continue (Travis, Circle-CI, Appveyor ...) pour générer les PDFs automatiquement à chaque push/PR, faire d'éventuelles vérifications et publier les PDFs dans la page release de github?
J'ai fait un essai avec Travis: Les builds: https://travis-ci.org/ColinPitrat/mazhe/builds La page de releases: https://github.com/ColinPitrat/mazhe/releases
Un avantage pourrait être d'ajouter un certain nombre de vérifications (comme les références vers l'avant, que je n'ai pas réussi à faire fonctionner pour l'instant à cause de https://github.com/LaurentClaessens/pytex/issues/1).