Documentation
¶
Index ¶
- type EdgeFunctionRevisionReconciler
- type EdgeFunctionRevisionReconcilerArgs
- type GatewayReconciler
- type Option
- func WithAPIServerTLSClientConfig(tlsConfig *tls.Config) Option
- func WithClickHouseConn(chConn clickhouse.Conn) Option
- func WithClickHouseOptions(opts *clickhouse.Options) Option
- func WithEnvoyContrib() Option
- func WithGoPluginDir(dir string) Option
- func WithOverloadMaxActiveConnections(count uint64) Option
- func WithOverloadMaxHeapSizeBytes(size uint64) Option
- func WithURLRelease(url string) Option
- type ProxyReconciler
- type TunnelNodeReconciler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EdgeFunctionRevisionReconciler ¶
type EdgeFunctionRevisionReconciler struct {
client.Client
// contains filtered or unexported fields
}
EdgeFunctionRevisionReconciler reconciles an EdgeFunctionRevision object representing an edge function executable.
func NewEdgeFunctionRevisionReconciler ¶
func NewEdgeFunctionRevisionReconciler(args EdgeFunctionRevisionReconcilerArgs) *EdgeFunctionRevisionReconciler
NewEdgeFunctionRevisionReconciler returns a new reconcile.Reconciler.
func (*EdgeFunctionRevisionReconciler) Reconcile ¶
func (r *EdgeFunctionRevisionReconciler) Reconcile(ctx context.Context, request reconcile.Request) (ctrl.Result, error)
Reconcile implements reconcile.Reconciler.
func (*EdgeFunctionRevisionReconciler) SetupWithManager ¶
func (r *EdgeFunctionRevisionReconciler) SetupWithManager( ctx context.Context, mgr ctrl.Manager, proxyName string, ) error
SetupWithManager sets up the controller with the Controller Manager.
type EdgeFunctionRevisionReconcilerArgs ¶
type EdgeFunctionRevisionReconcilerArgs struct {
Client client.Client
ReplicaName string
ApiserverHost string
WasmStore manifest.Store
GoStoreDir string
JsStoreDir string
// EdgeRuntime is the legacy per-function runtime.
// Either EdgeRuntime or EdgeController must be set.
EdgeRuntime edgefunc.Runtime
// EdgeController is the new per-namespace controller.
// When set, it takes precedence over EdgeRuntime for JS functions.
EdgeController *edgefuncctrl.EdgeController
DefaultNamespace edgefuncctrl.Namespace
}
EdgeFunctionRevisionReconcilerArgs contains the arguments for creating an EdgeFunctionRevisionReconciler.
type GatewayReconciler ¶
GatewayReconciler reconciles Gateway objects and validates their listeners against the associated Proxy's Envoy configuration.
func NewGatewayReconciler ¶
func NewGatewayReconciler(client client.Client, proxyName string, hc *healthchecker.AggregatedHealthChecker) *GatewayReconciler
NewGatewayReconciler creates a new GatewayReconciler.
func (*GatewayReconciler) Reconcile ¶
func (r *GatewayReconciler) Reconcile(ctx context.Context, request reconcile.Request) (reconcile.Result, error)
Reconcile implements the reconcile.Reconciler interface.
func (*GatewayReconciler) SetupWithManager ¶
func (r *GatewayReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type Option ¶
type Option func(*options)
Option is a functional option for ProxyReconciler.
func WithAPIServerTLSClientConfig ¶
WithAPIServerTLSClientConfig sets the TLS client configuration for the API server. If not set, the client will use an insecure connection.
func WithClickHouseConn ¶
func WithClickHouseConn(chConn clickhouse.Conn) Option
WithClickHouseConn sets the ClickHouse connection for the ProxyReconciler. If not set, log shipping will be disabled.
func WithClickHouseOptions ¶
func WithClickHouseOptions(opts *clickhouse.Options) Option
WithClickHouseOptions sets the ClickHouse options for the ProxyReconciler.
func WithEnvoyContrib ¶
func WithEnvoyContrib() Option
WithEnvoyContrib enables the use of Envoy contrib filters.
func WithGoPluginDir ¶
WithGoPluginDir sets the directory for Go plugins.
func WithOverloadMaxActiveConnections ¶
WithOverloadMaxActiveConnections sets the maximum number of active downstream connections for the Envoy overload manager.
func WithOverloadMaxHeapSizeBytes ¶
WithOverloadMaxHeapSizeBytes sets the maximum heap size in bytes for the Envoy overload manager.
func WithURLRelease ¶
WithURLRelease enables the use of URL release. (Default is GitHub release).
type ProxyReconciler ¶
type ProxyReconciler struct {
client.Client
envoy.Runtime
// contains filtered or unexported fields
}
ProxyReconciler reconciles a Proxy object.
func NewProxyReconciler ¶
func NewProxyReconciler( c client.Client, proxyName string, replicaName string, privateAddr netip.Addr, apiServerHost string, opts ...Option, ) *ProxyReconciler
NewProxyReconciler returns a new reconcile.Reconciler implementation for the Proxy resource.
func (*ProxyReconciler) DownloadEnvoy ¶
func (r *ProxyReconciler) DownloadEnvoy(ctx context.Context) error
func (*ProxyReconciler) SetupWithManager ¶
type TunnelNodeReconciler ¶
TunnelNodeReconciler reconciles TunnelNode objects and manages L3 Geneve tunnels.
func NewTunnelNodeReconciler ¶
func NewTunnelNodeReconciler( c client.Client, proxyName, proxyReplicaName string, localPrivAddr netip.Addr, ) *TunnelNodeReconciler
NewTunnelNodeReconciler returns a new TunnelNode reconciler for Geneve tunnels.
func (*TunnelNodeReconciler) Reconcile ¶
func (r *TunnelNodeReconciler) Reconcile(ctx context.Context, request reconcile.Request) (ctrl.Result, error)
Reconcile implements reconcile.Reconciler.
func (*TunnelNodeReconciler) SetupWithManager ¶
SetupWithManager sets up the controller with the Controller Manager.