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 PageConcepts
Next PagePermission Description

#Understanding Tekton Hub

Tekton Hub is a web-based graphical interface that serves as a centralized repository and discovery platform for Tekton resources. It provides a user-friendly way to access, search, and share reusable Tekton components from the Tekton Catalog, enabling developers to quickly find and integrate pre-built CI/CD building blocks into their pipelines.

#TOC

#Terminology

TermDescription
CatalogA collection of Tekton resources organized according to the Tekton Catalog Organization TEP structure
ResourceA Tekton component such as Task, Pipeline, or other building blocks stored in a catalog
RatingUser-provided feedback score for resources in Tekton Hub
CategoryClassification of resources by their purpose or functionality
API ServiceBackend service that provides data access and management for Tekton Hub
UIWeb interface for users to interact with Tekton Hub

#Why Tekton Hub is Needed

#The Challenge of Resource Discovery and Reuse

In traditional CI/CD environments, teams often face the challenge of discovering and sharing reusable components. Without a centralized repository, developers frequently:

  • Reinvent the wheel by creating similar pipeline components from scratch
  • Struggle to find high-quality, tested components for common tasks
  • Lack visibility into what components already exist within their organization or the broader community
  • Have difficulty determining which components are well-maintained and reliable

This leads to inefficiency, inconsistency, and duplication of effort across teams and projects.

#Tekton Hub's Solution

Tekton Hub addresses these challenges by providing a centralized platform that:

  • Aggregates Tekton resources from multiple catalogs into a searchable repository
  • Enables users to discover, evaluate, and use pre-built components
  • Provides a rating system to help identify high-quality resources
  • Offers detailed information about each resource, including versions, documentation, and examples
  • Simplifies the process of incorporating these resources into pipelines

By centralizing resource discovery and management, Tekton Hub promotes reusability, standardization, and collaboration across the Tekton ecosystem.

#Advantages

  • Simplified Discovery: Easy-to-use web interface for finding Tekton resources
  • Improved Reusability: Promotes sharing and reuse of well-tested components
  • Quality Assurance: Rating system helps users identify reliable resources
  • Version Management: Tracks multiple versions of resources for compatibility
  • Categorization: Organizes resources by type and purpose for easier navigation
  • Authentication: Supports multiple authentication methods (GitHub, GitLab, BitBucket)
  • API Access: Provides both versioned and internal APIs for integration

#Scenarios

#Scenario 1: Developer Seeking CI Components

A developer needs to set up a CI pipeline for a new project. Instead of creating all the necessary tasks from scratch, they visit Tekton Hub to search for pre-built components. They find tasks for running tests, building containers, and scanning for vulnerabilities. With a few clicks, they can view documentation, check ratings, and install these components into their Kubernetes cluster.

#Scenario 2: Platform Team Managing Custom Catalogs

A platform engineering team wants to create and share standardized CI/CD components across their organization. They set up a custom catalog following the Tekton Catalog structure, add it to their Tekton Hub deployment, and make it available to all developers in the organization. This ensures consistency and best practices across teams.

#Scenario 3: Contributing to the Community

A developer creates a useful Task for a specific tool and wants to share it with the community. After testing and documenting the Task, they contribute it to a public catalog. Once approved, it becomes available through Tekton Hub for others to discover and use.

#Constraints and Limitations

  • Requires a Kubernetes cluster for deployment
  • Catalogs must follow the structure defined in the Tekton Catalog Organization TEP
  • Authentication is required for certain operations like rating resources
  • Custom catalogs need to be manually added to the configuration
  • Resources are limited to those available in configured catalogs

#Principles

#Architecture

Tekton Hub consists of three main components:

  1. Database: PostgreSQL database that stores catalog, resource, and user information
  2. API Service: Backend service that provides data access and management

The API Service communicates with the database to store and retrieve information about resources, and catalogs. It periodically refreshes catalog data to ensure that the latest resources are available.

#Resource Management Workflow

  1. Catalog Registration: Catalogs are registered in the Tekton Hub configuration
  2. Catalog Refresh: The system periodically scans catalogs for new or updated resources
  3. Resource Indexing: Resources are indexed with metadata for efficient searching
  4. Resource Discovery: Users search and browse resources through the UI
  5. Resource Installation: Users can install resources directly into their Kubernetes clusters

#References

  • Tekton Hub GitHub Repository
  • Tekton Catalog Organization TEP