Directories
¶
| Path | Synopsis |
|---|---|
|
apis
|
|
|
haproxytemplate/v1alpha1
Package v1alpha1 contains API Schema definitions for the haproxytemplate v1alpha1 API group.
|
Package v1alpha1 contains API Schema definitions for the haproxytemplate v1alpha1 API group. |
|
Package compression provides zstd compression utilities for large configurations.
|
Package compression provides zstd compression utilities for large configurations. |
|
Package controller provides the main controller orchestration for the HAProxy template ingress controller.
|
Package controller provides the main controller orchestration for the HAProxy template ingress controller. |
|
buffers
Package buffers provides fixed buffer sizes for event subscriptions.
|
Package buffers provides fixed buffer sizes for event subscriptions. |
|
coalesce
Package coalesce provides utilities for event coalescing in controller components.
|
Package coalesce provides utilities for event coalescing in controller components. |
|
commentator
Package commentator provides the Event Commentator pattern for domain-aware logging.
|
Package commentator provides the Event Commentator pattern for domain-aware logging. |
|
component
Package component provides event subscription, dispatch, panic recovery, and shutdown.
|
Package component provides event subscription, dispatch, panic recovery, and shutdown. |
|
configtest
Package configtest runs a HAProxyTemplateConfig's embedded validationTests against an already-built engine, bounded by a timeout.
|
Package configtest runs a HAProxyTemplateConfig's embedded validationTests against an already-built engine, bounded by a timeout. |
|
crdwatch
Package crdwatch reinitializes the controller when the CustomResourceDefinitions backing watched resources change.
|
Package crdwatch reinitializes the controller when the CustomResourceDefinitions backing watched resources change. |
|
debug
Package debug provides controller-specific debug variable implementations.
|
Package debug provides controller-specific debug variable implementations. |
|
deployer
Package deployer applies a validated render to the HAProxy fleet through the HAPTIC agent that owns each pod's file tree.
|
Package deployer applies a validated render to the HAProxy fleet through the HAPTIC agent that owns each pod's file tree. |
|
diagnostics
Package diagnostics collects content-free evidence about a HAPTIC fleet.
|
Package diagnostics collects content-free evidence about a HAPTIC fleet. |
|
discovery
Package discovery provides the Discovery event adapter component.
|
Package discovery provides the Discovery event adapter component. |
|
dryrunvalidator
Package dryrunvalidator implements the DryRunValidator that performs dry-run reconciliation for webhook validation.
|
Package dryrunvalidator implements the DryRunValidator that performs dry-run reconciliation for webhook validation. |
|
eventemitter
Package eventemitter publishes Kubernetes Events for rendered configuration, deployment failures, and rejected watched inputs.
|
Package eventemitter publishes Kubernetes Events for rendered configuration, deployment failures, and rejected watched inputs. |
|
events
Package events contains all domain event type definitions for the HAPTIC controller.
|
Package events contains all domain event type definitions for the HAPTIC controller. |
|
helpers
Package helpers provides shared utility functions for the controller layer.
|
Package helpers provides shared utility functions for the controller layer. |
|
httpstore
Package httpstore provides the event adapter for HTTP resource fetching.
|
Package httpstore provides the event adapter for HTTP resource fetching. |
|
indextracker
Package indextracker provides the IndexSynchronizationTracker that monitors resource watcher synchronization and publishes an event when all are synced.
|
Package indextracker provides the IndexSynchronizationTracker that monitors resource watcher synchronization and publishes an event when all are synced. |
|
inputisolation
Package inputisolation selects independently valid watched-resource updates.
|
Package inputisolation selects independently valid watched-resource updates. |
|
leadership
Package leadership provides utilities for handling leadership transitions in event-driven components.
|
Package leadership provides utilities for handling leadership transitions in event-driven components. |
|
names
Package names provides well-known string constants used across the controller layer.
|
Package names provides well-known string constants used across the controller layer. |
|
pipeline
Package pipeline provides the render-validate pipeline for HAProxy configuration.
|
Package pipeline provides the render-validate pipeline for HAProxy configuration. |
|
pluggablevalidator
Package pluggablevalidator implements the controller-side client for the pluggable-validator-sidecar wire protocol.
|
Package pluggablevalidator implements the controller-side client for the pluggable-validator-sidecar wire protocol. |
|
pluggablevalidator/testutil
Package testutil provides a fixture unix-socket server for exercising the pluggablevalidator client without spinning up a real haproxy-spoa-hub sidecar.
|
Package testutil provides a fixture unix-socket server for exercising the pluggablevalidator client without spinning up a real haproxy-spoa-hub sidecar. |
|
proposalvalidator
Package proposalvalidator validates hypothetical configuration changes.
|
Package proposalvalidator validates hypothetical configuration changes. |
|
reconciler
Package reconciler implements the Reconciler component that triggers reconciliation events on resource changes.
|
Package reconciler implements the Reconciler component that triggers reconciliation events on resource changes. |
|
rendercontext
Package rendercontext provides a centralized builder for template rendering contexts.
|
Package rendercontext provides a centralized builder for template rendering contexts. |
|
rendercycle
Package rendercycle binds one rendered output to every effect produced by the same controller reconciliation under an authenticated immutable root.
|
Package rendercycle binds one rendered output to every effect produced by the same controller reconciliation under an authenticated immutable root. |
|
rendergate
Package rendergate runs the controller's own `haproxy -c` over each render, off the reconcile wall clock.
|
Package rendergate runs the controller's own `haproxy -c` over each render, off the reconcile wall clock. |
|
resourceapplier
Package resourceapplier reconciles template-declared Kubernetes resources via Server-Side Apply (SSA).
|
Package resourceapplier reconciles template-declared Kubernetes resources via Server-Side Apply (SSA). |
|
resourcewatcher
Package resourcewatcher provides the ResourceWatcherComponent that creates and manages watchers for all Kubernetes resources defined in the controller configuration.
|
Package resourcewatcher provides the ResourceWatcherComponent that creates and manages watchers for all Kubernetes resources defined in the controller configuration. |
|
statusapplier
Package statusapplier applies template-driven status patches to Kubernetes resources.
|
Package statusapplier applies template-driven status patches to Kubernetes resources. |
|
testrunner
Package testrunner implements validation test execution for HAProxyTemplateConfig.
|
Package testrunner implements validation test execution for HAProxyTemplateConfig. |
|
testutil
Package testutil provides shared test helpers for controller package tests.
|
Package testutil provides shared test helpers for controller package tests. |
|
throttle
Package throttle provides leading-edge refractory throttle helpers used by controller components that bound their write rate to slow downstream systems (e.g.
|
Package throttle provides leading-edge refractory throttle helpers used by controller components that bound their write rate to slow downstream systems (e.g. |
|
timeouts
Package timeouts provides shared timeout constants used across controller sub-packages.
|
Package timeouts provides shared timeout constants used across controller sub-packages. |
|
timers
Package timers provides safe timer management for event-driven controller components.
|
Package timers provides safe timer management for event-driven controller components. |
|
typebootstrap
Package typebootstrap orchestrates the typed-watched-resources pipeline at controller startup.
|
Package typebootstrap orchestrates the typed-watched-resources pipeline at controller startup. |
|
validation
Package validation provides pure validation services for HAProxy configuration.
|
Package validation provides pure validation services for HAProxy configuration. |
|
warmer
Package warmer keeps a follower's incremental render graph warm.
|
Package warmer keeps a follower's incremental render graph warm. |
|
webhook
Package webhook connects the admission server to controller validation.
|
Package webhook connects the admission server to controller validation. |
|
core
|
|
|
config
Package config provides configuration loading and validation.
|
Package config provides configuration loading and validation. |
|
logging
Package logging provides structured logging setup using Go's standard library log/slog package.
|
Package logging provides structured logging setup using Go's standard library log/slog package. |
|
agent/agenttest
Package agenttest is an in-process HAPTIC agent: an httptest server that speaks pkg/dataplane/agent/api well enough to drive the controller's deployer without a container.
|
Package agenttest is an in-process HAPTIC agent: an httptest server that speaks pkg/dataplane/agent/api well enough to drive the controller's deployer without a container. |
|
agent/api
Package api is the wire contract between the controller and the HAPTIC agent (the container that owns an HAProxy pod's file tree and runtime socket).
|
Package api is the wire contract between the controller and the HAPTIC agent (the container that owns an HAProxy pod's file tree and runtime socket). |
|
agent/cli
Package cli turns the agent's typed ops into HAProxy runtime commands and runs them against the worker stats socket.
|
Package cli turns the agent's typed ops into HAProxy runtime commands and runs them against the worker stats socket. |
|
agent/client
Package client is the controller's end of the HAPTIC agent wire contract (pkg/dataplane/agent/api): one pooled keep-alive HTTP client per pod, a state read and a streaming multipart apply.
|
Package client is the controller's end of the HAPTIC agent wire contract (pkg/dataplane/agent/api): one pooled keep-alive HTTP client per pod, a state read and a streaming multipart apply. |
|
agent/files
Package files owns the manifest-managed file tree of an HAProxy pod: the mount probe, tree hashing, part verification, the backup journal and the transactional write.
|
Package files owns the manifest-managed file tree of an HAProxy pod: the mount probe, tree hashing, part verification, the backup journal and the transactional write. |
|
agent/haproxytest
Package haproxytest serves an in-memory model of the HAProxy runtime over a worker stats socket and a master socket.
|
Package haproxytest serves an in-memory model of the HAProxy runtime over a worker stats socket and a master socket. |
|
agent/server
Package server is the HAPTIC agent: an HTTP endpoint that owns one HAProxy pod's file tree and its runtime socket.
|
Package server is the HAPTIC agent: an HTTP endpoint that owns one HAProxy pod's file tree and its runtime socket. |
|
auxiliaryfiles
Package auxiliaryfiles holds the file types a render produces next to haproxy.cfg: general files (error pages, ACL files), SSL certificates, map files, crt-lists and CA files.
|
Package auxiliaryfiles holds the file types a render produces next to haproxy.cfg: general files (error pages, ACL files), SSL certificates, map files, crt-lists and CA files. |
|
dataplanetest
Package dataplanetest provides test doubles for pkg/dataplane.
|
Package dataplanetest provides test doubles for pkg/dataplane. |
|
deployplan
Package deployplan decides what one pod has to do to reach a render: run runtime ops, write files only, or reload.
|
Package deployplan decides what one pod has to do to reach a render: run runtime ops, write files only, or reload. |
|
planblob
Package planblob is the encoding of the opaque plan a pod stores and hands back on /v1/state: zstd over the plan's JSON, raw bytes on the wire.
|
Package planblob is the encoding of the opaque plan a pod stores and hands back on /v1/state: zstd over the plan's JSON, raw bytes on the wire. |
|
renderartifact
Package renderartifact holds authenticated immutable auxiliary render output.
|
Package renderartifact holds authenticated immutable auxiliary render output. |
|
renderoutput
Package renderoutput binds one rendered configuration to its exact plan and auxiliary artifacts under an authenticated immutable root.
|
Package renderoutput binds one rendered configuration to its exact plan and auxiliary artifacts under an authenticated immutable root. |
|
renderplan
Package renderplan holds the structure a render declares about its own output: the ordered sections of haproxy.cfg, the backend records the generator emitted them from, the map entries, and the file set.
|
Package renderplan holds the structure a render declares about its own output: the ordered sections of haproxy.cfg, the backend records the generator emitted them from, the map entries, and the file set. |
|
Package events provides an event bus for component coordination in the HAPTIC controller.
|
Package events provides an event bus for component coordination in the HAPTIC controller. |
|
ringbuffer
Package ringbuffer provides a thread-safe generic ring buffer implementation.
|
Package ringbuffer provides a thread-safe generic ring buffer implementation. |
|
generated
|
|
|
clientset/versioned/fake
This package has the automatically generated fake clientset.
|
This package has the automatically generated fake clientset. |
|
clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
|
This package contains the scheme of the automatically generated clientset. |
|
clientset/versioned/typed/haproxytemplate/v1alpha1
This package has the automatically generated typed clients.
|
This package has the automatically generated typed clients. |
|
clientset/versioned/typed/haproxytemplate/v1alpha1/fake
Package fake has the automatically generated clients.
|
Package fake has the automatically generated clients. |
|
Package httpstore provides HTTP resource fetching with caching and validation.
|
Package httpstore provides HTTP resource fetching with caching and validation. |
|
Package incremental is a generic incremental computation graph.
|
Package incremental is a generic incremental computation graph. |
|
internal/immutablevector
Package immutablevector owns compact immutable slices behind authenticated roots.
|
Package immutablevector owns compact immutable slices behind authenticated roots. |
|
Package introspection provides a generic debug variable registry and HTTP server for exposing application internal state over HTTP.
|
Package introspection provides a generic debug variable registry and HTTP server for exposing application internal state over HTTP. |
|
k8s
|
|
|
certificates
Package certificates renews certificate authorities and identity Secrets.
|
Package certificates renews certificate authorities and identity Secrets. |
|
client
Package client provides a wrapper around the Kubernetes client-go library.
|
Package client provides a wrapper around the Kubernetes client-go library. |
|
indexer
Package indexer provides functionality for extracting index keys from Kubernetes resources and filtering fields based on JSONPath expressions.
|
Package indexer provides functionality for extracting index keys from Kubernetes resources and filtering fields based on JSONPath expressions. |
|
schemafetcher
Package schemafetcher fetches OpenAPI v3 schemas for each watched Kubernetes resource and hands them to pkg/k8s/typegen for runtime type generation.
|
Package schemafetcher fetches OpenAPI v3 schemas for each watched Kubernetes resource and hands them to pkg/k8s/typegen for runtime type generation. |
|
store
Package store provides storage implementations for indexed Kubernetes resources.
|
Package store provides storage implementations for indexed Kubernetes resources. |
|
typegen
Package typegen translates OpenAPI v3 schemas into runtime reflect.Type values that Scriggo templates can consume with full compile-time field safety.
|
Package typegen translates OpenAPI v3 schemas into runtime reflect.Type values that Scriggo templates can consume with full compile-time field safety. |
|
types
Package types defines core interfaces and types for the k8s package.
|
Package types defines core interfaces and types for the k8s package. |
|
watcher
Package watcher provides Kubernetes resource watching with indexing, field filtering, and debounced callbacks.
|
Package watcher provides Kubernetes resource watching with indexing, field filtering, and debounced callbacks. |
|
Package lifecycle provides component lifecycle management for the controller.
|
Package lifecycle provides component lifecycle management for the controller. |
|
Package persistenttree provides an immutable ordered map with structural sharing: an update returns a new tree sharing every untouched subtree with the old one, so both remain valid and comparable.
|
Package persistenttree provides an immutable ordered map with structural sharing: an update returns a new tree sharing every untouched subtree with the old one, so both remain valid and comparable. |
|
Package rendercontent holds the value types a render produces — Output, TextFragment, Document — and the deltas between two of them.
|
Package rendercontent holds the value types a render produces — Output, TextFragment, Document — and the deltas between two of them. |
|
Package stores provides abstractions for accessing and composing resource stores.
|
Package stores provides abstractions for accessing and composing resource stores. |
|
storetest
Package storetest provides shared mock implementations of stores.Store for testing.
|
Package storetest provides shared mock implementations of stores.Store for testing. |
|
Package transportsecurity provides reloadable mutual TLS for HTTP connections.
|
Package transportsecurity provides reloadable mutual TLS for HTTP connections. |
|
issuance
Package issuance creates identities and bounded CA transition certificates.
|
Package issuance creates identities and bounded CA transition certificates. |
|
tlstest
Package tlstest creates temporary certificate revisions for transport tests.
|
Package tlstest creates temporary certificate revisions for transport tests. |
|
Package webhook provides a pure library for Kubernetes admission webhooks.
|
Package webhook provides a pure library for Kubernetes admission webhooks. |
Click to show internal directories.
Click to hide internal directories.