Documentation
¶
Index ¶
- Constants
- func AppendBindingEnvOverrides(envVars []corev1.EnvVar, info *transportpb.BindingInfo) []corev1.EnvVar
- func AppendTransportHeartbeatEnv(envVars []corev1.EnvVar, interval time.Duration) []corev1.EnvVar
- func AppendTransportMetadataEnv(envVars []corev1.EnvVar, info *transportpb.BindingInfo) []corev1.EnvVar
- func BindingEnvOverrides(info *transportpb.BindingInfo) map[string]string
- func DecodeBindingInfo(value string) (*transportpb.BindingInfo, error)
- func EncodeBindingEnvelope(ref BindingReference, info *transportpb.BindingInfo) (string, error)
- func NormalizeStartupCapabilitiesMode(mode string) (string, error)
- func SanitizeBindingAnnotationValue(value string) string
- func SetOrReplaceEnvVar(envVars []corev1.EnvVar, env corev1.EnvVar) []corev1.EnvVar
- func ValidateProtocolVersion(version string) error
- type BindingPayload
- type BindingReference
Constants ¶
const ( // ProtocolVersion defines the transport contract version shared across hub, connector, and SDK. ProtocolVersion = "1.0.0" // ProtocolMetadataKey is the gRPC metadata key used to advertise the protocol version. ProtocolMetadataKey = "bubu-transport-protocol" // StartupCapabilitiesMetadataKey declares whether an initial // connector.capabilities snapshot is expected during startup. It is carried // on connector.ready and mirrored into the connector -> hub stream metadata // for passive hub-side observation. StartupCapabilitiesMetadataKey = "startup.capabilities" // StartupCapabilitiesRequired means the connector will send an initial // connector.capabilities update as part of startup. StartupCapabilitiesRequired = "required" // StartupCapabilitiesNone means the connector has no initial capability // snapshot to send during startup. StartupCapabilitiesNone = "none" )
Variables ¶
This section is empty.
Functions ¶
func AppendBindingEnvOverrides ¶
func AppendBindingEnvOverrides(envVars []corev1.EnvVar, info *transportpb.BindingInfo) []corev1.EnvVar
AppendBindingEnvOverrides injects provider-specific env overrides encoded in the binding payload, validating env var names to prevent invalid workloads.
func AppendTransportHeartbeatEnv ¶
AppendTransportHeartbeatEnv surfaces the heartbeat interval so runtimes can tune their own watchdogs without parsing controller config.
func AppendTransportMetadataEnv ¶
func AppendTransportMetadataEnv(envVars []corev1.EnvVar, info *transportpb.BindingInfo) []corev1.EnvVar
AppendTransportMetadataEnv adds convenience env vars derived from BindingInfo so runtimes can avoid re-parsing the transport envelope.
func BindingEnvOverrides ¶
func BindingEnvOverrides(info *transportpb.BindingInfo) map[string]string
BindingEnvOverrides returns the sanitized env override map encoded inside a BindingInfo payload so non-controller workflows (connectors, SDKs) can apply the shared parsing logic without duplicating it.
func DecodeBindingInfo ¶
func DecodeBindingInfo(value string) (*transportpb.BindingInfo, error)
DecodeBindingInfo extracts the BindingInfo proto from a serialized binding envelope.
func EncodeBindingEnvelope ¶
func EncodeBindingEnvelope(ref BindingReference, info *transportpb.BindingInfo) (string, error)
EncodeBindingEnvelope serializes binding metadata into the shared JSON payload consumed by controllers, connectors, and SDK helpers.
func NormalizeStartupCapabilitiesMode ¶ added in v0.1.1
NormalizeStartupCapabilitiesMode validates the startup capability declaration and returns the normalized mode.
func SanitizeBindingAnnotationValue ¶
SanitizeBindingAnnotationValue converts the serialized binding envelope into the canonical "namespace/name" annotation value (or just name when namespace is empty). Returns "" on failure.
func SetOrReplaceEnvVar ¶
SetOrReplaceEnvVar replaces the env var with the same name if it exists or appends it otherwise, returning the updated slice.
func ValidateProtocolVersion ¶
ValidateProtocolVersion checks that the provided version matches this runtime exactly.
Types ¶
type BindingPayload ¶
type BindingPayload struct {
Reference BindingReference
Info *transportpb.BindingInfo
Raw string
}
BindingPayload represents the parsed contents of a serialized binding env value.
func ParseBindingPayload ¶
func ParseBindingPayload(value string) (BindingPayload, error)
ParseBindingPayload returns the parsed binding reference, binding info, and raw payload.
type BindingReference ¶
BindingReference identifies a TransportBinding (namespace/name).