common

package
v0.6.1 Latest Latest
Warning

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

Go to latest
Published: Nov 6, 2026 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClusterAccess

type ClusterAccess struct {
	Kubeconfig string `json:"kubeconfig"`
	Namespace  string `json:"namespace,omitempty"`
	Context    string `json:"context,omitempty"`
	Name       string `json:"name,omitempty"`

	// Tumblebug optionally references a cb-tumblebug-managed k8s cluster. When set and
	// Kubeconfig is empty, the kubeconfig is resolved from cb-tumblebug at request time.
	Tumblebug *TumblebugK8sRef `json:"tumblebug,omitempty"`

	// Honeybee optionally references a cm-honeybee connection that holds an on-prem k8s
	// kubeconfig. It is mutually exclusive with Kubeconfig and Tumblebug.
	Honeybee *HoneybeeK8sRef `json:"honeybee,omitempty"`
}

type HoneybeeK8sRef added in v0.6.1

type HoneybeeK8sRef struct {
	SourceGroupID string `json:"sourceGroupId"`
	ConnectionID  string `json:"connectionId"`
}

HoneybeeK8sRef identifies a cm-honeybee connection registered with a kubeconfig so that cm-grasshopper can fetch and decrypt that kubeconfig at request time.

type MultiClusterEnvelope

type MultiClusterEnvelope struct {
	SourceCluster *ClusterAccess `json:"sourceCluster,omitempty"`
	TargetCluster *ClusterAccess `json:"targetCluster,omitempty"`
	Storage       *StorageAccess `json:"storage,omitempty"`
}

type S3Access

type S3Access struct {
	Endpoint  string `json:"endpoint"`
	AccessKey string `json:"accessKey"`
	SecretKey string `json:"secretKey"`
	Bucket    string `json:"bucket,omitempty"`
	// Region is the SigV4 signing region. AWS S3 and MinIO with MINIO_REGION set reject a
	// mismatch; permissive stores ignore it. Empty falls back to DefaultS3RegionName.
	Region string `json:"region,omitempty"`
	// Prefix is the key prefix backups live under inside the bucket. Source and target must
	// agree or the target never sees the backup. Unset falls back to DefaultS3PrefixName;
	// set it to "" to keep backups at the bucket root.
	Prefix *string `json:"prefix,omitempty"`
	UseSSL bool    `json:"useSSL"`
}

S3Access describes credentials for any S3-compatible object store (RustFS, MinIO, Garage, Ceph RGW, AWS S3, ...).

type StorageAccess

type StorageAccess struct {
	S3 *S3Access `json:"s3,omitempty"`
}

type TumblebugK8sRef

type TumblebugK8sRef struct {
	NamespaceID  string `json:"namespaceId"`
	K8sClusterID string `json:"k8sClusterId"`
}

TumblebugK8sRef identifies a Kubernetes cluster deployed through cb-tumblebug so that cm-grasshopper can resolve its kubeconfig (and, for exec-plugin CSPs such as AWS EKS / GCP GKE / NCP NKS, a self-contained token-broker kubeconfig) without any cloud CLI.

Jump to

Keyboard shortcuts

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