doc-locale/fr-fr/ci/pipeline_editor/_index.md
{{< details >}}
{{< /details >}}
L'éditeur de pipeline est l'emplacement principal pour modifier la configuration GitLab CI/CD dans le fichier .gitlab-ci.yml à la racine de votre dépôt. Pour accéder à l'éditeur, rendez-vous dans Version > Éditeur de pipeline.
Depuis la page de l'éditeur de pipeline, vous pouvez :
include.include.include ajoutée.Lorsque vous utilisez l'éditeur de pipeline, la syntaxe de configuration du pipeline est continuellement validée par rapport au schéma de pipeline CI/CD GitLab. La syntaxe de votre YAML CI/CD ainsi que certaines validations logiques de base sont vérifiées.
Le résultat de cette validation s'affiche en haut de la page de l'éditeur. Si la validation échoue, cette section affiche un conseil pour vous aider à résoudre le problème.
{{< history >}}
{{< /history >}}
Pour tester la validité de votre configuration GitLab CI/CD avant de committer les modifications, utilisez l'outil de validation de l'éditeur de pipeline. Cet outil simule la création d'un pipeline suite à un événement Git push, et peut aider à résoudre les problèmes de logique, notamment les dépendances de jobs incorrectes avec rules et needs :
Le pipeline simulé utilise la configuration de pipeline existante depuis l'onglet Éditer.
Pour valider un extrait YAML CI/CD sans l'ajouter à l'onglet Éditer, utilisez plutôt l'outil CI Lint.
{{< history >}}
pipeline_editor_file_tree. Désactivé par défaut.{{< /history >}}
Vous pouvez consulter la configuration ajoutée avec le mot-clé include dans l'éditeur de pipeline. Dans le coin supérieur droit, sélectionnez l'arborescence de fichiers ({{< icon name="file-tree" >}}) pour afficher la liste de tous les fichiers de configuration inclus. Les fichiers sélectionnés s'ouvrent dans un nouvel onglet pour consultation.
Pour afficher une visualisation de votre configuration .gitlab-ci.yml, dans votre projet, rendez-vous dans Version > Éditeur de pipeline, puis sélectionnez l'onglet Visualiser. La visualisation affiche toutes les étapes et tous les jobs. Toutes les relations needs sont représentées par des lignes reliant les jobs entre eux, montrant la hiérarchie d'exécution.
Survolez un job pour mettre en évidence ses relations needs :
Si la configuration ne comporte aucune relation needs, aucune ligne n'est tracée, car chaque job dépend uniquement de la réussite de l'étape précédente.
{{< history >}}
{{< /history >}}
Pour afficher la configuration CI/CD entièrement développée sous la forme d'un fichier combiné, accédez à l'onglet Configuration complète de l'éditeur de pipeline. Cet onglet affiche une configuration développée où :
include est copiée dans la vue.extends s'affichent avec la configuration étendue fusionnée dans le job.!reference sont également remplacés par la configuration liée.L'utilisation des tags !reference peut entraîner une configuration imbriquée qui s'affiche avec plusieurs tirets (-) en début de ligne dans la vue développée. Ce comportement est attendu, et les tirets supplémentaires n'affectent pas l'exécution du job. Par exemple, cette configuration et sa version entièrement développée sont toutes deux valides :
Fichier .gitlab-ci.yml :
.python-req:
script:
- pip install pyflakes
.rule-01:
rules:
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^feature/
when: manual
allow_failure: true
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME
.rule-02:
rules:
- if: $CI_COMMIT_BRANCH == "main"
when: manual
allow_failure: true
lint-python:
image: python:latest
script:
- !reference [.python-req, script]
- pyflakes python/
rules:
- !reference [.rule-01, rules]
- !reference [.rule-02, rules]
Configuration développée dans l'onglet Configuration complète :
".python-req":
script:
- pip install pyflakes
".rule-01":
rules:
- if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^feature/"
when: manual
allow_failure: true
- if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME"
".rule-02":
rules:
- if: $CI_COMMIT_BRANCH == "main"
when: manual
allow_failure: true
lint-python:
image: python:latest
script:
- - pip install pyflakes # <- The extra hyphens do not affect the job's execution.
- pyflakes python/
rules:
- - if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^feature/" # <- The extra hyphens do not affect the job's execution.
when: manual
allow_failure: true
- if: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME" # <- No extra hyphen but aligned with previous rule
- - if: $CI_COMMIT_BRANCH == "main" # <- The extra hyphens do not affect the job's execution.
when: manual
allow_failure: true
Le formulaire de commit apparaît en bas de chaque onglet de l'éditeur, afin que vous puissiez committer vos modifications à tout moment.
Lorsque vous êtes satisfait de vos modifications, ajoutez un message de commit descriptif et saisissez une branche. Le champ de branche est défini par défaut sur la branche par défaut de votre projet.
Si vous saisissez un nouveau nom de branche, la case à cocher Démarrer une nouvelle merge request avec ces modifications apparaît. Sélectionnez-la pour démarrer un nouveau merge request après avoir commité les modifications.
L'éditeur de pipeline est basé sur l'éditeur Monaco, qui dispose de plusieurs fonctionnalités d'accessibilité, notamment :
| Fonctionnalité | Raccourci sur Windows ou Linux | Raccourci sur macOS | Détails |
|---|---|---|---|
| Liste des commandes de navigation au clavier | <kbd>F1</kbd> | <kbd>F1</kbd> | Une liste de commandes qui facilitent l'utilisation de l'éditeur sans souris. |
| Capture de tabulation | <kbd>Control</kbd>+<kbd>m</kbd> | <kbd>Control</kbd>+<kbd>Shift</kbd>+<kbd>m</kbd> | Activez la capture de tabulation pour accéder à l'élément focalisable suivant sur la page au lieu d'insérer un caractère de tabulation. |
Unable to validate CI/CD configuration. {#unable-to-validate-cicd-configuration-message}Ce message est dû à un problème de validation de la syntaxe dans l'éditeur de pipeline. Cela peut se produire lorsque GitLab est incapable de communiquer avec le service qui valide la syntaxe.
Les informations contenues dans ces sections peuvent ne pas s'afficher correctement :
Vous pouvez continuer à travailler sur votre configuration CI/CD et committer les modifications effectuées sans aucun problème. Dès que le service redevient disponible, la validation de la syntaxe devrait s'afficher immédiatement.