Skip to content

Puppet Relay

Challenge

Puppet needed to build Relay, an event-driven automation platform that could execute complex workflows triggered by cloud infrastructure events (alerts, deployments, policy violations). The platform required a workflow engine that was container-native, could handle arbitrary step graphs, and scaled from simple scripts to multi-step orchestrations.

Solution

Puppet chose Tekton as the workflow execution engine for Relay. Tekton’s Task and Step model mapped naturally to Relay’s concept of workflows — sequences of containerized actions triggered by events. The Kubernetes-native architecture meant Relay could leverage existing infrastructure without operating a separate orchestration layer.

Key Components Used

ComponentHow Puppet Uses It
PipelinesExecution engine for Relay workflows — each workflow maps to a Tekton Pipeline
TriggersEvent ingestion — cloud events (PagerDuty alerts, Datadog monitors, AWS CloudWatch) trigger Relay workflows via Tekton Triggers

Architecture Highlights

  • Event-to-workflow mapping — Relay translates incoming cloud events into Tekton PipelineRuns using custom TriggerTemplates
  • Container-per-step — Each workflow step runs in its own container, enabling polyglot actions (Python, Go, shell) in a single workflow
  • Community step library — Relay maintains a catalog of pre-built steps (Slack notifications, Jira tickets, AWS actions) that run as Tekton Tasks
  • Declarative workflows — Users define workflows in YAML, and Relay compiles them to Tekton Pipelines behind the scenes

Results

  • Rapid platform development — Building on Tekton avoided writing a custom workflow engine from scratch
  • Extensible step ecosystem — New automation capabilities ship as container images, not engine code
  • Reliable execution — Kubernetes-native scheduling handles retries, resource limits, and failure isolation
  • Event-driven scale — Tekton’s trigger model handles bursty event patterns (incident response, deployment notifications)

“Tekton let us focus on the automation experience instead of building plumbing. We got a production-grade workflow engine that speaks Kubernetes natively.” — Puppet Relay Engineering Team