Documentation
¶
Overview ¶
Package cnpgi provides the implementation of the CNPG-I interfaces for the operator.
Index ¶
- Constants
- func InjectPluginVolumePodSpec(spec *corev1.PodSpec, mainContainerName string)
- type CNPGI
- type IdentityImplementation
- func (i IdentityImplementation) GetPluginCapabilities(_ context.Context, _ *identity.GetPluginCapabilitiesRequest) (*identity.GetPluginCapabilitiesResponse, error)
- func (i IdentityImplementation) GetPluginMetadata(_ context.Context, _ *identity.GetPluginMetadataRequest) (*identity.GetPluginMetadataResponse, error)
- func (i IdentityImplementation) Probe(_ context.Context, _ *identity.ProbeRequest) (*identity.ProbeResponse, error)
- type LifecycleImplementation
- func (impl LifecycleImplementation) GetCapabilities(_ context.Context, _ *lifecycle.OperatorLifecycleCapabilitiesRequest) (*lifecycle.OperatorLifecycleCapabilitiesResponse, error)
- func (impl LifecycleImplementation) LifecycleHook(ctx context.Context, request *lifecycle.OperatorLifecycleRequest) (*lifecycle.OperatorLifecycleResponse, error)
- type ReconcilerImplementation
- func (r ReconcilerImplementation) GetCapabilities(_ context.Context, _ *reconciler.ReconcilerHooksCapabilitiesRequest) (*reconciler.ReconcilerHooksCapabilitiesResult, error)
- func (r ReconcilerImplementation) Post(_ context.Context, _ *reconciler.ReconcilerHooksRequest) (*reconciler.ReconcilerHooksResult, error)
- func (r ReconcilerImplementation) Pre(ctx context.Context, request *reconciler.ReconcilerHooksRequest) (*reconciler.ReconcilerHooksResult, error)
Constants ¶
const KlioPluginContainerName = "klio-plugin"
KlioPluginContainerName is the name of the Klio plugin sidecar container that handles backup creation and management in PostgreSQL pods.
Variables ¶
This section is empty.
Functions ¶
func InjectPluginVolumePodSpec ¶
InjectPluginVolumePodSpec injects the plugin volume into a CNPG Pod spec.
Types ¶
type CNPGI ¶
type CNPGI struct {
Client client.Client
ServerCertPath string
ServerKeyPath string
ClientCertPath string
ServerAddress string
HaveSecurityContextConstraints bool
}
CNPGI implementation for the operator.
type IdentityImplementation ¶
type IdentityImplementation struct {
identity.UnimplementedIdentityServer
}
IdentityImplementation is the implementation of the CNPG-i Identity entrypoint.
func (IdentityImplementation) GetPluginCapabilities ¶
func (i IdentityImplementation) GetPluginCapabilities( _ context.Context, _ *identity.GetPluginCapabilitiesRequest, ) (*identity.GetPluginCapabilitiesResponse, error)
GetPluginCapabilities implements identity.
func (IdentityImplementation) GetPluginMetadata ¶
func (i IdentityImplementation) GetPluginMetadata( _ context.Context, _ *identity.GetPluginMetadataRequest, ) (*identity.GetPluginMetadataResponse, error)
GetPluginMetadata implements Identity.
func (IdentityImplementation) Probe ¶
func (i IdentityImplementation) Probe( _ context.Context, _ *identity.ProbeRequest, ) (*identity.ProbeResponse, error)
Probe implements Identity.
type LifecycleImplementation ¶
type LifecycleImplementation struct {
lifecycle.UnimplementedOperatorLifecycleServer
Client client.Client
HaveSecurityContextConstraints bool
}
LifecycleImplementation is the implementation of the lifecycle handler.
func (LifecycleImplementation) GetCapabilities ¶
func (impl LifecycleImplementation) GetCapabilities( _ context.Context, _ *lifecycle.OperatorLifecycleCapabilitiesRequest, ) (*lifecycle.OperatorLifecycleCapabilitiesResponse, error)
GetCapabilities exposes the lifecycle capabilities.
func (LifecycleImplementation) LifecycleHook ¶
func (impl LifecycleImplementation) LifecycleHook( ctx context.Context, request *lifecycle.OperatorLifecycleRequest, ) (*lifecycle.OperatorLifecycleResponse, error)
LifecycleHook is called when creating Kubernetes services.
type ReconcilerImplementation ¶
type ReconcilerImplementation struct {
reconciler.UnimplementedReconcilerHooksServer
Client client.Client
}
ReconcilerImplementation implements the CNPG-I reconciler hooks for Klio. The Pre hook gates reconciliation when a PluginConfiguration is missing, returning BEHAVIOR_REQUEUE so the cluster waits gracefully instead of entering an unrecoverable error state.
func (ReconcilerImplementation) GetCapabilities ¶
func (r ReconcilerImplementation) GetCapabilities( _ context.Context, _ *reconciler.ReconcilerHooksCapabilitiesRequest, ) (*reconciler.ReconcilerHooksCapabilitiesResult, error)
GetCapabilities implements the Reconciler interface.
func (ReconcilerImplementation) Post ¶
func (r ReconcilerImplementation) Post( _ context.Context, _ *reconciler.ReconcilerHooksRequest, ) (*reconciler.ReconcilerHooksResult, error)
Post is called after the reconciliation loop.
func (ReconcilerImplementation) Pre ¶
func (r ReconcilerImplementation) Pre( ctx context.Context, request *reconciler.ReconcilerHooksRequest, ) (*reconciler.ReconcilerHooksResult, error)
Pre is called before each reconciliation loop. It checks that all required PluginConfiguration resources exist. When one is missing, it returns BEHAVIOR_REQUEUE so CNPG retries without entering an error state.