Documentation ¶
Index ¶
- func ApplyCRDs(kubeConfig *rest.Config) error
- func NukeWebhooks(namespacesToNuke []string)
- func Teardown(e *Environment, wasFailure bool)
- type Environment
- type Machine
- func (m *Machine) CreateQuarksStatefulSet(namespace string, ess qstsv1a1.QuarksStatefulSet) (*qstsv1a1.QuarksStatefulSet, machine.TearDownFunc, error)
- func (m *Machine) CreateStatefulSet(namespace string, res appsv1.StatefulSet) (machine.TearDownFunc, error)
- func (m *Machine) DeleteQuarksStatefulSet(namespace string, name string) error
- func (m *Machine) ExecPodCMD(client kubernetes.Interface, rc *rest.Config, pod *corev1.Pod, ...) (bool, error)
- func (m *Machine) GetNamespaceEvents(namespace, name, id, reason, msg string) (bool, error)
- func (m *Machine) GetQuarksStatefulSet(namespace string, name string) (*qstsv1a1.QuarksStatefulSet, error)
- func (m *Machine) GetStatefulSet(namespace string, name string) (*appsv1.StatefulSet, error)
- func (m *Machine) PVAvailable(name string) (bool, error)
- func (m *Machine) PVCsDeleted(namespace string) (bool, error)
- func (m *Machine) PVsDeleted(labels string) (bool, error)
- func (m *Machine) PatchPod(namespace string, name string, o string, p string, v string) error
- func (m *Machine) PodLabelToExist(n string, podName string, label string) (bool, error)
- func (m *Machine) PodLabelToNotExist(n string, podName string, label string) (bool, error)
- func (m *Machine) QuarksStatefulSetExists(namespace string, labels string) (bool, error)
- func (m *Machine) StatefulSetExist(namespace string, name string) (bool, error)
- func (m *Machine) StatefulSetNewGeneration(namespace string, name string, generation int64) (bool, error)
- func (m *Machine) StatefulSetRunning(namespace string, name string) (bool, error)
- func (m *Machine) UpdateQuarksStatefulSet(namespace string, ess qstsv1a1.QuarksStatefulSet) (*qstsv1a1.QuarksStatefulSet, machine.TearDownFunc, error)
- func (m *Machine) WaitForPV(name string) error
- func (m *Machine) WaitForPVCsDelete(namespace string) error
- func (m *Machine) WaitForPVsDelete(labels string) error
- func (m *Machine) WaitForPodLabelToExist(n string, podName string, label string) error
- func (m *Machine) WaitForPodLabelToNotExist(n string, podName string, label string) error
- func (m *Machine) WaitForQuarksStatefulSets(namespace string, labels string) error
- func (m *Machine) WaitForStatefulSet(namespace string, name string) error
- func (m *Machine) WaitForStatefulSetDelete(namespace string, name string) error
- func (m *Machine) WaitForStatefulSetNewGeneration(namespace string, name string, currentVersion int64) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NukeWebhooks ¶
func NukeWebhooks(namespacesToNuke []string)
NukeWebhooks nukes all webhooks at the end of the run
func Teardown ¶
func Teardown(e *Environment, wasFailure bool)
Teardown removes the setup after each test
Types ¶
type Environment ¶
type Environment struct { *utils.Environment Machine testing.Catalog }
Environment starts our operator and handles interaction with the k8s cluster used in the tests
func NewEnvironment ¶
func NewEnvironment(kubeConfig *rest.Config) *Environment
NewEnvironment returns a new struct
func (*Environment) SetupClientsets ¶
func (e *Environment) SetupClientsets() error
SetupClientsets initializes kube clientsets
func (*Environment) SetupNamespace ¶
func (e *Environment) SetupNamespace() error
SetupNamespace creates the namespace and the clientsets and prepares the teardowm
func (*Environment) StartOperator ¶
func (e *Environment) StartOperator() error
StartOperator prepares and starts the operator
type Machine ¶
Machine produces and destroys resources for tests
func (*Machine) CreateQuarksStatefulSet ¶
func (m *Machine) CreateQuarksStatefulSet(namespace string, ess qstsv1a1.QuarksStatefulSet) (*qstsv1a1.QuarksStatefulSet, machine.TearDownFunc, error)
CreateQuarksStatefulSet creates a QuarksStatefulSet custom resource and returns a function to delete it
func (*Machine) CreateStatefulSet ¶
func (m *Machine) CreateStatefulSet(namespace string, res appsv1.StatefulSet) (machine.TearDownFunc, error)
CreateStatefulSet creates a statefulset and returns a function to delete it
func (*Machine) DeleteQuarksStatefulSet ¶
DeleteQuarksStatefulSet deletes a QuarksStatefulSet custom resource
func (*Machine) ExecPodCMD ¶
func (m *Machine) ExecPodCMD(client kubernetes.Interface, rc *rest.Config, pod *corev1.Pod, container string, command []string) (bool, error)
ExecPodCMD executes a cmd in a container
func (*Machine) GetNamespaceEvents ¶
GetNamespaceEvents exits as soon as an event reason and msg matches
func (*Machine) GetQuarksStatefulSet ¶
func (m *Machine) GetQuarksStatefulSet(namespace string, name string) (*qstsv1a1.QuarksStatefulSet, error)
GetQuarksStatefulSet gets a QuarksStatefulSet custom resource
func (*Machine) GetStatefulSet ¶
GetStatefulSet gets a StatefulSet by namespace and name
func (*Machine) PVAvailable ¶
PVAvailable returns true if the pv by that name is in state available
func (*Machine) PVCsDeleted ¶
PVCsDeleted returns true if the all pvs are deleted
func (*Machine) PVsDeleted ¶
PVsDeleted returns true if the all pvs are deleted
func (*Machine) PatchPod ¶
PatchPod applies a patch into a specific pod operation can be of the form add,remove,replace See https://tools.ietf.org/html/rfc6902 for more information
func (*Machine) PodLabelToExist ¶
PodLabelToExist returns true if the label exist in the specified pod
func (*Machine) PodLabelToNotExist ¶
PodLabelToNotExist returns true if the label does not exist
func (*Machine) QuarksStatefulSetExists ¶
QuarksStatefulSetExists returns true if at least one ess selected by labels exists
func (*Machine) StatefulSetExist ¶
StatefulSetExist checks if the statefulSet exists
func (*Machine) StatefulSetNewGeneration ¶
func (m *Machine) StatefulSetNewGeneration(namespace string, name string, generation int64) (bool, error)
StatefulSetNewGeneration returns true if StatefulSet has a new generation greater `generation`
func (*Machine) StatefulSetRunning ¶
StatefulSetRunning returns true if the statefulSet by that name has all pods created
func (*Machine) UpdateQuarksStatefulSet ¶
func (m *Machine) UpdateQuarksStatefulSet(namespace string, ess qstsv1a1.QuarksStatefulSet) (*qstsv1a1.QuarksStatefulSet, machine.TearDownFunc, error)
UpdateQuarksStatefulSet updates a QuarksStatefulSet custom resource and returns a function to delete it
func (*Machine) WaitForPVCsDelete ¶
WaitForPVCsDelete blocks until the pvc is deleted. It fails after the timeout.
func (*Machine) WaitForPVsDelete ¶
WaitForPVsDelete blocks until the pv is deleted. It fails after the timeout.
func (*Machine) WaitForPodLabelToExist ¶
WaitForPodLabelToExist blocks until the specified label appears
func (*Machine) WaitForPodLabelToNotExist ¶
WaitForPodLabelToNotExist blocks until the specified label is not present
func (*Machine) WaitForQuarksStatefulSets ¶
WaitForQuarksStatefulSets blocks until at least one QuarksStatefulSet is found. It fails after the timeout.
func (*Machine) WaitForStatefulSet ¶
WaitForStatefulSet blocks until all statefulSet pods are running. It fails after the timeout.
func (*Machine) WaitForStatefulSetDelete ¶
WaitForStatefulSetDelete blocks until the specified statefulSet is deleted
func (*Machine) WaitForStatefulSetNewGeneration ¶
func (m *Machine) WaitForStatefulSetNewGeneration(namespace string, name string, currentVersion int64) error
WaitForStatefulSetNewGeneration blocks until at least one StatefulSet is found, which has a generation greater than currentVersion. It fails after the timeout.