Skip to content

Latest commit

 

History

History
23 lines (18 loc) · 2.51 KB

README.md

File metadata and controls

23 lines (18 loc) · 2.51 KB

Tekton Pipelines Modules

maintained by dmikalova terraform tekton kubernetes

This repo contains Terraform modules for managing Tekton Pipelines in Kubernetes.

See dmikalova/infrastructure for a fully configured example deployed with Terragrunt.

Features

  • Create opinionated and reusable per language CI/CD pipelines.
  • Current workflow is for JavaScript web apps. Workflows for Go, Terraform modules, and git-xargs are planned.
  • Includes reusable pipelines with tasks for testing, building, and deployment.
  • Includes tasks to run passed in scripts:
    • Tests with unit test, end-to-end test, lint, format, and version tag generation steps.
    • Container builds with Kaniko.
    • GitOps deployments done by updating an infrastructure repo with the version tag, committing and pushing the changes, and running Terragrunt plan and apply.
  • Modules wrapping Tekton CRDs allow for complete customization. Wrappers are fully typed in Terraform with no YAML.
  • Webhook endpoints are exposed through Traefik Ingress Routes. Webhooks URLs and tokens are output in Terraform Remote State. This can be consumed by other Terraform modules that manage repo webhooks.
  • Janitor cronjob automatically cleans up old and failed Tekton Runs, releasing Kubernetes Persistent Volume Claims.