Conductor Framework

A reusable framework for building Kubernetes operators that manage application deployments through manifest reconciliation.

What is Conductor Framework?

Conductor Framework provides a complete foundation for building Kubernetes operators with minimal boilerplate. It handles manifest management, templating, reconciliation, and provides both a REST API and Web UI out of the box.

The framework is designed for developers who want to build operators that manage multi-service Kubernetes applications without writing all the infrastructure code from scratch.

Quick Start

Get started with Conductor Framework in minutes:

go get github.com/garunski/conductor-framework/pkg/framework

Minimal example:

package main

import (
    "context"
    "embed"
    "log"
    
    "github.com/garunski/conductor-framework/pkg/framework"
)

//go:embed manifests
var manifestFiles embed.FS

func main() {
    ctx := context.Background()
    
    cfg := framework.DefaultConfig()
    cfg.AppName = "my-operator"
    cfg.ManifestFS = manifestFiles
    
    if err := framework.Run(ctx, cfg); err != nil {
        log.Fatalf("Framework error: %v", err)
    }
}

Features at a Glance

Manifest Engine

Load, template, and reconcile Kubernetes manifests with 60+ Sprig template functions (same as Helm).

REST API & Web UI

Built-in web interface and comprehensive REST API for managing deployments, monitoring health, and viewing events.

CRD-Based Parameters

Manage deployment parameters using Kubernetes Custom Resource Definitions for a native Kubernetes experience.

Event Tracking

Persistent event storage with BadgerDB, querying, filtering, and retention policies for all reconciliation operations.

Reconciliation Loop

Manual reconciliation via API endpoints with event tracking, error handling, and retry logic.

Template System

Go template syntax with Sprig functions, custom functions support, and parameter injection from CRDs or defaults.

Explore Documentation

Examples

Learn by example with the Guestbook Conductor example showing how to manage a multi-service application.

View Examples
AI Agents

Discover how AI agents can interact with Conductor Framework through the REST API with example prompts.

AI Agents
Implementation

Deep dive into the framework's architecture, components, and implementation details.

Implementation
Design Concepts

Understand the design philosophy, patterns, and trade-offs behind Conductor Framework.

Design
Contributing

Learn how to contribute to Conductor Framework, including code standards and workflow.

Contributing