logo
Alauda DevOps Pipelines Docs
logo
Alauda DevOps Pipelines Docs
Navigation

Overview

Introduction
Architecture
Feature Overview
Lifecycle Policy
Quick Start
Release Notes

Concepts

TektonConfig
TektonPipeline
Install
Upgrade

Configure

Adjusting Optional Configuration Items of Subcomponents
Configuring Resource Quotas for Pipeline Components
Pod Template Configuration Guide
Regular Cleanup of TaskRun and PipelineRun Resources

How To

Deploying tekton-pipelines in a global cluster through TektonConfig

Pipelines

Introduction
Architecture

Concepts

Tasks
TaskRuns
Pipelines
PipelineRuns
StepActions
Resolvers
Workspaces
Pod Templates
Quick Start
permissions

how_to

Adjust Dockerfile for Building Task-Compatible Custom Images

trouble_shooting

Failed to create pod due to config error when using custom images in Tekton

Triggers

Introduction
Architecture

Core Concepts

Core Concepts
EventListener
Trigger
Interceptor
TriggerBinding
TriggerTemplate
Quick Start

How To

Setup EventListener
Use GitLab Event Triggers
Create TriggerTemplate

Troubleshooting

The Pipeline is not automatically triggered
Permission Description

Hub

Introduction
Architecture

Core Concepts

Concepts
Understanding Tekton Hub
Permission Description

Configure

Tekton Hub Configuration
Adding Custom Catalogs

Tutorials

Creating a Custom Catalog
Writing Tasks for Tekton Hub
Writing Pipelines for Tekton Hub

Results

Introduction
Architecture

Concepts

Core Concepts
Tekton Results
Quick Start
permissions

Configure

Database Configuration

Supply Chain Security

Introduction
Architecture

Concepts

Core Concepts
Understanding Tekton Chains
Quick Start

API Reference

Introduction

Kubernetes APIs

Pipelines

Pipeline [tekton.dev/v1]
Task [tekton.dev/v1]
PipelineRun [tekton.dev/v1]
TaskRun [tekton.dev/v1]
ClusterTask [tekton.dev/v1]
Run [tekton.dev/v1]
CustomRun [tekton.dev/v1]
StepAction [tekton.dev/v1]
VerificationPolicy [tekton.dev/v1alpha1]
ResolutionRequest [resolution.tekton.dev/v1beta1]

Triggers

Trigger [triggers.tekton.dev/v1beta1]
TriggerTemplate [triggers.tekton.dev/v1beta1]
EventListener [triggers.tekton.dev/v1beta1]
TriggerBinding [triggers.tekton.dev/v1beta1]
Interceptor [triggers.tekton.dev/v1alpha1]
ClusterTriggerBinding [triggers.tekton.dev/v1beta1]
ClusterInterceptor [triggers.tekton.dev/v1alpha1]

Operator

TektonConfig [operator.tekton.dev/v1alpha1]
TektonInstallerSet [operator.tekton.dev/v1alpha1]
TektonPipeline [operator.tekton.dev/v1alpha1]
TektonTrigger [operator.tekton.dev/v1alpha1]
TektonChain [operator.tekton.dev/v1alpha1]
TektonHub [operator.tekton.dev/v1alpha1]
TektonResult [operator.tekton.dev/v1alpha1]
TektonInstallerSet [operator.tekton.dev/v1alpha1]
OpenShift Pipelines as Code [operator.tekton.dev/v1alpha1]

Advanced APIs

Results

Introduction to API Usage
Results List
Results Details
Result records List
Result logs List
📝 Edit this page on GitHub
Previous PageIntroduction
Next PageCore Concepts

#Architecture

#TOC

#Architecture Overview

Tekton Triggers is a Kubernetes-based event listening and processing system that enables the automatic triggering of CI/CD pipelines by converting external events (such as Git commits, image pushes, etc.) into Kubernetes resources.

Tekton Triggers Architecture Diagram

#Core Components

#1. EventListener

The EventListener is the entry point of the entire system. It:

  • Creates a Kubernetes Service and Pod
  • Exposes an HTTP endpoint to receive external events
  • Manages the event handling process
  • Supports multiple authentication methods

Main responsibilities:

  • Receives and validates Webhook events
  • Invokes corresponding interceptors based on configurations
  • Executes trigger logic
  • Creates Kubernetes resources

#2. Trigger

The Trigger defines how to handle received events, and it includes:

  • TriggerBinding: Data extraction rules
  • TriggerTemplate: Resource templates
  • Interceptors: Event interceptors (optional)

Workflow:

  1. Receives event data
  2. Processes through interceptors (if configured)
  3. Extracts data using TriggerBinding
  4. Applies data to TriggerTemplate

#3. Interceptor

Interceptors provide an additional processing layer in the event handling workflow:

  • Event filtering
  • Payload validation
  • Data transformation
  • Authentication and authorization

It supports two types:

  1. Built-in Interceptors
    • GitHub
    • GitLab
    • Bitbucket
    • CEL (Common Expression Language)
  2. Custom Interceptors
    • Independently deployed services
    • Implement standard interfaces
    • High extensibility

#4. TriggerBinding

Responsible for extracting information from event data:

  • Defines data mapping rules
  • Supports JSONPath syntax
  • Can be cluster-level or namespace-level

Main functions:

  • Parameter extraction
  • Data transformation
  • Variable mapping

#5. TriggerTemplate

Defines the Kubernetes resources to be created:

  • Supports parameterized templates
  • Can create multiple resources
  • Supports dynamic naming

Features:

  • Resource templating
  • Parameter replacement
  • Dynamically generated names

#Workflow

  1. Event Reception

    • External system sends Webhook to EventListener
    • EventListener validates the request
  2. Interceptor Processing

    • Calls the configured interceptor chain
    • Executes validation and transformation
    • Can terminate or modify the request
  3. Data Extraction

    • TriggerBinding extracts data from the event
    • Applies data mapping rules
    • Prepares parameters
  4. Resource Creation

    • TriggerTemplate uses the extracted data
    • Replaces parameters in the template
    • Creates Kubernetes resources

#Deployment Architecture

#Basic Components

  1. EventListener Pod

    • Runs the event reception service
    • Contains core processing logic
    • Requires specific RBAC permissions
  2. EventListener Service

    • Exposes an HTTP endpoint
    • Supports different service types
    • Configurable TLS

#Optional Components

  1. Interceptor Service

    • Independently deployed interceptor
    • Custom event handling logic
    • Requires network accessibility
  2. Ingress/Route

    • External access configuration
    • TLS termination
    • Routing rules

#Security Architecture

#Authentication Mechanisms

  1. Webhook Authentication

    • Secret Token verification
    • Signature validation
    • OAuth integration
  2. Kubernetes Authentication

    • ServiceAccount
    • RBAC permissions
    • Secret management

#Authorization Control

  1. Resource Access Control

    • Role-based access control
    • Namespace isolation
    • Principle of least privilege
  2. Network Security

    • TLS encryption
    • Network policies
    • Access restrictions

#Extensibility Design

#1. Custom Interceptors

  • Standard HTTP interface
  • Flexible deployment options
  • Pluggable architecture

#2. Resource Templates

  • Supports multiple resource types
  • Parameterized configuration
  • Dynamically generated