Welcome to the Tekton Integration Catalog! This repository contains a collection of Tekton resources and helpers designed to simplify integration testing in Konflux CI. The goal is to make tests easier to run, manage, and automate, ensuring efficiency across Konflux Integration Tests System.
With prebuilt Tekton Tasks and StepActions, this catalog provides reusable components that help integrate and validate application components. By leveraging these resources, teams can streamline their testing processes and focus on delivering high-quality software.
This repository is organized into several key directories, each serving a specific purpose for Tekton-related resources.
The Tekton Tasks directory contains reusable tasks that define individual steps in your pipeline.
- Adding a New Task:
To add a new task, create a
.yaml
file inside thetasks/<your-task-name>/0.1/
directory. Ensure it follows the Tekton Task specification, is well-documented (addREADME.md
file), well-versioned and includes example usage.
The StepActions directory houses modular building blocks that allow you to fine-tune task execution within Tekton Pipelines. These reusable components can be used to:
- Add extra validation steps.
- Reuse logic across multiple tasks. For further details on StepActions, refer to the Tekton documentation.
The Konflux Integration Tools provide utilities specifically designed to facilitate the development and management of Tekton tasks.
- Applications Folder: Contains configurations and definitions for the application name within Konflux.
- Components Folder: Includes the Konflux component names and artifact tools, assisting with task development by automating repetitive tasks like configuration management, testing, and deployment.
You can find all these resources in the konflux
directory.
The scripts
directory contains reusable scripts that assist with Tekton pipeline tasks or stepactions, including environment setup, notifications, logging, and deployment.
- 📌 Adding a New Script:
To add a new script, create a
.sh
file in the appropriate subdirectory (e.g.,pre-pipeline-scripts
,post-pipeline-scripts
). Ensure the script is well-documented and easy to use, with a clear purpose and example usage.
We follow a versioning strategy to ensure updates don’t break existing workflows.
A new version of a task/stepaction should be created if:
- ✅ The task’s interface changes (e.g., parameters, workspaces, or result names are modified).
- ✅ New functionality is introduced that isn’t backward compatible.
- ✅ A critical bug fix requires an updated implementation.
Each version should be clearly labeled to avoid breaking existing pipelines.
We welcome contributions! If you’d like to add a new task, improve existing ones, or enhance documentation, check out our Contributing Guide.