Einfach ausgedrückt: Das Tekton-Pipelines-Projekt stellt Ressourcen im Kubernetes-Stil für die Deklaration von Pipelines im CI/CD-Stil bereit. Diese Ressourcen werden natürlich in YAML beschrieben und in einem Code-Repository gespeichert. Dieser Pipeline-as-Code-Ansatz bietet den Nutzen von Versionierung und Quellcodeverwaltung.
Tekton bietet eine Reihe von benutzerdefinierten Ressourcenerweiterungen für Kubernetes, die Pipelines und zugehörige Konzepte definieren. Im Folgenden sind die grundlegenden Bausteine von Tekton Pipeline aufgeführt:
- Aufgabe: Definiert eine Reihe von Aufbauschritten, z. B. das Kompilieren von Code, das Ausführen von Tests sowie das Erstellen und Bereitstellen von Bildern.
- Pipeline: Definiert die Aufgaben, aus denen eine Pipeline besteht.
- PipelineResource: Definiert ein Objekt, das eine Eingabe (z. B. ein Git-Repository) oder eine Ausgabe (z. B. ein Docker-Image) der Pipeline ist.
- PipelineRun: Definiert die Ausführung einer Pipeline. Diese Ressource verweist auf die Pipeline, die ausgeführt werden soll, und darauf, welche PipelineResource(s) als Eingabe und Ausgabe verwendet werden sollen.
Eine Tekton-Pipeline ist nicht nur Kubernetes-nativ, sondern kann auch für die Bereitstellung in jeder Umgebung (Kubernetes-Cluster, Cloud Foundry, virtuelle Maschinen (VM) usw.) verwendet werden, um die Anforderungen der modernen kontinuierlichen Bereitstellung (Continuous Delivery) zu erfüllen.
Einen genaueren Blick finden Sie in unserem Video „Was ist Tekton?“ :