30 open-source projects similar to actions/actions-runner-controller, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Actions Runner Controller alternative.
This project provides a containerized execution agent designed to host automated workflows for version control platforms. It functions as a self-hosted runner that automatically registers with a central service upon startup and terminates after completing a single job, ensuring that every task runs in a clean, isolated environment. The system distinguishes itself through its focus on ephemeral lifecycle management and security. By utilizing a non-root execution model, it enforces least-privilege principles during job processing. The runner supports dynamic configuration through environment va
Kubebuilder is a framework and set of scaffolding tools used to build Kubernetes APIs and controllers. It functions as an operator framework that provides generators for custom resource definitions, admission webhooks, and RBAC manifests to extend cluster functionality. The project distinguishes itself through marker-based code generation, which parses source code comments to automatically produce Kubernetes manifests and boilerplate logic. It employs a hub-and-spoke versioning model to translate data between multiple API versions and uses a three-way merge strategy to automate project migrat
The Operator SDK is a framework for building, packaging, and managing custom controllers that extend the Kubernetes API. It serves as a toolset for defining new API types and implementing reconcile loops to automate the lifecycles of complex applications. The project provides specialized support for creating operators based on Helm charts or Ansible playbooks, allowing users to maintain a desired cluster state using existing automation tools. It includes a dedicated system for packaging controllers into standardized container image bundles for distribution via the Operator Lifecycle Manager.
This project provides a framework for building Kubernetes operators and custom controllers. It offers a set of libraries designed to manage the lifecycle of cluster resources, enabling developers to synchronize the actual state of a cluster with a desired configuration through event-driven reconciliation loops. The framework distinguishes itself by providing a manager-orchestrated environment that coordinates multiple controllers and webhooks within a single process. It includes built-in support for optimistic concurrency control to prevent update conflicts and utilizes in-memory informer cac
Sample Controller is a reference implementation and developer toolkit for building custom controllers and operators to extend cluster capabilities with domain-specific resource types and reconciliation loops. It provides a foundational framework for defining, registering, and validating custom resource definitions and their instances to store domain-specific data within a cluster. The framework observes remote API servers for resource mutations, queueing discovered instances for asynchronous processing while listening for creation, update, and deletion events to trigger reconciliation logic.
This project is a Kubernetes controller that automates the issuance, renewal, and lifecycle management of TLS certificates. It functions as a native extension to the cluster API, using custom resource definitions and reconciliation loops to maintain the desired state of certificates and trust bundles across distributed services. By integrating directly with the cluster's admission control and secret storage systems, it ensures that cryptographic identities are consistently provisioned and available for application workloads. The project distinguishes itself through its extensive support for a
The Prometheus Operator is a Kubernetes monitoring orchestrator and controller that manages Prometheus clusters and observability components through declarative custom resources. It functions as a custom resource controller that translates high-level Kubernetes resource definitions into the configuration files required by the underlying monitoring software. The project automates the deployment, scaling, and lifecycle of an observability stack, including the integration of components like Thanos and Alertmanager. It distinguishes itself by syncing monitoring targets, alerting rules, and scrape
Crossplane is a Kubernetes-based control plane framework that functions as a cloud resource orchestrator and infrastructure-as-code platform. It enables the management of heterogeneous infrastructure by extending the Kubernetes API to provision and maintain external cloud services through declarative configuration. By utilizing custom resource controllers, it continuously reconciles the state of external infrastructure with defined desired states, ensuring consistent deployment and lifecycle management across multiple cloud providers. The platform distinguishes itself through its composition-
This project is a Go language library that provides a programmatic interface for interacting with the Kubernetes API server. It serves as a client for managing cluster resources, offering both typed interfaces for compile-time safety and dynamic interfaces for unstructured data and custom resource management. The library includes a controller framework designed for building event-driven automation. This framework utilizes informers to maintain local resource caches and rate-limited work queues to decouple event detection from state reconciliation. High availability is supported through a lead
Reloader is a Kubernetes custom controller designed to automate pod restarts and synchronize running workloads with external configuration stores. It functions as a configuration reloader that triggers rolling upgrades for pods whenever referenced ConfigMaps or Secrets are updated. The tool distinguishes itself by integrating with external secret managers, CSI drivers, and GitOps workflows to ensure workloads are restarted when secrets from external stores change. It utilizes targeted filtering via labels and annotations to control which resources or namespaces trigger restarts, and it can pa
Kube-rs is a Rust client library and runtime for interacting with the Kubernetes API server. It provides a type-safe interface for managing cluster resources and state, including a toolkit for defining custom resource definitions and a framework for building admission webhooks to validate or mutate API requests. The project distinguishes itself through a dedicated controller runtime that implements event-driven reconciliation loops to align actual cluster state with desired configurations. It utilizes a streaming system to monitor resource changes and synchronize remote states into a local qu
Argo Workflows is a container-native workflow engine that functions as a Kubernetes custom resource controller. It orchestrates complex sequences of containerized tasks by executing them as directed acyclic graphs, allowing for dependency management and parallel processing within a cluster. The system extends the native Kubernetes control plane to manage the full lifecycle of automated processes, from initial triggering to final resource cleanup. The platform distinguishes itself through its controller-pattern reconciliation, which continuously monitors workflow states to align them with desi
This is a Java client library for interacting with the Kubernetes API server. It provides a programmatic interface and a set of typed models to manage cluster resources, orchestrate state reconciliation, and administer pods and namespaces within a Kubernetes environment. The library enables the development of custom controllers by providing frameworks for implementing automated control loops that reconcile the actual state of resources with a desired target state. It supports the generation of strongly-typed Java classes from OpenAPI specifications and custom resource definitions to ensure ty
Sealed Secrets is a Kubernetes secret encryption tool and controller designed for GitOps security. It provides a mechanism to encrypt sensitive data into specialized resources that can be safely stored in public version control systems and decrypted only within a cluster. The system uses an asymmetric encryption manager to seal secrets with a public key, ensuring that only the corresponding private key held within the cluster can unseal them. It includes utilities for security key rotation, secret re-encryption, and offline private key recovery to maintain data access during disaster recovery
This project is a Kubernetes controller that automates the management of public-facing network resources and secure ingress connectivity. It functions by observing custom resource definitions to reconcile the desired state of network traffic with the actual configuration of internal services. The controller manages network connectivity by establishing secure outbound tunnels, which eliminates the requirement for traditional inbound firewall ports or port forwarding. It integrates directly with external cloud management interfaces to automate the lifecycle of these tunnels and synchronize doma
This project is a Kubernetes ingress controller that manages external traffic by dynamically configuring the HAProxy load balancer. It functions as a bridge between cluster resources and the network data plane, translating high-level ingress definitions into active proxy configurations to route HTTP, TCP, and UDP traffic into containerized environments. The controller distinguishes itself through a decoupled architecture that separates control plane logic from the proxy process, allowing for independent lifecycle management and versioning. It utilizes template-based configuration generation a
The logging operator is a Kubernetes-native controller designed to automate the deployment, configuration, and lifecycle management of log collection and routing infrastructure. By utilizing custom resource definitions, it provides a declarative framework for standardizing how container logs are captured, processed, and forwarded across distributed cluster environments. The project distinguishes itself through its support for multi-tenant logging architectures, allowing administrators to enforce namespace-scoped isolation for log collection and routing configurations. It employs a sidecar inj
The quarkus-operator-sdk is a Java extension and framework for building custom Kubernetes operators and controllers. It provides an operator framework that generates boilerplate classes, registers reconcilers, and automatically produces custom resource definitions, role-based access control rules, deployment manifests, and Helm charts directly from application code metadata. The framework supports compile-time configuration validation to catch errors before deployment, standard dependency injection wiring for clients and controllers, and static native image compilation for generating self-con
This project is a Kubernetes controller that automates the retrieval and injection of secrets from HashiCorp Vault into containerized workloads. By operating as a control loop, it monitors cluster state to deliver sensitive configuration data and authentication tokens directly into application environments, removing the requirement for static credentials. The system distinguishes itself through a sidecar-based injection mechanism that intercepts pod lifecycle events to mount secrets at runtime. It supports dynamic credential provisioning, generating short-lived tokens on demand to reduce the
Agones is a Kubernetes game server orchestrator designed for deploying, scaling, and managing dedicated multiplayer game server processes across a distributed cluster. It provides the core infrastructure needed to provision individual or grouped server processes to support real-time multiplayer gaming sessions. The system includes a fleet manager to automate the lifecycle of server groups based on player demand and a health monitor to track the connectivity and operational status of active processes. It integrates with cluster autoscalers to synchronize server resource requirements with cloud
Longhorn is a distributed block storage system and orchestrator for Kubernetes. It provides persistent, replicated block storage volumes that survive pod restarts and node failures by maintaining synchronous copies of data across multiple cluster nodes. The system implements the Container Storage Interface (CSI) for dynamic volume provisioning and attachment. It is distinguished by its support for shared read-write access to a single block volume across multiple pods, as well as the ability to export volume snapshots to external S3 or NFS targets for off-cluster disaster recovery. The platfo
CloudNativePG is a Kubernetes operator designed for the administration, lifecycle management, and high availability of PostgreSQL database clusters. It functions as a declarative orchestrator that manages database instances through custom resources and manifests. The project distinguishes itself by automating complex operational tasks, including primary election and failover management via streaming physical replication. It provides specialized tools for database version migrations, supporting both offline in-place upgrades and online migrations through logical replication. The operator cove
Walle-web is a continuous delivery platform and DevOps release manager designed to automate the deployment, rollback, and release of code across multiple server environments. It functions as a container deployment orchestrator and multi-environment server manager, providing a centralized web interface for coordinating application delivery. The system distinguishes itself through a combination of canary release management and containerized application delivery. It utilizes a RESTful deployment API to integrate external tools into the delivery pipeline and employs hook-based workflow orchestrat
This project is a community-curated directory of open-source software designed for deployment in private server environments and home labs. It serves as a comprehensive resource for discovering independent, self-hosted alternatives to mainstream cloud services, enabling users to maintain full data ownership and control over their digital infrastructure. The directory is structured through a hierarchical taxonomy that organizes a vast collection of applications into logical categories, ranging from media management and data analytics to private communication and team productivity tools. It dis
Rustfs is a distributed object storage system designed for high availability and horizontal scalability. It functions as a cluster-based platform that manages data across multiple nodes, providing a self-hosted infrastructure for large-scale storage requirements. The system is built to be container-native, utilizing an operator to automate deployment and management within orchestrated environments. It provides compatibility with standard object storage protocols, allowing existing applications and tools to interact with the storage layer through a translation interface. To ensure long-term re
Argo CD is a declarative, GitOps-based continuous delivery tool designed for Kubernetes. It functions as a centralized control plane that synchronizes application states from version-controlled repositories directly into target clusters, ensuring that the live environment consistently matches the desired configuration defined in Git. The platform distinguishes itself through its ability to manage multi-cluster deployments from a single interface, providing unified oversight across distinct computing environments. It employs a controller-based reconciliation loop to continuously monitor for co
This project is a collection of Linux server automation scripts designed to automate the installation and configuration of core server software. It provides specialized tools for deploying proxy servers, configuring DNS servers, managing container infrastructure, and optimizing the Linux kernel. The automation suite distinguishes itself by integrating geo-restriction bypass capabilities via proxy protocols and implementing advanced network tuning, such as enabling BBR congestion control to improve throughput and latency. It also features distribution-aware automation that detects CPU architec
This project is a static site documentation generator that transforms markdown and source files into searchable, themed websites for technical guides and references. It provides a containerized environment that bundles the necessary build artifacts and runtime to serve documentation sites. The system includes a markdown documentation linter to enforce consistent styling and grammar across content to maintain editorial standards. It also implements search engine optimization through the generation of sitemaps and structured layouts to improve content discoverability and indexing. The platform
GreptimeDB is a distributed, open-source time-series database built for unified observability. It stores and queries metrics, logs, and traces together in a single columnar engine, supporting both SQL and PromQL for analysis. The database is designed as a Kubernetes-native operator with a decoupled compute and storage architecture, enabling horizontal scaling and multi-region deployment. What distinguishes GreptimeDB is its role as a multi-protocol ingestion gateway, accepting data through OpenTelemetry, Prometheus Remote Write, InfluxDB, Loki, Elasticsearch, Kafka, and MQTT protocols without
This project serves as a comprehensive reference architecture and a guide to best practices for developing scalable applications with the Spring Boot framework. It provides a structural blueprint for Java backend development, focusing on the implementation of decoupled APIs and the establishment of architectural standards. The project specifically details the creation of custom starters and auto-configuration modules to simplify the integration of third-party libraries. It also provides a deployment blueprint for packaging applications as executable jars and optimizing layered builds for cont