A collection of tools and utilities for managing and operating the OpenShift CI (Continuous Integration) platform. This repository contains command-line tools, controllers, webhooks, and services that automate CI configuration management, job generation, repository onboarding, and various operational tasks.
CI-Tools provides a comprehensive set of utilities that work together to maintain and operate the OpenShift CI infrastructure. These tools handle tasks such as:
- CI Configuration Management: Generate, validate, and maintain CI operator configurations
- Job Generation: Automatically create Prow job configurations from CI operator configs
- Repository Onboarding: Streamline the process of adding new repositories to the CI platform
- Config Synchronization: Mirror and propagate configuration changes across branches and repositories
- Secret Management: Handle secrets, credentials, and sensitive configuration data
- Cluster Management: Tools for cluster initialization, monitoring, and maintenance
- Build & Image Management: Manage container images, registries, and build processes
- Testing Infrastructure: Support for test execution, result aggregation, and reporting
ci-operator-prowgen- Generates Prow job configurations from CI operator configsconfig-brancher- Propagates CI configurations across release branchesci-operator-yaml-creator- Creates and validates CI operator YAML configurationsautoconfigbrancher- Automates CI configuration reconciliation
repo-init- Web-based tool for onboarding new repositories to the CI platformrepo-brancher- Manages repository branching and configuration duplication
cluster-init- Initializes and configures OpenShift clusterspod-scaler- Manages pod scaling and resource allocationjob-run-aggregator- Aggregates and analyzes CI job run resultsvault-secret-collection-manager- Manages secrets in Vault
prow-job-dispatcher- Dispatches Prow jobs to appropriate clusterspipeline-controller- Manages CI/CD pipelinesretester- Automatically retests failed jobs
For detailed documentation, see the docs directory:
- Documentation Index - Complete documentation guide
- Contributing Guide - How to contribute to this project
-
Clone the repository:
git clone https://github.com/openshift/ci-tools.git cd ci-tools -
Build the tools:
make build
-
Run tests:
make test -
Explore individual tools: Each tool in the
cmd/directory has its own README with usage instructions.
- OpenShift CI Documentation - Official OpenShift CI documentation
- Prow Documentation - Prow CI system documentation
- CI Operator Reference - CI Operator step registry
This project is licensed under the Apache-2.0 license. See the LICENSE file for details.
We welcome contributions! Please see CONTRIBUTING.md for guidelines on how to contribute to this project.