Jobs pipeline¶
Les jobs sont lancés automatiquement par gitea; il existe également pour certains projets un job projectname configuré pour une exécution quotidienne.
Les jobs utilisent le même Jenkinsfile, placé à la racine du dépôt git du projet projectname.
Jenkinsfile :
- utilise
noxpour exécuter les tests (qui lui même utilise pytest et pylint) - build les paquets debian (si il est appelé par le job
projectname) - publie les rapports de tests, coverage, pylint
- notifie les résultats de build par mail (par https://wiki.jenkins.io/display/JENKINS/Mailer)
Une libraire est utilisé pour éviter la redondance entre les Jenkinsfile des différents projets (http://git.entrouvert.org/jenkins-lib.git/).
Documentation jenkins pipeline : https://jenkins.io/doc/book/pipeline/
Documentation jenkins shared library : https://jenkins.io/doc/book/pipeline/shared-libraries/
Job projectname¶
- job de type
pipeline - ne s'exécute que sur la branche main (déclenchement une fois par jour)
- notifie les résultats de build par mail à une liste de diffusion : admin+jenkins-projectname@entrouvert.com