.gitlab-ci.yml au projetLa version la plus simple possible pour python, qui executera les tests unitaires et retournera leurs résultats et leur couverture:
test:
script:
- nose2
test: nom du job (il peut y en avoir plusieurs)script: seule option requise pour exécuter le jobnose2: commande à exécuter pour lancer les tests (nose2 est un outil de tests pour python)
Plus d'infos sur la réation du .gitlab-ci.yml
Il faut ensuite installer un runner sur la machine qui exécutera les tests
Un runner peut être partagé (admin requis), ou spécifique à un projet. Il est apparemment déconseillé d'installer le runner sur la machine où tourne Gitlab
Plus d'infos sur l'installation de runners
On utilise ensuite la commande register du runner pour le brancher au serveur gitlab.
Les infos requises pour l'enregistrement se trouvent dans le menu settings du projet (CI Pipelines > Runners)
La méthode la plus simple consiste à lui donner l'executeur shell.
Les commandes listées dans le fichier .gitlab-ci.yml seront executées, et les tests seront considérés
comme réussis si chaque ligne retourne un code exit 0.
L'idéal est d'utiliser Docker pour importer une image Docker. Le fichier .gitlab-ci.yml ressemblera alors à:
# Official framework image. Look for the different tagged releases at:
# https://hub.docker.com/r/library/python
image: python:3.6
#image: python:latest
before_script:
- python -V # Affiche la version de python
- pip install cov-core # Installe les librairies nécessaires
- pip install nose2
- pip install coveralls
# This folder is cached between builds
cache:
paths:
- ~/.cache/pip/
test:
script:
- nose2