En termes simples, le projet Tekton Pipelines fournit des ressources de type Kubernetes pour déclarer des pipelines de type CI/CD. Ces ressources sont naturellement décrites en yaml et stockées dans un référentiel de code. Cette approche de pipeline en tant que code offre les avantages de la gestion des versions et du contrôle des sources.
Tekton fournit un ensemble d’extensions de ressources personnalisées à Kubernetes qui définissent des pipelines et des concepts connexes. Voici les éléments de base du pipeline Tekton :
- Tâche : définit un ensemble d'étapes de compilation, telles que la compilation du code, l'exécution de tests, ainsi que la création et le déploiement d'images.
- Pipeline : définit l’ensemble des tâches qui composent un pipeline.
- PipelineResource : définit un objet qui est une entrée (comme un référentiel Git) ou une sortie (comme une image Docker) du pipeline.
- PipelineRun : définit l’exécution d’un pipeline. Cette ressource fait référence au pipeline à exécuter et aux ressources de pipeline à utiliser comme entrée et sortie.
En plus d'être natif de Kubernetes, un pipeline Tekton peut être utilisé pour déployer dans n'importe quel environnement (cluster Kubernetes, Cloud Foundry, machines virtuelles (VMs), etc.) et les tâches du pipeline sont exécutées en toute sécurité de manière isolée, offrant ainsi la possibilité de répondre de manière flexible aux besoins d’une distribution moderne en continu.
Pour en savoir plus, regardez notre vidéo, « Qu’est-ce que Tekton ? » :