Documentation ¶
Index ¶
- Constants
- func ContextForManagerSync(parent context.Context, sc *scyllav1.ScyllaCluster) (context.Context, context.CancelFunc)
- func ContextForPodStartup(parent context.Context) (context.Context, context.CancelFunc)
- func ContextForRollout(parent context.Context, sc *scyllav1.ScyllaCluster) (context.Context, context.CancelFunc)
- func ExecWithOptions(client corev1client.CoreV1Interface, options ExecOptions) (string, string, error)
- func GetBroadcastAddress(ctx context.Context, client corev1client.CoreV1Interface, ...) (string, error)
- func GetBroadcastAddresses(ctx context.Context, client corev1client.CoreV1Interface, ...) ([]string, error)
- func GetBroadcastRPCAddress(ctx context.Context, client corev1client.CoreV1Interface, ...) (string, error)
- func GetBroadcastRPCAddresses(ctx context.Context, client corev1client.CoreV1Interface, ...) ([]string, error)
- func GetBroadcastRPCAddressesAndUUIDs(ctx context.Context, client corev1client.CoreV1Interface, ...) ([]string, []string, error)
- func GetBroadcastRPCAddressesAndUUIDsByDC(ctx context.Context, dcClientMap map[string]corev1client.CoreV1Interface, ...) (map[string][]string, map[string][]string, error)
- func GetDaemonSetsForNodeConfig(ctx context.Context, client appv1client.AppsV1Interface, ...) ([]*appsv1.DaemonSet, error)
- func GetIdentityServiceIP(ctx context.Context, client corev1client.CoreV1Interface, ...) (string, error)
- func GetManagerClient(ctx context.Context, client corev1client.CoreV1Interface) (*managerclient.Client, error)
- func GetMatchingNodesForNodeConfig(ctx context.Context, nodeGetter corev1client.NodesGetter, ...) ([]*corev1.Node, error)
- func GetMemberCount(sc *scyllav1.ScyllaCluster) int32
- func GetMemberServiceSelector(scyllaClusterName string) labels.Selector
- func GetNodeName(sc *scyllav1.ScyllaCluster, idx int) string
- func GetNodesPodIPs(ctx context.Context, client corev1client.CoreV1Interface, ...) ([]string, error)
- func GetNodesServiceAndPodIPs(ctx context.Context, client corev1client.CoreV1Interface, ...) ([]string, error)
- func GetNodesServiceIPs(ctx context.Context, client corev1client.CoreV1Interface, ...) ([]string, error)
- func GetScyllaClient(ctx context.Context, client corev1client.CoreV1Interface, ...) (*scyllaclient.Client, []string, error)
- func GetScyllaConfigClient(ctx context.Context, client corev1client.CoreV1Interface, ...) (*scyllaclient.ConfigClient, error)
- func GetServerTLSCertificates(address string, tlsConfig *tls.Config) ([]*x509.Certificate, error)
- func GetStatefulSetsForScyllaCluster(ctx context.Context, client appv1client.AppsV1Interface, ...) (map[string]*appsv1.StatefulSet, error)
- func IsNodeConfigDoneWithNodeTuningFunc(nodes []*corev1.Node) func(nc *scyllav1alpha1.NodeConfig) (bool, error)
- func IsNodeConfigDoneWithNodes(nodes []*corev1.Node) func(nc *scyllav1alpha1.NodeConfig) (bool, error)
- func IsNodeConfigRolledOut(nc *scyllav1alpha1.NodeConfig) (bool, error)
- func IsScyllaClusterRolledOut(sc *scyllav1.ScyllaCluster) (bool, error)
- func IsScyllaDBMonitoringRolledOut(sm *scyllav1alpha1.ScyllaDBMonitoring) (bool, error)
- func PodIsRunning(pod *corev1.Pod) (bool, error)
- func RolloutTimeoutForScyllaCluster(sc *scyllav1.ScyllaCluster) time.Duration
- func RunEphemeralContainerAndWaitForCompletion(ctx context.Context, client corev1client.PodInterface, podName string, ...) (*corev1.Pod, error)
- func SyncTimeoutForScyllaCluster(sc *scyllav1.ScyllaCluster) time.Duration
- func WaitForFullMultiDCQuorum(ctx context.Context, dcClientMap map[string]corev1client.CoreV1Interface, ...) error
- func WaitUntilServingCertificateIsLive(ctx context.Context, client corev1client.CoreV1Interface, ...) error
- func WithSession(session *gocqlx.Session) func(*DataInserter)
- type DataInserter
- func (di *DataInserter) AwaitSchemaAgreement(ctx context.Context) error
- func (di *DataInserter) Close()
- func (di *DataInserter) GetExpected() []*TestData
- func (di *DataInserter) Insert() error
- func (di *DataInserter) Read() ([]*TestData, error)
- func (di *DataInserter) SetClientEndpoints(hosts []string) error
- type DataInserterOption
- type ExecOptions
- type ObjectObserver
- type ObserverEvent
- type TestData
Constants ¶
View Source
const ( // SyncTimeout is the maximum time the sync loop can last. In normal circumstances this is in the order // of seconds but there are special cases we need to account for. Like when the sync loop generates new keys // and signs certificates it can take several seconds. When the CI creates multiple clusters in parallel on // a constrained CPU, one cert can easily take over 30s. SyncTimeout = 2 * time.Minute )
Variables ¶
This section is empty.
Functions ¶
func ContextForManagerSync ¶
func ContextForManagerSync(parent context.Context, sc *scyllav1.ScyllaCluster) (context.Context, context.CancelFunc)
func ContextForPodStartup ¶ added in v1.9.0
func ContextForRollout ¶
func ContextForRollout(parent context.Context, sc *scyllav1.ScyllaCluster) (context.Context, context.CancelFunc)
func ExecWithOptions ¶ added in v1.9.0
func ExecWithOptions(client corev1client.CoreV1Interface, options ExecOptions) (string, string, error)
ExecWithOptions executes a command in the specified container, returning stdout, stderr and error. `options` allowed for additional parameters to be passed.
func GetBroadcastAddress ¶ added in v1.12.0
func GetBroadcastAddress(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster, svc *corev1.Service, pod *corev1.Pod) (string, error)
func GetBroadcastAddresses ¶ added in v1.12.0
func GetBroadcastAddresses(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) ([]string, error)
func GetBroadcastRPCAddress ¶ added in v1.12.0
func GetBroadcastRPCAddress(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster, svc *corev1.Service) (string, error)
func GetBroadcastRPCAddresses ¶ added in v1.12.0
func GetBroadcastRPCAddresses(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) ([]string, error)
func GetBroadcastRPCAddressesAndUUIDs ¶ added in v1.12.0
func GetBroadcastRPCAddressesAndUUIDs(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) ([]string, []string, error)
func GetBroadcastRPCAddressesAndUUIDsByDC ¶ added in v1.12.0
func GetBroadcastRPCAddressesAndUUIDsByDC(ctx context.Context, dcClientMap map[string]corev1client.CoreV1Interface, scs []*scyllav1.ScyllaCluster) (map[string][]string, map[string][]string, error)
func GetDaemonSetsForNodeConfig ¶
func GetDaemonSetsForNodeConfig(ctx context.Context, client appv1client.AppsV1Interface, nc *scyllav1alpha1.NodeConfig) ([]*appsv1.DaemonSet, error)
func GetIdentityServiceIP ¶ added in v1.12.0
func GetIdentityServiceIP(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) (string, error)
func GetManagerClient ¶
func GetManagerClient(ctx context.Context, client corev1client.CoreV1Interface) (*managerclient.Client, error)
GetManagerClient gets managerClient using IP address. E2E tests shouldn't rely on InCluster DNS.
func GetMatchingNodesForNodeConfig ¶
func GetMatchingNodesForNodeConfig(ctx context.Context, nodeGetter corev1client.NodesGetter, nc *scyllav1alpha1.NodeConfig) ([]*corev1.Node, error)
func GetMemberCount ¶
func GetMemberCount(sc *scyllav1.ScyllaCluster) int32
func GetMemberServiceSelector ¶ added in v1.8.0
func GetNodeName ¶
func GetNodeName(sc *scyllav1.ScyllaCluster, idx int) string
func GetNodesPodIPs ¶ added in v1.11.0
func GetNodesPodIPs(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) ([]string, error)
func GetNodesServiceAndPodIPs ¶ added in v1.11.0
func GetNodesServiceAndPodIPs(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) ([]string, error)
func GetNodesServiceIPs ¶ added in v1.11.0
func GetNodesServiceIPs(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) ([]string, error)
func GetScyllaClient ¶
func GetScyllaClient(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) (*scyllaclient.Client, []string, error)
func GetScyllaConfigClient ¶ added in v1.10.0
func GetScyllaConfigClient(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster, host string) (*scyllaclient.ConfigClient, error)
func GetServerTLSCertificates ¶ added in v1.8.0
func GetStatefulSetsForScyllaCluster ¶
func GetStatefulSetsForScyllaCluster(ctx context.Context, client appv1client.AppsV1Interface, sc *scyllav1.ScyllaCluster) (map[string]*appsv1.StatefulSet, error)
func IsNodeConfigDoneWithNodeTuningFunc ¶
func IsNodeConfigDoneWithNodeTuningFunc(nodes []*corev1.Node) func(nc *scyllav1alpha1.NodeConfig) (bool, error)
func IsNodeConfigDoneWithNodes ¶ added in v1.9.0
func IsNodeConfigDoneWithNodes(nodes []*corev1.Node) func(nc *scyllav1alpha1.NodeConfig) (bool, error)
func IsNodeConfigRolledOut ¶
func IsNodeConfigRolledOut(nc *scyllav1alpha1.NodeConfig) (bool, error)
func IsScyllaClusterRolledOut ¶
func IsScyllaClusterRolledOut(sc *scyllav1.ScyllaCluster) (bool, error)
func IsScyllaDBMonitoringRolledOut ¶ added in v1.9.0
func IsScyllaDBMonitoringRolledOut(sm *scyllav1alpha1.ScyllaDBMonitoring) (bool, error)
func RolloutTimeoutForScyllaCluster ¶
func RolloutTimeoutForScyllaCluster(sc *scyllav1.ScyllaCluster) time.Duration
func RunEphemeralContainerAndWaitForCompletion ¶ added in v1.8.0
func RunEphemeralContainerAndWaitForCompletion(ctx context.Context, client corev1client.PodInterface, podName string, ec *corev1.EphemeralContainer) (*corev1.Pod, error)
func SyncTimeoutForScyllaCluster ¶
func SyncTimeoutForScyllaCluster(sc *scyllav1.ScyllaCluster) time.Duration
func WaitForFullMultiDCQuorum ¶ added in v1.12.0
func WaitForFullMultiDCQuorum(ctx context.Context, dcClientMap map[string]corev1client.CoreV1Interface, scs []*scyllav1.ScyllaCluster) error
func WaitUntilServingCertificateIsLive ¶ added in v1.11.0
func WaitUntilServingCertificateIsLive(ctx context.Context, client corev1client.CoreV1Interface, sc *scyllav1.ScyllaCluster) error
func WithSession ¶ added in v1.11.0
func WithSession(session *gocqlx.Session) func(*DataInserter)
Types ¶
type DataInserter ¶ added in v1.8.0
type DataInserter struct {
// contains filtered or unexported fields
}
func NewDataInserter ¶ added in v1.8.0
func NewDataInserter(hosts []string, options ...DataInserterOption) (*DataInserter, error)
func NewMultiDCDataInserter ¶ added in v1.11.0
func NewMultiDCDataInserter(dcHosts map[string][]string, options ...DataInserterOption) (*DataInserter, error)
func (*DataInserter) AwaitSchemaAgreement ¶ added in v1.9.0
func (di *DataInserter) AwaitSchemaAgreement(ctx context.Context) error
func (*DataInserter) Close ¶ added in v1.8.0
func (di *DataInserter) Close()
func (*DataInserter) GetExpected ¶ added in v1.8.0
func (di *DataInserter) GetExpected() []*TestData
func (*DataInserter) Insert ¶ added in v1.8.0
func (di *DataInserter) Insert() error
func (*DataInserter) Read ¶ added in v1.8.0
func (di *DataInserter) Read() ([]*TestData, error)
func (*DataInserter) SetClientEndpoints ¶ added in v1.8.0
func (di *DataInserter) SetClientEndpoints(hosts []string) error
SetClientEndpoints creates a new session and closes a previous session if it existed. In case an error was returned, DataInserter can no Longer be used.
type DataInserterOption ¶ added in v1.11.0
type DataInserterOption func(*DataInserter)
type ExecOptions ¶ added in v1.9.0
type ExecOptions struct { Command []string Namespace string PodName string ContainerName string Stdin io.Reader CaptureStdout bool CaptureStderr bool }
ExecOptions passed to ExecWithOptions
type ObjectObserver ¶ added in v1.10.0
type ObjectObserver[T kubeinterfaces.ObjectInterface] struct { Events []ObserverEvent[T] // contains filtered or unexported fields }
func ObserveObjects ¶ added in v1.10.0
func ObserveObjects[T kubeinterfaces.ObjectInterface](lw cache.ListerWatcher) ObjectObserver[T]
func (*ObjectObserver[T]) Start ¶ added in v1.10.0
func (o *ObjectObserver[T]) Start(ctx context.Context) error
func (*ObjectObserver[T]) Stop ¶ added in v1.10.0
func (o *ObjectObserver[T]) Stop() ([]ObserverEvent[T], error)
type ObserverEvent ¶ added in v1.10.0
type ObserverEvent[T kubeinterfaces.ObjectInterface] struct { Action watchutils.EventType Obj T }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.