Les étapes d'un pipeline
Étapes et jobs, ordre canonique, parallélisme, dépendances en graphe, conditions d'exécution, échecs bloquants ou tolérés, durée et chemin critique, sur de vrais fichiers .gitlab-ci.yml.
- 22 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Les chiffres
- Mises en situation
Quelques cartes du deck
Étape de pipeline : de quoi s'agit-il ?
Voir la réponse
Groupe de jobs qui s'exécutent en parallèle ; l'étape suivante ne démarre que si tous les jobs de la précédente ont réussi.
L'ordre classique est construire, tester, analyser, empaqueter, déployer : chaque étape suppose que la précédente a produit quelque chose de sain.
Ce fichier est refusé avec « chosen stage does not exist; available stages are .pre, build, test, .post ». Quelle est la correction ?
```yaml
stages:
- build
- test
deploy:
stage: deploy
script:
- ./deploy.sh`- Ajouter
deployà la listestages - Renommer le job
deployenrelease - Ajouter
needs: [test]au jobdeploy - Ajouter
allow_failure: trueau job
Voir la réponse
Ajouter
deployà la listestagesLe message liste les étapes connues :
deployn'en fait pas partie. Il suffit de la déclarer dansstages, aprèstest. Le nom du job,needsouallow_failurene changent rien à l'étape demandée, qui reste inconnue.- Ajouter
Dans un fichier GitLab CI, la liste … donne l'ordre des étapes, et chaque job y choisit la sienne avec le mot-clé ….
Voir la réponse
Dans un fichier GitLab CI, la liste stages donne l'ordre des étapes, et chaque job y choisit la sienne avec le mot-clé stage.
Sans
stage, un job va dans l'étapetestpar défaut ; un nom d'étape absent de la liste est une erreur de configuration.Job : de quoi s'agit-il ?
Voir la réponse
Unité de travail d'un pipeline : un script lancé sur un runner, rattaché à une étape, avec ses conditions, ses artefacts et son statut.
Une étape contient un ou plusieurs jobs ; c'est le job, pas l'étape, qui échoue ou réussit, qui s'exécute ou est sauté.