DevOps Pokročilý
Tekton — Cloud-Native CI/CD Pipelines¶
TektonCI/CDKubernetesCloud Native 6 min čtení
Tekton jako Kubernetes-nativní CI/CD framework. Tasks, Pipelines, Triggers a integrace s ekosystémem.
Co je Tekton¶
Tekton je open-source framework pro CI/CD postavený na Kubernetes CRDs. Každý krok pipeline běží jako kontejner v podu.
- Task — sekvence kroků (steps) v jednom podu
- Pipeline — orchestrace tasků s dependencies
- PipelineRun — instance běhu pipeline
- Trigger — spuštění pipeline na základě eventu
Task Definition¶
apiVersion: tekton.dev/v1
kind: Task
metadata:
name: build-and-push
spec:
params:
- name: IMAGE
type: string
workspaces:
- name: source
steps:
- name: build
image: gcr.io/kaniko-project/executor:latest
args:
- --destination=$(params.IMAGE)
- --context=$(workspaces.source.path)
- --cache=true
Pipeline¶
apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
name: ci-pipeline
spec:
workspaces:
- name: shared-workspace
tasks:
- name: fetch-source
taskRef:
name: git-clone
workspaces:
- name: output
workspace: shared-workspace
- name: build
taskRef:
name: build-and-push
runAfter: [fetch-source]
params:
- name: IMAGE
value: registry.example.com/app:latest
workspaces:
- name: source
workspace: shared-workspace
Triggers¶
Tekton Triggers spouští pipeline na základě webhooků.
apiVersion: triggers.tekton.dev/v1beta1
kind: EventListener
metadata:
name: github-listener
spec:
triggers:
- name: github-push
interceptors:
- ref:
name: github
params:
- name: eventTypes
value: [push]
bindings:
- ref: github-binding
template:
ref: pipeline-template
Shrnutí¶
Tekton přináší Kubernetes-nativní CI/CD s plnou izolací kroků v kontejnerech. Ideální pro týmy, které chtějí CI/CD jako součást K8s ekosystému.
Potřebujete pomoct s implementací?¶
Náš tým má zkušenosti s návrhem a implementací moderních architektur. Rádi vám pomůžeme.