awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
buildbot avatar

buildbot/buildbot

0
View on GitHub↗
5,452 stars·1,668 forks·Python·GPL-2.0·7 vueswww.buildbot.net↗

Buildbot

Buildbot est un framework d'intégration continue (CI) basé sur Python et un orchestrateur de build distribué. Il fonctionne comme un moteur d'automatisation de build qui coordonne la récupération du code source, l'exécution des étapes de build et le reporting des résultats via un contrôleur central et un réseau d'agents de travail distants.

Le système se distingue par une architecture d'extensibilité basée sur des plugins et un modèle de distribution maître-esclave. Il permet la modification dynamique des builds au runtime et supporte un backend de base de données enfichable pour persister l'état du système et l'historique des builds.

Le projet couvre un large éventail de capacités, incluant la planification automatisée des builds et l'orchestration de pipelines, l'intégration au contrôle de version via polling et webhooks, et le provisionnement de workers sur des serveurs physiques, des conteneurs Docker et des clusters Kubernetes. Il offre également une surveillance et une observabilité complètes via l'analyse des logs de build et le suivi des performances, ainsi qu'une gestion sécurisée des secrets et une authentification multi-fournisseur.

Le contrôle administratif est disponible via une interface web dédiée et des outils en ligne de commande pour la validation de configuration et la gestion des processus.

Features

  • Build Pipeline Orchestrators - Defines and manages sequences of execution steps and resource allocations to transform source code into deployable artifacts.
  • Continuous Integration - Implements a full continuous integration framework for automating code retrieval, build execution, and result reporting.
  • Master-Worker Coordination - Coordinates build task allocation from a central controller to a network of remote worker agents.
  • Pluggable Database Backends - Supports multiple SQL database engines through a pluggable connector system for persisting system state.
  • State Management Systems - Uses a consistent interface to persist and track the internal state of build processes and workflows.
  • State Query Interfaces - Exposes a scalable data interface for querying the current state of the distributed build system.
  • Build Automation Engines - Functions as an automation engine for defining complex build sequences and scheduling tasks.
  • Build Revision Tracking - Records specific commit hashes for every build to ensure precise version tracking and reproducibility.
  • Automated Test Execution - Orchestrates the automated execution of compilation and validation commands across diverse worker platforms.
  • Source Version Identification - Provides precise tracking of source code versions across multiple repositories using stamps and revisions.
  • Version Control Automation - Automates the retrieval of source code, including shallow submodule updates and tag downloads.
  • Repository Operations - Automates essential repository actions including shallow clones and secure credential handling for source code retrieval.
  • Repository Polling - Implements automated polling of version control systems to detect new changesets and initiate build pipelines.
  • Version Control Webhooks - Triggers automated builds by listening for event notifications from external code hosting providers.
  • Build Automation - Automates sequences of build tasks including shell commands, file uploads, and conditional logic.
  • VCS Polling - Periodically polls version control systems for new commits to automatically trigger build pipelines.
  • Automated Software Delivery - Coordinates source retrieval, step execution, and result reporting to automate software delivery.
  • Build Pipelines - Defines the sequences of execution steps and target workers required to produce build artifacts.
  • Build Schedulers - Schedules builds based on time intervals, nightly cycles, or manual requests.
  • Controller Configuration - Initializes the central controller that coordinates the distributed build process and manages task queues.
  • Python Frameworks - Provides a Python-based framework for automating software builds and testing using a master-worker architecture.
  • CI Resource Management - Provides provisioning and scaling of build workers across physical machines, Docker containers, and Kubernetes clusters.
  • Containerized Worker Orchestrators - Orchestrates worker lifecycles, including connection proxying and quarantine states for remote agents.
  • Continuous Integration Systems - Operates as a complete system that monitors version control to trigger automated compilation and validation pipelines.
  • Distributed Build Execution - Distributes build and test workloads across a network of master and agent nodes for scalable execution.
  • Distributed Task Orchestration - Orchestrates the distribution of execution tasks across a network of physical, virtual, or containerized workers.
  • Isolated Build Environments - Provides isolated build environments on physical or virtual machines to ensure consistent compilation and binary output.
  • Remote Task Distribution - Buildmaster sends execution commands to remote agents that perform build steps and return results.
  • Source Code Fetching - Automates the retrieval of source code from repositories using authenticated version control operations.
  • Build Worker Provisioning - Sets up remote agents that execute build tasks and report results back to the central controller.
  • VCS Hook Integrations - Integrates with version control hooks to trigger automated builds and push status updates back to the repository platform.
  • Version Control Integration - Monitors repositories for changes and triggers automated builds through polling and webhook integrations.
  • Version Control Integrations - Monitors external repositories for new commits or changesets to automatically initiate build processes.
  • Webhook Integrations - Provides infrastructure for receiving and processing automated HTTP callbacks from external providers.
  • Filtered Event Callbacks - Triggers callback functions based on the arrival of filtered messages in the system queue.
  • Webhook Event Receivers - Receives and routes push notifications from external hosting services to trigger automation.
  • Message Queue Routing - Routes serializable data between system components using routing keys and filters.
  • Secret Injection Mechanisms - Provides secure injection of sensitive credentials into worker environments using temporary files.
  • Secrets Management - Secures passwords and tokens through integration with professional secret management providers.
  • Build Trigger Filters - Evaluates code change properties using regexes and expressions to determine if a build should be triggered.
  • Component Functional Extensions - Utilizes a plugin-based architecture to integrate custom components that add new behaviors to workers and schedulers.
  • Extensible Plugin Architectures - Integrates custom build steps, schedulers, and reporters via a modular Python-based plugin architecture.
  • Plugin-Based Extensibility - Utilizes a plugin-based architecture to integrate custom build steps and services, enabling system extensibility.
  • CI Pipeline State Persistences - Provides a pluggable database system to persist historical build data and CI state across runs.
  • Build Status Reporters - Reports real-time build results and status updates to external platforms through a reporter interface.
  • Repository Change Monitors - Scans watched version control repositories for new commits or branches to automatically initiate build processes.
  • Source Change Monitors - Tracks changes in Git repositories, such as new branches and commits, to automatically trigger builds.
  • Automated Software Testing - Automatically executes comprehensive test suites against builds to verify software correctness and detect regressions.
  • Pending Task Cancellations - Removes pending tasks from the queue for a specific builder to clear the processing pipeline.
  • Dynamic Step Injection - Modifies the build execution pipeline at runtime by adding or altering steps based on build state.
  • GitHub Organization Membership Checks - Verifies user access by integrating GitHub organization and team memberships.
  • Artifact Storage Transfers - Enables the transfer of compiled files and build directories to remote storage for archival or deployment.
  • Database Connectivity - Supports connectivity to multiple database backends to manage the central controller's state and scale users.
  • Database Connector Implementations - Supports custom database connectors and schema modifications to flexible define how system state is persisted.
  • Transient Build Stores - Maintains a temporary key-value store for transient data associated with individual build processes.
  • Build Environment Customization - Defines specific operating systems and software dependencies within worker containers to meet build requirements.
  • Binary Compilation Toolchains - Executes software compilation using versioned toolchains to ensure consistent and reproducible binary output.
  • Execution Skipping - Bypasses the execution of builds based on specific configuration criteria to optimize resources.
  • Event-Based Build Schedulers - Implements custom logic to monitor specific events and trigger associated build sets.
  • Build Input Parameters - Provides a system for defining input parameters, such as choice fields, to customize individual build executions.
  • Redundant Build Cancellations - Automatically terminates unfinished builds when they are superseded by newer commits or failures occur.
  • EC2 Worker Provisioning - Deploys build nodes on Amazon EC2 infrastructure with support for network isolation.
  • Build Dependency Tracking - Allows identifying which subsequent builds were initiated by a parent build via a data API.
  • Build Metadata APIs - Offers programmatic interfaces to retrieve detailed information about projects and builders.
  • On-Demand Cloud Instances - Creates ephemeral compute instances on cloud providers using spot instances and bidding for cost-effective scaling.
  • Cloud Provisioning - Provisions ephemeral build environments on cloud infrastructure with automated resource cleanup.
  • Docker Worker Configuration - Configures container-based workers with renderable image attributes and connectivity variables.
  • Containerized Deployment Orchestration - Orchestrates the deployment of system components within isolated container environments for consistency.
  • Kubernetes Worker Deployments - Launches build workers into Kubernetes clusters to scale compute resources dynamically.
  • Unstable Worker Isolation - Automatically isolates and suspends workers encountering preparation issues using an exponential back-off timer.
  • Programmatic Configuration Generation - Allows for the dynamic generation of build pipelines and configurations through executable code rather than static files.
  • Queue Management - Provides administrative controls to manage and cancel pending build tasks in the queue to resolve processing bottlenecks.
  • Git Operation Automations - Automates version control tasks such as cloning, committing changes, and tagging releases within pipelines.
  • Remote Command Execution - Runs arbitrary shell commands or functions on remote agents with support for process termination.
  • Inter-Step State Passing - Implements mechanisms for transferring key-value data between isolated build pipeline steps to modify subsequent behavior.
  • Docker Worker Provisioning - Creates isolated build environments using custom Docker host settings and volume mounts.
  • Action Triggers - Implements mechanisms to execute control commands, such as canceling builds, based on system state.
  • Multi-Branch Monitoring - Monitors and triggers builds across multiple branches or projects within a single repository.
  • Worker Lifecycle Management - Provides administrative control over the operational state of remote worker agents, including pausing and stopping.
  • Worker Node Management - Manages workers across Kubernetes clusters using custom pod specifications for precise node selection.
  • On-Demand Worker Node Provisioning - Spins up build workers on demand across cloud providers and container platforms.
  • Worker Health Monitoring - Monitors worker connectivity and sends notifications when agents remain offline.
  • Worker Scaling - Increases processing capacity by cloning worker containers to handle more concurrent build tasks.
  • Chat Platform Integrations - Integrates with external chat platforms to push build results and alert developers.
  • External Status Notifications - Pushes build status and results to external platforms and code repositories.
  • Task Result Notifications - Notifies specific users of build results using username mapping for email and chat delivery.
  • Build Recipient Routing - Determines and filters responsible users to ensure build notifications are routed to the correct recipients.
  • REST Administrative APIs - Exposes a REST-based administrative API for programmatic control of builders and build schedules.
  • REST API Interfaces - Provides a server-side REST API allowing external tools to interact with and retrieve build system data.
  • Mutual TLS Authentication - Secures communication between the controller and workers using mutual TLS with client certificates.
  • Ticket-Based Authentication - Secures build steps by using ticket-based authentication protocols to connect to version control systems.
  • Directory Service Integrations - Restricts interface and API access using directory services, OAuth2, and domain roles.
  • External Secret Resolution - Fetches sensitive configuration values from external secure stores and vault services.
  • Git Credential Helpers - Uses specialized credential helpers and ticket-based authentication to secure Git fetch, poll, and push operations.
  • Dashboard Access Controls - Controls access to the administrative dashboard by assigning specific roles to authorized users.
  • GitLab Identity Connectors - Validates user identities via GitLab OAuth2 to control access to the management interface.
  • Administrative Interface Access Controls - Provides controls to restrict access to the administrative web interface by defining authorized users and roles.
  • API Request Authentication - Secures public API access by verifying credentials and managing sessions via cookies.
  • Role-Based Access Control - Defines authorization rules to restrict administrative actions based on assigned user roles.
  • Secret Encryption - Encrypts sensitive data used in builds to prevent exposure within configuration files.
  • Secret Vault Integrations - Integrates with external key-value vault services to securely retrieve and manage sensitive credentials used during the build process.
  • Third-Party Identity Integrations - Integrates with external identity providers to manage access to the administrative interface.
  • TLS Transfer Security - Encrypts network protocols between workers and the central controller using TLS.
  • User Access Management - Controls system entry and permissions via a comprehensive authentication and authorization framework.
  • User Authentication Systems - Provides a framework for verifying user identities via local credentials or external providers.
  • Version Control Authentications - Uses public and private keys to authenticate secure fetch operations from repositories.
  • Worker Lifecycle Management - Manages the lifecycle of worker agent daemons, allowing for administrative restarts and configuration updates.
  • Database Schema Migrations - Uses versioned scripts to update the database structure, ensuring compatibility between the system and its stored data.
  • Dynamic Pipeline Modification - Allows the execution pipeline to be modified at runtime by adding or altering steps based on process state.
  • Multi-Repository Build Coordination - Aggregates source changes from multiple distinct repositories into a single coordinated build process.
  • Execution Logic Controls - Implements custom logic functions to determine build start conditions and request prioritization.
  • Commit-Trigger Notifications - Uses commit scripts to send immediate notifications of source code changes to the build controller.
  • Build Notification Configuration - Allows configuration of build alerts delivered via email or HTTP based on triggers like target branches.
  • Log Search Engines - Includes a high-performance log viewer with full-text search capabilities for analyzing large build files.
  • Log File Retention Policies - Implements log retention policies to automatically remove obsolete build data and prevent disk exhaustion.
  • Metric and Performance Monitors - Captures event-based data using handlers and watchers to monitor overall system behavior and performance.
  • Chat Integration Notifications - Provides real-time build status updates via integrations with multiple chat platforms.
  • Email Alert Notifications - Sends automated build status updates and alerts through an email system.
  • Build Performance Profilers - Visualizes build times and success rates through trend charts to identify compilation bottlenecks.
  • System Statistics Collection - Aggregates operational metrics and stores them for long-term system analysis.
  • External Result Reporters - Forwards build and test execution outcomes to external communication platforms like email and chat.
  • Worker Lifecycle Management - Validates if running latent workers meet the specific requirements of pending build requests.
  • Persistent Cloud Worker Pools - Manages cloud compute instances using persistent sessions to optimize worker startup and shutdown.
  • Event-Driven Messaging Systems - Implements an event-driven architecture to route JSON data between system components.
  • Continuous Integration - Python-based toolkit for continuous integration workflows.
  • Build And Packaging - Framework for automating continuous integration and testing pipelines.
  • Systèmes de build - Job scheduling system for continuous integration and software packaging.

Historique des stars

Graphique de l'historique des stars pour buildbot/buildbotGraphique de l'historique des stars pour buildbot/buildbot

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Buildbot

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Buildbot.
  • jenkinsci/jenkinsAvatar de jenkinsci

    jenkinsci/jenkins

    25,452Voir sur GitHub↗

    Jenkins is a CI/CD automation server and build automation tool used to orchestrate software build, test, and deployment pipelines. It functions as a pipeline orchestration engine and continuous delivery platform that manages the movement of software from source control to production environments. The project is built as a plugin-based automation framework, utilizing an extensibility model that integrates third-party tools and custom scripts to expand its capabilities. This architecture allows for the integration of specialized automation workflows and custom tool support through a plugin syst

    Java
    Voir sur GitHub↗25,452
  • karma-runner/karmaAvatar de karma-runner

    karma-runner/karma

    11,958Voir sur GitHub↗

    Karma is a JavaScript test runner designed for executing test suites across multiple real web browsers to ensure cross-browser compatibility. It functions as a browser-based execution system that launches browsers, captures console output, and provides a command line interface for running automated tests within continuous integration pipelines. The project utilizes a plugin architecture that allows for the integration of third-party launchers, reporters, and preprocessors. It employs an adapter-based framework to execute tests from various assertion libraries through a unified runner interfac

    JavaScript
    Voir sur GitHub↗11,958
  • weaveworks/flaggerAvatar de weaveworks

    weaveworks/flagger

    5,362Voir sur GitHub↗

    Flagger is a Kubernetes operator designed to automate the lifecycle of application deployments through progressive delivery. It functions as a controller that monitors custom resource definitions to orchestrate complex release strategies, including canary, blue/green, and A/B testing. By continuously reconciling the desired cluster state with the actual environment, it ensures that deployments adhere to defined specifications while managing the underlying infrastructure required for traffic routing. The project distinguishes itself through a sophisticated metric-driven analysis loop that eval

    Go
    Voir sur GitHub↗5,362
  • nuke-build/nukeAvatar de nuke-build

    nuke-build/nuke

    3,707Voir sur GitHub↗

    Nuke is a build automation system for defining software compilation and deployment pipelines using a strongly typed C# console application. It functions as a cross-platform build engine and pipeline orchestrator that treats build configurations as standard executable programs rather than static files. By leveraging a compiled language, the system provides type safety and IDE support for build script logic. This approach allows for the definition of automation and CI/CD pipelines using a professional programming language instead of YAML or shell scripts. The engine manages .NET project orches

    C#build-automationcontinuous-integrationnuke
    Voir sur GitHub↗3,707
Voir les 30 alternatives à Buildbot→

Questions fréquentes

Que fait buildbot/buildbot ?

Buildbot est un framework d'intégration continue (CI) basé sur Python et un orchestrateur de build distribué. Il fonctionne comme un moteur d'automatisation de build qui coordonne la récupération du code source, l'exécution des étapes de build et le reporting des résultats via un contrôleur central et un réseau d'agents de travail distants.

Quelles sont les fonctionnalités principales de buildbot/buildbot ?

Les fonctionnalités principales de buildbot/buildbot sont : Build Pipeline Orchestrators, Continuous Integration, Master-Worker Coordination, Pluggable Database Backends, State Management Systems, State Query Interfaces, Build Automation Engines, Build Revision Tracking.

Quelles sont les alternatives open-source à buildbot/buildbot ?

Les alternatives open-source à buildbot/buildbot incluent : jenkinsci/jenkins — Jenkins is a CI/CD automation server and build automation tool used to orchestrate software build, test, and… karma-runner/karma — Karma is a JavaScript test runner designed for executing test suites across multiple real web browsers to ensure… weaveworks/flagger — Flagger is a Kubernetes operator designed to automate the lifecycle of application deployments through progressive… nuke-build/nuke — Nuke is a build automation system for defining software compilation and deployment pipelines using a strongly typed C#… drone/drone — Drone is a container-based continuous integration and delivery platform, source control management system, and… cake-build/cake — Cake is a cross-platform build automation system and scripting framework that allows users to define software build…