**Tekton** is a [[Kubernetes]]-native CI/CD framework that defines build and deployment pipelines as Kubernetes custom resources. Everything — pipeline steps, pipeline runs, triggers, workspaces — is a Kubernetes object, stored in etcd and manageable with `kubectl`. --- ### First Principle: CI/CD pipelines are just workloads. They should run on the same platform as everything else. Traditional CI systems (Jenkins, CircleCI) run on separate infrastructure and need separate management. Tekton runs inside [[Kubernetes]] — pipelines are pods, pipeline state is in etcd, and scaling is handled by the Kubernetes scheduler. No separate CI servers to maintain. --- ### Key Considerations - **Core Primitives**: Tasks (a series of container-based steps), Pipelines (a DAG of Tasks), PipelineRuns (a pipeline execution), TaskRuns (a task execution), Workspaces (shared volumes between tasks). - **Trigger-Based**: Tekton Triggers listen to webhooks (from [[Gitea]], GitLab, GitHub) and create PipelineRuns automatically on push or pull request events. - **Cloud-Native Build**: Tekton integrates with Kaniko and Buildah for building container images inside Kubernetes without privileged Docker daemons. - **Tekton Catalog**: A community library of reusable Tasks — `git-clone`, `docker-build`, `helm-upgrade`, `kubectl-apply`. - **Integration with [[ArgoCD]]**: Tekton handles CI (build + test + push image); [[ArgoCD]] handles CD (deploy to cluster from Git). Together they form a complete GitOps pipeline. --- ### How It Fits ``` [[Gitea]] (source code, webhooks) → Tekton (build, test, push container image) → Container registry → [[ArgoCD]] (deploys to [[Kubernetes]]) ``` [[Kubernetes]] | [[ArgoCD]] | [[Gitea]] | [[Open Source Hyperscaler MoC]]