Help us shape the future of Go! Take the 2026 Go Developer Survey

pkg/

directory
v0.9.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 30, 2026 License: Apache-2.0

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL