suites

package
v1.4.0 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2024 License: Apache-2.0 Imports: 37 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultSnapPrefix is snapshot prefix
	DefaultSnapPrefix = "snap"
	// ControllerLogsSleepTime is controller logs sleep time
	ControllerLogsSleepTime = 20
)

Variables

This section is empty.

Functions

func FindDriverLogs

func FindDriverLogs(command []string) (string, error)

FindDriverLogs executes command and returns the output

func GetSnapshotClient

func GetSnapshotClient(namespace string, client *k8sclient.KubeClient) (*snapv1client.SnapshotClient, *snapbetaclient.SnapshotClient, error)

GetSnapshotClient returns snapshot client

Types

type BlockSnapSuite

type BlockSnapSuite struct {
	SnapClass   string
	VolumeSize  string
	Description string
	AccessMode  string
	Image       string
}

BlockSnapSuite is used to manage block snapshot test suite

func (*BlockSnapSuite) GetClients

func (bss *BlockSnapSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, metrics, snapshot clients

func (*BlockSnapSuite) GetName

func (bss *BlockSnapSuite) GetName() string

GetName returns block snap test suite name

func (*BlockSnapSuite) GetNamespace

func (*BlockSnapSuite) GetNamespace() string

GetNamespace returns block snap test suite namespace

func (*BlockSnapSuite) GetObservers

func (*BlockSnapSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*BlockSnapSuite) Parameters

func (bss *BlockSnapSuite) Parameters() string

Parameters returns formatted string of parameters

func (*BlockSnapSuite) Run

func (bss *BlockSnapSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes block snapshot test suite

type CapacityTrackingSuite

type CapacityTrackingSuite struct {
	DriverNamespace string
	StorageClass    string
	VolumeSize      string
	Image           string
	PollInterval    time.Duration
}

CapacityTrackingSuite is used to manage storage capacity tracking test suite

func (*CapacityTrackingSuite) GetClients

func (cts *CapacityTrackingSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, metrics, storage class, CSI storage capacity clients

func (*CapacityTrackingSuite) GetName

func (cts *CapacityTrackingSuite) GetName() string

GetName returns storage capacity tracking suite name

func (*CapacityTrackingSuite) GetNamespace

func (cts *CapacityTrackingSuite) GetNamespace() string

GetNamespace returns storage capacity tracking suite namespace

func (*CapacityTrackingSuite) GetObservers

func (cts *CapacityTrackingSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*CapacityTrackingSuite) Parameters

func (cts *CapacityTrackingSuite) Parameters() string

Parameters returns formatted string of parameters

func (*CapacityTrackingSuite) Run

func (cts *CapacityTrackingSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run runs storage capacity tracking test suite

type CloneVolumeSuite

type CloneVolumeSuite struct {
	VolumeNumber  int
	VolumeSize    string
	PodNumber     int
	CustomPvcName string
	CustomPodName string
	Description   string
	AccessMode    string
	Image         string
}

CloneVolumeSuite is used to manage clone volume suite test suite

func (*CloneVolumeSuite) GetClients

func (cs *CloneVolumeSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, metrics clients

func (*CloneVolumeSuite) GetName

func (cs *CloneVolumeSuite) GetName() string

GetName returns clone volume suite test name

func (*CloneVolumeSuite) GetNamespace

func (*CloneVolumeSuite) GetNamespace() string

GetNamespace returns clone volume suite test namespace

func (*CloneVolumeSuite) GetObservers

func (cs *CloneVolumeSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*CloneVolumeSuite) Parameters

func (cs *CloneVolumeSuite) Parameters() string

Parameters returns formatted string of parameters

func (*CloneVolumeSuite) Run

func (cs *CloneVolumeSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes clone volume test suite

type ClonedVolDeletionSuite

type ClonedVolDeletionSuite struct {
	*DeletionStruct
	PodName string
}

ClonedVolDeletionSuite is used to manage cloned volume deletion test suite

func (*ClonedVolDeletionSuite) GetClients

func (pds *ClonedVolDeletionSuite) GetClients(_ string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pod, pvc, metrics, va clients

func (*ClonedVolDeletionSuite) GetName

func (pds *ClonedVolDeletionSuite) GetName() string

GetName returns cloned volume deletion test suite name

func (*ClonedVolDeletionSuite) GetNamespace

func (pds *ClonedVolDeletionSuite) GetNamespace() string

GetNamespace returns cloned volume deletion suite namespace

func (*ClonedVolDeletionSuite) GetObservers

func (*ClonedVolDeletionSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns pod, pvc, va, entitynumber, containermetrics observers

func (*ClonedVolDeletionSuite) Parameters

func (pds *ClonedVolDeletionSuite) Parameters() string

Parameters returns format string

func (*ClonedVolDeletionSuite) Run

func (pds *ClonedVolDeletionSuite) Run(ctx context.Context, _ string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run to delete the volume created by name and namespace as cli params

type DeletionStruct

type DeletionStruct struct {
	Name        string
	Namespace   string
	Description string
}

DeletionStruct is used by volume deletion suite

type EphemeralVolumeSuite

type EphemeralVolumeSuite struct {
	PodCustomName    string
	Description      string
	PodNumber        int
	Driver           string
	FSType           string
	Image            string
	VolumeAttributes map[string]string
}

EphemeralVolumeSuite is used to manage ephemeral volume test suite

func (*EphemeralVolumeSuite) GetClients

func (*EphemeralVolumeSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pod, va, metrics clients

func (*EphemeralVolumeSuite) GetName

func (ep *EphemeralVolumeSuite) GetName() string

GetName returns ephemeral volume suite name

func (*EphemeralVolumeSuite) GetNamespace

func (*EphemeralVolumeSuite) GetNamespace() string

GetNamespace returns ephemeral volume suite namespace

func (*EphemeralVolumeSuite) GetObservers

func (*EphemeralVolumeSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns pod, va, containermetrics observers

func (*EphemeralVolumeSuite) Parameters

func (ep *EphemeralVolumeSuite) Parameters() string

Parameters returns parameters string

func (*EphemeralVolumeSuite) Run

func (ep *EphemeralVolumeSuite) Run(ctx context.Context, _ string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run runs ephemeral volume test suite

type Interface

type Interface interface {
	Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)
	GetName() string
	GetObservers(obsType observer.Type) []observer.Interface
	GetClients(string, *k8sclient.KubeClient) (*k8sclient.Clients, error)
	GetNamespace() string
	Parameters() string
}

Interface contains common function specifications

type MultiAttachSuite

type MultiAttachSuite struct {
	PodNumber   int
	RawBlock    bool
	Description string
	AccessMode  string
	VolumeSize  string
	Image       string
}

MultiAttachSuite is used to manage multi attach test suite

func (*MultiAttachSuite) GenerateTopologySpreadConstraints

func (mas *MultiAttachSuite) GenerateTopologySpreadConstraints(nodeCount int, labels map[string]string) []v1.TopologySpreadConstraint

GenerateTopologySpreadConstraints creates and returns topology spread constraints

func (*MultiAttachSuite) GetClients

func (mas *MultiAttachSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, metrics (and node) clients

func (*MultiAttachSuite) GetName

func (mas *MultiAttachSuite) GetName() string

GetName returns multi attach suite name

func (*MultiAttachSuite) GetNamespace

func (*MultiAttachSuite) GetNamespace() string

GetNamespace returns multi attach suite namespace

func (*MultiAttachSuite) GetObservers

func (mas *MultiAttachSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*MultiAttachSuite) Parameters

func (mas *MultiAttachSuite) Parameters() string

Parameters returns formatted string of parameters

func (*MultiAttachSuite) Run

func (mas *MultiAttachSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes multi attach test suite

type NodeDrainSuite

type NodeDrainSuite struct {
	Name               string
	Namespace          string
	Description        string
	DisableEviction    bool
	GracePeriodSeconds int
}

NodeDrainSuite is used to manage node drain test suite

func (*NodeDrainSuite) GetClients

func (nds *NodeDrainSuite) GetClients(_ string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns node, pod, pvc, va, statefulset, metrics clients

func (*NodeDrainSuite) GetName

func (nds *NodeDrainSuite) GetName() string

GetName returns node drain suite name

func (*NodeDrainSuite) GetNamespace

func (nds *NodeDrainSuite) GetNamespace() string

GetNamespace returns node drain suite namespace

func (*NodeDrainSuite) GetObservers

func (*NodeDrainSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns pod, pvc, va, entitynumber, containermetrics observers

func (*NodeDrainSuite) Parameters

func (nds *NodeDrainSuite) Parameters() string

Parameters returns format string

func (*NodeDrainSuite) Run

func (nds *NodeDrainSuite) Run(ctx context.Context, _ string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run to delete the volume created by name and namespace as cli params

type NodeUncordonSuite

type NodeUncordonSuite struct {
	Name        string
	Description string
	Namespace   string
}

NodeUncordonSuite is used to manage node uncordon test suite

func (*NodeUncordonSuite) GetClients

func (nds *NodeUncordonSuite) GetClients(_ string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns node, pod, pvc, va, metrics clients

func (*NodeUncordonSuite) GetName

func (nds *NodeUncordonSuite) GetName() string

GetName returns node uncordon test suite name

func (*NodeUncordonSuite) GetNamespace

func (nds *NodeUncordonSuite) GetNamespace() string

GetNamespace returns node uncordon suite namespace

func (*NodeUncordonSuite) GetObservers

func (*NodeUncordonSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns pod, pvc, va, entitynumber, containermetrics observers

func (*NodeUncordonSuite) Parameters

func (nds *NodeUncordonSuite) Parameters() string

Parameters returns format string

func (*NodeUncordonSuite) Run

func (nds *NodeUncordonSuite) Run(ctx context.Context, _ string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run to delete the volume created by name and namespace as cli params

type PodDeletionSuite

type PodDeletionSuite struct {
	*DeletionStruct
}

PodDeletionSuite is used for managing pod deletion test suite

func (*PodDeletionSuite) GetClients

func (pds *PodDeletionSuite) GetClients(_ string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pod, pvc, va, metrics clients

func (*PodDeletionSuite) GetName

func (pds *PodDeletionSuite) GetName() string

GetName returns pod deletion suite name

func (*PodDeletionSuite) GetNamespace

func (pds *PodDeletionSuite) GetNamespace() string

GetNamespace returns pod deletion suite namespace

func (*PodDeletionSuite) GetObservers

func (*PodDeletionSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns pod, pvc, va, entitynumber, containermetrics observers

func (*PodDeletionSuite) Parameters

func (pds *PodDeletionSuite) Parameters() string

Parameters returns format string

func (*PodDeletionSuite) Run

func (pds *PodDeletionSuite) Run(ctx context.Context, _ string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run to delete the volume created by name and namespace as cli params

type PostgresqlSuite

type PostgresqlSuite struct {
	ConfigPath        string
	VolumeSize        string
	EnableReplication bool
	Image             string
	SlaveReplicas     int
}

PostgresqlSuite configuration struct

func (*PostgresqlSuite) GetClients

func (*PostgresqlSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, metrics clients

func (*PostgresqlSuite) GetName

func (ps *PostgresqlSuite) GetName() string

GetName returns PostgresqlSuite name

func (*PostgresqlSuite) GetNamespace

func (*PostgresqlSuite) GetNamespace() string

GetNamespace returns PostgresqlSuite namespace

func (*PostgresqlSuite) GetObservers

func (*PostgresqlSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*PostgresqlSuite) Parameters

func (ps *PostgresqlSuite) Parameters() string

Parameters returns formatted string of parameters

func (*PostgresqlSuite) Run

func (ps *PostgresqlSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes the test suite

type ProvisioningSuite

type ProvisioningSuite struct {
	VolumeNumber  int
	VolumeSize    string
	PodCustomName string
	Description   string
	PodNumber     int
	RawBlock      bool
	VolAccessMode string
	ROFlag        bool
	Image         string
}

ProvisioningSuite is used to manage provisioning test suite

func (*ProvisioningSuite) GetClients

func (*ProvisioningSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients returns pvc, pod, va, metrics clients

func (*ProvisioningSuite) GetName

func (ps *ProvisioningSuite) GetName() string

GetName returns provisioning suite name

func (*ProvisioningSuite) GetNamespace

func (*ProvisioningSuite) GetNamespace() string

GetNamespace returns provisioning suite namespace

func (*ProvisioningSuite) GetObservers

func (*ProvisioningSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*ProvisioningSuite) Parameters

func (ps *ProvisioningSuite) Parameters() string

Parameters returns formatted string of parameters

func (*ProvisioningSuite) Run

func (ps *ProvisioningSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes provisioning test suite

type RemoteReplicationProvisioningSuite

type RemoteReplicationProvisioningSuite struct {
	VolumeNumber     int
	VolumeSize       string
	Description      string
	VolAccessMode    string
	RemoteConfigPath string
	NoFailover       bool
	Image            string
}

RemoteReplicationProvisioningSuite is used to manage remote replication provisioning test suite

func (*RemoteReplicationProvisioningSuite) GetClients

GetClients creates and returns pvc, pod, pv, va, metrics, sc, rg clients

func (*RemoteReplicationProvisioningSuite) GetName

GetName returns remote replication provisioning suite name

func (*RemoteReplicationProvisioningSuite) GetNamespace

GetNamespace returns remote replication provisioning suite namespace

func (*RemoteReplicationProvisioningSuite) GetObservers

GetObservers returns all observers

func (*RemoteReplicationProvisioningSuite) Parameters

func (rrps *RemoteReplicationProvisioningSuite) Parameters() string

Parameters returns formatted string of parameters

func (*RemoteReplicationProvisioningSuite) Run

func (rrps *RemoteReplicationProvisioningSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes remote replication provisioning test suite

type ReplicationSuite

type ReplicationSuite struct {
	VolumeNumber int
	VolumeSize   string
	PodNumber    int
	SnapClass    string
	Image        string
}

ReplicationSuite is used to manage replication test suite

func (*ReplicationSuite) GetClients

func (rs *ReplicationSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, metrics, snapshot clients

func (*ReplicationSuite) GetName

func (*ReplicationSuite) GetName() string

GetName returns replication suite name

func (*ReplicationSuite) GetNamespace

func (*ReplicationSuite) GetNamespace() string

GetNamespace returns replication suite namespace

func (*ReplicationSuite) GetObservers

func (rs *ReplicationSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*ReplicationSuite) Parameters

func (rs *ReplicationSuite) Parameters() string

Parameters returns formatted string of parameters

func (*ReplicationSuite) Run

func (rs *ReplicationSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes replication test suite

type ScalingSuite

type ScalingSuite struct {
	ReplicaNumber    int
	VolumeNumber     int
	GradualScaleDown bool
	PodPolicy        string
	VolumeSize       string
	Image            string
}

ScalingSuite is used to manage scaling test suite

func (*ScalingSuite) GetClients

func (ss *ScalingSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, statefulset, metrics clients

func (*ScalingSuite) GetName

func (ss *ScalingSuite) GetName() string

GetName returns scaling test suite name

func (*ScalingSuite) GetNamespace

func (ss *ScalingSuite) GetNamespace() string

GetNamespace returns scaling test suite namespace

func (*ScalingSuite) GetObservers

func (ss *ScalingSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*ScalingSuite) Parameters

func (ss *ScalingSuite) Parameters() string

Parameters returns formatted string of parameters

func (*ScalingSuite) Run

func (ss *ScalingSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes scaling test suite

type SnapSuite

type SnapSuite struct {
	SnapAmount         int
	SnapClass          string
	VolumeSize         string
	Description        string
	CustomSnapName     string
	AccessModeOriginal string
	AccessModeRestored string
	Image              string
}

SnapSuite is used to manage snap test suite

func (*SnapSuite) GetClients

func (ss *SnapSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, metrics, snapsnot clients

func (*SnapSuite) GetName

func (ss *SnapSuite) GetName() string

GetName returns snap suite name

func (*SnapSuite) GetNamespace

func (*SnapSuite) GetNamespace() string

GetNamespace returns snap suite namespaces

func (*SnapSuite) GetObservers

func (*SnapSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*SnapSuite) Parameters

func (ss *SnapSuite) Parameters() string

Parameters returns formatted string of paramters

func (*SnapSuite) Run

func (ss *SnapSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes snap test suite

type SnapshotDeletionSuite

type SnapshotDeletionSuite struct {
	*DeletionStruct
}

SnapshotDeletionSuite is used for managing snapshot deletion test suite

func (*SnapshotDeletionSuite) GetClients

func (sds *SnapshotDeletionSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pod, pvc, va, metrics, snapshot clients

func (*SnapshotDeletionSuite) GetName

func (sds *SnapshotDeletionSuite) GetName() string

GetName returns snapshot deletion suite name

func (*SnapshotDeletionSuite) GetNamespace

func (sds *SnapshotDeletionSuite) GetNamespace() string

GetNamespace returns snapshot deletion suite namespace

func (*SnapshotDeletionSuite) GetObservers

func (*SnapshotDeletionSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns pod, pvc, va, entitynumber and containermetrics observers

func (*SnapshotDeletionSuite) Parameters

func (sds *SnapshotDeletionSuite) Parameters() string

Parameters returns format string

func (*SnapshotDeletionSuite) Run

func (sds *SnapshotDeletionSuite) Run(ctx context.Context, _ string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run to snaphot the volume created by name and namespace as cli params

type VolumeCreationSuite

type VolumeCreationSuite struct {
	VolumeNumber int
	Description  string
	VolumeSize   string
	CustomName   string
	AccessMode   string
	RawBlock     bool
}

VolumeCreationSuite is used to manage volume creation test suite

func (*VolumeCreationSuite) GetClients

func (*VolumeCreationSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc and metrics clients

func (*VolumeCreationSuite) GetName

func (vcs *VolumeCreationSuite) GetName() string

GetName returns volume creation suite name

func (*VolumeCreationSuite) GetNamespace

func (*VolumeCreationSuite) GetNamespace() string

GetNamespace returns volume creation suite name

func (*VolumeCreationSuite) GetObservers

func (*VolumeCreationSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns pvc, entity number, container metrics observers

func (*VolumeCreationSuite) Parameters

func (vcs *VolumeCreationSuite) Parameters() string

Parameters returns formatted string of parameters

func (*VolumeCreationSuite) Run

func (vcs *VolumeCreationSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes volume creation test suite

type VolumeDeletionSuite

type VolumeDeletionSuite struct {
	*DeletionStruct
}

VolumeDeletionSuite is used for managing volume deletion test suite

func (*VolumeDeletionSuite) GetClients

func (vds *VolumeDeletionSuite) GetClients(_ string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns PVC and Metrics clients

func (*VolumeDeletionSuite) GetName

func (vds *VolumeDeletionSuite) GetName() string

GetName returns volume deletion suite name

func (*VolumeDeletionSuite) GetNamespace

func (vds *VolumeDeletionSuite) GetNamespace() string

GetNamespace returns volume deletion suite namespace

func (*VolumeDeletionSuite) GetObservers

func (*VolumeDeletionSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns pvc, entitynumber and container observers

func (*VolumeDeletionSuite) Parameters

func (vds *VolumeDeletionSuite) Parameters() string

Parameters is returns format string

func (*VolumeDeletionSuite) Run

func (vds *VolumeDeletionSuite) Run(ctx context.Context, _ string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run to delete the volume created by name and namespace as cli params

type VolumeExpansionSuite

type VolumeExpansionSuite struct {
	VolumeNumber int
	PodNumber    int
	IsBlock      bool
	InitialSize  string
	ExpandedSize string
	Description  string
	AccessMode   string
	Image        string
}

VolumeExpansionSuite is used to manage volume expansion test suite

func (*VolumeExpansionSuite) GetClients

func (*VolumeExpansionSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, metrics clients

func (*VolumeExpansionSuite) GetName

func (ves *VolumeExpansionSuite) GetName() string

GetName returns volume expansion suite name

func (*VolumeExpansionSuite) GetNamespace

func (*VolumeExpansionSuite) GetNamespace() string

GetNamespace returns volume expansion suite namespace

func (*VolumeExpansionSuite) GetObservers

func (*VolumeExpansionSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*VolumeExpansionSuite) Parameters

func (ves *VolumeExpansionSuite) Parameters() string

Parameters returns formatted string of parameters

func (*VolumeExpansionSuite) Run

func (ves *VolumeExpansionSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes volume expansion test suite

type VolumeGroupSnapSuite

type VolumeGroupSnapSuite struct {
	SnapClass       string
	VolumeSize      string
	AccessMode      string
	VolumeGroupName string
	VolumeLabel     string
	ReclaimPolicy   string
	VolumeNumber    int
	Driver          string
	Image           string
}

VolumeGroupSnapSuite is used to manage volume group snap test suite

func (*VolumeGroupSnapSuite) GetClients

func (vgs *VolumeGroupSnapSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, va, vgs clients

func (*VolumeGroupSnapSuite) GetName

func (vgs *VolumeGroupSnapSuite) GetName() string

GetName returns volume group snap test suite name

func (*VolumeGroupSnapSuite) GetNamespace

func (*VolumeGroupSnapSuite) GetNamespace() string

GetNamespace returns volume group snap test suite namespace

func (*VolumeGroupSnapSuite) GetObservers

func (*VolumeGroupSnapSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*VolumeGroupSnapSuite) Parameters

func (vgs *VolumeGroupSnapSuite) Parameters() string

Parameters returns formatted string of parameters

func (*VolumeGroupSnapSuite) Run

func (vgs *VolumeGroupSnapSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes volume group snap test suite

type VolumeHealthMetricsSuite

type VolumeHealthMetricsSuite struct {
	VolumeNumber int
	PodNumber    int
	VolumeSize   string
	Description  string
	AccessMode   string
	Namespace    string
	Image        string
}

VolumeHealthMetricsSuite is used to manage volume health metrics test suite

func (*VolumeHealthMetricsSuite) GetClients

func (*VolumeHealthMetricsSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pod, pv, va, metrics clients

func (*VolumeHealthMetricsSuite) GetName

func (vh *VolumeHealthMetricsSuite) GetName() string

GetName returns volume health metrics suite name

func (*VolumeHealthMetricsSuite) GetNamespace

func (*VolumeHealthMetricsSuite) GetNamespace() string

GetNamespace returns volume health metrics test suite namespace

func (*VolumeHealthMetricsSuite) GetObservers

func (*VolumeHealthMetricsSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*VolumeHealthMetricsSuite) Parameters

func (vh *VolumeHealthMetricsSuite) Parameters() string

Parameters returns formatted string of parameters

func (*VolumeHealthMetricsSuite) Run

func (vh *VolumeHealthMetricsSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes volume health metrics test suite

type VolumeIoSuite

type VolumeIoSuite struct {
	VolumeNumber int
	VolumeSize   string
	ChainNumber  int
	ChainLength  int
	Image        string
}

VolumeIoSuite is used to manage volume IO test suite

func (*VolumeIoSuite) GetClients

func (*VolumeIoSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients returns pvc, pod, va, metrics clients

func (*VolumeIoSuite) GetName

func (*VolumeIoSuite) GetName() string

GetName returns volume IO test suite name

func (*VolumeIoSuite) GetNamespace

func (*VolumeIoSuite) GetNamespace() string

GetNamespace returns volume IO test suite namespace

func (*VolumeIoSuite) GetObservers

func (*VolumeIoSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*VolumeIoSuite) Parameters

func (vis *VolumeIoSuite) Parameters() string

Parameters returns formatted string of parameters

func (*VolumeIoSuite) Run

func (vis *VolumeIoSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes volume IO test suite

type VolumeMigrateSuite

type VolumeMigrateSuite struct {
	TargetSC     string
	Description  string
	VolumeNumber int
	PodNumber    int
	Flag         bool
	Image        string
}

VolumeMigrateSuite is used to manage volume migrate test suite

func (*VolumeMigrateSuite) GetClients

func (vms *VolumeMigrateSuite) GetClients(namespace string, client *k8sclient.KubeClient) (*k8sclient.Clients, error)

GetClients creates and returns pvc, pv, sc, pod, statefulset, va, metrics clients

func (*VolumeMigrateSuite) GetName

func (vms *VolumeMigrateSuite) GetName() string

GetName returns volume migrate test suite name

func (*VolumeMigrateSuite) GetNamespace

func (*VolumeMigrateSuite) GetNamespace() string

GetNamespace returns volume migrate test suite namespace

func (*VolumeMigrateSuite) GetObservers

func (*VolumeMigrateSuite) GetObservers(obsType observer.Type) []observer.Interface

GetObservers returns all observers

func (*VolumeMigrateSuite) Parameters

func (vms *VolumeMigrateSuite) Parameters() string

Parameters returns formatted string of parameters

func (*VolumeMigrateSuite) Run

func (vms *VolumeMigrateSuite) Run(ctx context.Context, storageClass string, clients *k8sclient.Clients) (delFunc func() error, e error)

Run executes volume migrate test suite

Jump to

Keyboard shortcuts

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