mse-tekton/doc/tekton.md
2024-03-29 11:17:53 +01:00

2.8 KiB

Tekton CI

Webhook, Événements et Triggers

Un webhook Gitea configuré, envoi des événements sur un endpoint défini par en EventListener.

Cet EventListener, selon les filtres et overlays définis, peut alors déclencher des TriggerTemplates (configuré selon un TriggerBinding), qui alors configurerons a leur tour des PipelineRun, qui exécuterons des Pipelines, qui configurerons des TaskRun, qui alors exécuterons des Task.

flowchart LR
    A[Webhook Event] --> B(EventListener
    filter et overlays)
    B --> D(Pipeline Binding)
    B --> E(Pipeline Template)
    D --> E
    E --> F(PipelineRun)
    F --> G(Pipeline)


Les Webhooks, événements et triggers dans Tekton CI permettent de déclencher des actions automatisées en réponse à des événements spécifiques dans un système de gestion de code source.

Filter et overlay

Le filter permet de déclencher les Triggers pour les événements répondant au critère du filtre

Les overlays permettent de récupérer une valeur de la requête pour la passer en paramètre

Workspaces

Les workspaces sont des volumes qui sont monté à la demande dans les conteneurs des différentes Task dans le répertoire /workspace.

Exemples

Pipelines

Les Pipeline dans Tekton CI décrivent une série d'étapes ou de tâches à exécuter pour automatiser un processus de déploiement ou de test logiciel. Un PipelineRun permet d'exécuter un Pipeline en lui donnant des paramètres

L'option runAfter: permet de définir si une Task doit s'exécuter une fois qu'une autre Task est terminé. Si runAfter n'est par défini, la Task sera exécuté en parallèle

flowchart LR
    G(PipelineRun) --> H(Pipeline)
    H --> I(TaskRun)
    I --> J(Task)

Exemples

Tasks

Les Task dans Tekton CI représentent des actions individuelles à effectuer dans un pipeline. Elles peuvent inclure des opérations telles que la construction, le déploiement, les tests, etc. Une TaskRun permet d'exécuter une Task en lui donnant des paramètres. Les Task vont alors enchainer les différentes steps. Les Task peuvent émettre des résultats, qui seront alors accessible par d'autres Task

L'option OnError permet de déclencher un évenement à la suite d'une erreur d'une step. On peut alors s'en servir pour passer à la step suivante, sans bloquer l'exécution de la Task`.

Exemple