installer

package
v1.6.1 Latest Latest
Warning

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

Go to latest
Published: Apr 22, 2021 License: Apache-2.0 Imports: 29 Imported by: 18

Documentation

Index

Constants

View Source
const (
	// VersionMaster tag for the latest manifests
	VersionMaster = "master"

	// test suite names
	CassandraTestSuite = "cassandra"
	CephTestSuite      = "ceph"
	NFSTestSuite       = "nfs"
)
View Source
const (
	// The version from which the upgrade test will start
	Version1_5 = "v1.5.8"
)

Variables

View Source
var (
	NautilusVersion          = cephv1.CephVersionSpec{Image: nautilusTestImage}
	NautilusPartitionVersion = cephv1.CephVersionSpec{Image: nautilusTestImagePartition}
	OctopusVersion           = cephv1.CephVersionSpec{Image: octopusTestImage}
	PacificVersion           = cephv1.CephVersionSpec{Image: pacificTestImage}
	MasterVersion            = cephv1.CephVersionSpec{Image: masterTestImage, AllowUnsupported: true}
)

Functions

func CreateHostPathPVs added in v1.6.0

func CreateHostPathPVs(k8shelper *utils.K8sHelper, count int, readOnly bool, pvcSize string) error

************************************************************************************************ HostPath provisioner functions ************************************************************************************************

func DeleteHostPathPVs added in v1.6.0

func DeleteHostPathPVs(k8shelper *utils.K8sHelper) error

func GetPVC added in v1.6.0

func GetPVC(claimName, namespace, storageClassName, accessModes, size string) string

func GetPVCClone added in v1.6.0

func GetPVCClone(cloneClaimName, parentClaimName, namespace, storageClassName, accessModes, size string) string

func GetPVCRestore added in v1.6.0

func GetPVCRestore(claimName, snapshotName, namespace, storageClassName, accessModes, size string) string

func GetPodWithVolume added in v1.6.0

func GetPodWithVolume(podName, claimName, namespace, mountPath string, readOnly bool) string

func GetSnapshot added in v1.6.0

func GetSnapshot(snapshotName, claimName, snapshotClassName, namespace string) string

func IsAdditionalDeviceAvailableOnCluster added in v0.6.0

func IsAdditionalDeviceAvailableOnCluster() bool

IsAdditionalDeviceAvailableOnCluster checks whether a given device is available to become an OSD

func SkipTestSuite added in v1.1.0

func SkipTestSuite(name string) bool

func StorageClassName added in v1.5.0

func StorageClassName() string

func SystemNamespace added in v0.6.0

func SystemNamespace(namespace string) string

func TestIsOfficialBuild added in v1.4.0

func TestIsOfficialBuild() bool

TestIsOfficialBuild gets the storage provider for which tests should be run

func TestLogCollectionLevel added in v1.4.0

func TestLogCollectionLevel() string

TestLogCollectionLevel gets whether to collect all logs

func TestScratchDevice added in v1.4.0

func TestScratchDevice() string

TestScratchDevice get the scratch device to be used for OSD

func UsePVC added in v1.5.0

func UsePVC() bool

Types

type CassandraInstaller added in v0.9.0

type CassandraInstaller struct {
	T func() *testing.T
	// contains filtered or unexported fields
}

func NewCassandraInstaller added in v0.9.0

func NewCassandraInstaller(k8sHelper *utils.K8sHelper, t func() *testing.T) *CassandraInstaller

func (*CassandraInstaller) CreateCassandraCluster added in v0.9.0

func (ci *CassandraInstaller) CreateCassandraCluster(namespace string, count int, mode cassandrav1alpha1.ClusterMode) error

func (*CassandraInstaller) CreateCassandraOperator added in v0.9.0

func (ci *CassandraInstaller) CreateCassandraOperator(namespace string) error

func (*CassandraInstaller) DeleteCassandraCluster added in v0.9.0

func (ci *CassandraInstaller) DeleteCassandraCluster(namespace string)

func (*CassandraInstaller) GatherAllCassandraLogs added in v0.9.0

func (ci *CassandraInstaller) GatherAllCassandraLogs(systemNamespace, namespace, testName string)

func (*CassandraInstaller) InstallCassandra added in v0.9.0

func (ci *CassandraInstaller) InstallCassandra(systemNamespace, namespace string, count int, mode cassandrav1alpha1.ClusterMode) error

func (*CassandraInstaller) UninstallCassandra added in v0.9.0

func (ci *CassandraInstaller) UninstallCassandra(systemNamespace string, namespace string)

type CassandraManifests added in v0.9.0

type CassandraManifests struct{}

func (*CassandraManifests) GetCassandraCRDs added in v0.9.0

func (i *CassandraManifests) GetCassandraCRDs() string

func (*CassandraManifests) GetCassandraCluster added in v0.9.0

func (i *CassandraManifests) GetCassandraCluster(namespace string, count int, mode cassandrav1alpha1.ClusterMode) string

func (*CassandraManifests) GetCassandraOperator added in v0.9.0

func (i *CassandraManifests) GetCassandraOperator(namespace string) string

type CephInstaller added in v0.9.0

type CephInstaller struct {
	Manifests CephManifests

	T func() *testing.T
	// contains filtered or unexported fields
}

CephInstaller wraps installing and uninstalling rook on a platform

func NewCephInstaller added in v0.9.0

func NewCephInstaller(t func() *testing.T, clientset *kubernetes.Clientset, settings *TestCephSettings) *CephInstaller

NewCephInstaller creates new instance of CephInstaller

func (*CephInstaller) CollectOperatorLog added in v1.1.0

func (h *CephInstaller) CollectOperatorLog(suiteName, testName string)

func (*CephInstaller) CreateCephCluster added in v1.6.0

func (h *CephInstaller) CreateCephCluster() error

CreateCephCluster creates rook cluster via kubectl

func (*CephInstaller) CreateCephOperator added in v0.9.0

func (h *CephInstaller) CreateCephOperator() (err error)

CreateCephOperator creates rook-operator via kubectl

func (*CephInstaller) CreateRookExternalCluster added in v1.3.0

func (h *CephInstaller) CreateRookExternalCluster(externalManifests CephManifests) error

CreateRookExternalCluster creates rook external cluster via kubectl

func (*CephInstaller) CreateRookOperatorViaHelm added in v1.3.0

func (h *CephInstaller) CreateRookOperatorViaHelm(chartSettings string) error

CreateRookOperatorViaHelm creates rook operator via Helm chart named local/rook present in local repo

func (*CephInstaller) CreateRookToolbox added in v1.3.0

func (h *CephInstaller) CreateRookToolbox(manifests CephManifests) (err error)

CreateRookToolbox creates rook-ceph-tools via kubectl

func (*CephInstaller) Execute added in v1.4.0

func (h *CephInstaller) Execute(command string, parameters []string, namespace string) (error, string)

Execute a command in the ceph toolbox

func (*CephInstaller) GatherAllRookLogs added in v0.9.0

func (h *CephInstaller) GatherAllRookLogs(testName string, namespaces ...string)

func (*CephInstaller) GetCleanupPod added in v1.4.0

func (h *CephInstaller) GetCleanupPod(node, removalDir string) string

GetCleanupPod gets a cleanup Pod that cleans up the dataDirHostPath

func (*CephInstaller) GetCleanupVerificationPod added in v1.4.0

func (h *CephInstaller) GetCleanupVerificationPod(node, hostPathDir string) string

GetCleanupVerificationPod verifies that the dataDirHostPath is empty

func (*CephInstaller) GetNodeHostnames added in v0.9.0

func (h *CephInstaller) GetNodeHostnames() ([]string, error)

GetNodeHostnames returns the list of nodes in the k8s cluster

func (*CephInstaller) GetRookExternalClusterMonConfigMap added in v1.2.3

func (h *CephInstaller) GetRookExternalClusterMonConfigMap() (*v1.ConfigMap, error)

GetRookExternalClusterMonConfigMap gets the monitor kubernetes configmap of the external cluster

func (*CephInstaller) GetRookExternalClusterMonSecret added in v1.2.3

func (h *CephInstaller) GetRookExternalClusterMonSecret() (*v1.Secret, error)

GetRookExternalClusterMonSecret gets the monitor kubernetes secret of the external cluster

func (*CephInstaller) InstallRook added in v1.3.0

func (h *CephInstaller) InstallRook() (bool, error)

func (*CephInstaller) UninstallRook added in v0.9.0

func (h *CephInstaller) UninstallRook()

UninstallRook uninstalls rook from k8s

func (*CephInstaller) UninstallRookFromMultipleNS added in v0.9.0

func (h *CephInstaller) UninstallRookFromMultipleNS(manifests ...CephManifests)

UninstallRookFromMultipleNS uninstalls rook from multiple namespaces in k8s

type CephManifests added in v0.9.0

type CephManifests interface {
	Settings() *TestCephSettings
	GetCRDs(k8shelper *utils.K8sHelper) string
	GetOperator() string
	GetCommon() string
	GetCommonExternal() string
	GetCephCluster() string
	GetExternalCephCluster() string
	GetToolbox() string
	GetBlockPool(poolName, replicaSize string) string
	GetBlockStorageClass(poolName, storageClassName, reclaimPolicy string) string
	GetFileStorageClass(fsName, storageClassName string) string
	GetBlockSnapshotClass(snapshotClassName, reclaimPolicy string) string
	GetFileStorageSnapshotClass(snapshotClassName, reclaimPolicy string) string
	GetFilesystem(name string, activeCount int) string
	GetNFS(name, pool string, daemonCount int) string
	GetRBDMirror(name string, daemonCount int) string
	GetObjectStore(name string, replicaCount, port int) string
	GetObjectStoreUser(name, displayName, store string) string
	GetBucketStorageClass(storeName, storageClassName, reclaimPolicy, region string) string
	GetOBC(obcName, storageClassName, bucketName string, maxObject string, createBucket bool) string
	GetClient(name string, caps map[string]string) string
}

func NewCephManifests added in v0.9.0

func NewCephManifests(settings *TestCephSettings) CephManifests

NewCephManifests gets the manifest type depending on the Rook version desired

type CephManifestsMaster added in v0.9.0

type CephManifestsMaster struct {
	// contains filtered or unexported fields
}

CephManifestsMaster wraps rook yaml definitions

func (*CephManifestsMaster) GetBlockPool added in v1.6.0

func (m *CephManifestsMaster) GetBlockPool(poolName string, replicaSize string) string

func (*CephManifestsMaster) GetBlockSnapshotClass added in v1.5.0

func (m *CephManifestsMaster) GetBlockSnapshotClass(snapshotClassName, reclaimPolicy string) string

func (*CephManifestsMaster) GetBlockStorageClass added in v1.6.0

func (m *CephManifestsMaster) GetBlockStorageClass(poolName, storageClassName, reclaimPolicy string) string

func (*CephManifestsMaster) GetBucketStorageClass added in v1.1.0

func (m *CephManifestsMaster) GetBucketStorageClass(storeName, storageClassName, reclaimPolicy, region string) string

GetBucketStorageClass returns the manifest to create object bucket

func (*CephManifestsMaster) GetCRDs added in v1.6.0

func (m *CephManifestsMaster) GetCRDs(k8shelper *utils.K8sHelper) string

func (*CephManifestsMaster) GetCephCluster added in v1.6.0

func (m *CephManifestsMaster) GetCephCluster() string

func (*CephManifestsMaster) GetClient added in v1.2.0

func (m *CephManifestsMaster) GetClient(claimName string, caps map[string]string) string

func (*CephManifestsMaster) GetCommon added in v1.6.0

func (m *CephManifestsMaster) GetCommon() string

func (*CephManifestsMaster) GetCommonExternal added in v1.6.0

func (m *CephManifestsMaster) GetCommonExternal() string

func (*CephManifestsMaster) GetExternalCephCluster added in v1.6.0

func (m *CephManifestsMaster) GetExternalCephCluster() string

func (*CephManifestsMaster) GetFileStorageClass added in v1.6.0

func (m *CephManifestsMaster) GetFileStorageClass(fsName, storageClassName string) string

func (*CephManifestsMaster) GetFileStorageSnapshotClass added in v1.5.0

func (m *CephManifestsMaster) GetFileStorageSnapshotClass(snapshotClassName, reclaimPolicy string) string

func (*CephManifestsMaster) GetFilesystem added in v0.9.0

func (m *CephManifestsMaster) GetFilesystem(name string, activeCount int) string

GetFilesystem returns the manifest to create a Rook filesystem resource with the given config.

func (*CephManifestsMaster) GetNFS added in v1.0.0

func (m *CephManifestsMaster) GetNFS(name, pool string, count int) string

GetFilesystem returns the manifest to create a Rook Ceph NFS resource with the given config.

func (*CephManifestsMaster) GetOBC added in v1.6.0

func (m *CephManifestsMaster) GetOBC(claimName string, storageClassName string, objectBucketName string, maxObject string, varBucketName bool) string

GetOBC returns the manifest to create object bucket claim

func (*CephManifestsMaster) GetObjectStore added in v0.9.0

func (m *CephManifestsMaster) GetObjectStore(name string, replicaCount, port int) string

func (*CephManifestsMaster) GetObjectStoreUser added in v0.9.0

func (m *CephManifestsMaster) GetObjectStoreUser(name string, displayName string, store string) string

func (*CephManifestsMaster) GetOperator added in v1.6.0

func (m *CephManifestsMaster) GetOperator() string

func (*CephManifestsMaster) GetRBDMirror added in v1.4.0

func (m *CephManifestsMaster) GetRBDMirror(name string, count int) string

GetRBDMirror returns the manifest to create a Rook Ceph RBD Mirror resource with the given config.

func (*CephManifestsMaster) GetToolbox added in v1.6.0

func (m *CephManifestsMaster) GetToolbox() string

func (*CephManifestsMaster) Settings added in v1.6.0

func (m *CephManifestsMaster) Settings() *TestCephSettings

type CephManifestsV1_5 added in v1.6.0

type CephManifestsV1_5 struct {
	// contains filtered or unexported fields
}

CephManifestsV1_4 wraps rook yaml definitions

func (*CephManifestsV1_5) GetBlockPool added in v1.6.0

func (m *CephManifestsV1_5) GetBlockPool(poolName, replicaSize string) string

func (*CephManifestsV1_5) GetBlockSnapshotClass added in v1.6.0

func (m *CephManifestsV1_5) GetBlockSnapshotClass(snapshotClassName, reclaimPolicy string) string

func (*CephManifestsV1_5) GetBlockStorageClass added in v1.6.0

func (m *CephManifestsV1_5) GetBlockStorageClass(poolName, storageClassName, reclaimPolicy string) string

func (*CephManifestsV1_5) GetBucketStorageClass added in v1.6.0

func (m *CephManifestsV1_5) GetBucketStorageClass(storeName, storageClassName, reclaimPolicy, region string) string

GetBucketStorageClass returns the manifest to create object bucket

func (*CephManifestsV1_5) GetCRDs added in v1.6.0

func (m *CephManifestsV1_5) GetCRDs(k8shelper *utils.K8sHelper) string

func (*CephManifestsV1_5) GetCephCluster added in v1.6.0

func (m *CephManifestsV1_5) GetCephCluster() string

GetRookCluster returns rook-cluster manifest

func (*CephManifestsV1_5) GetClient added in v1.6.0

func (m *CephManifestsV1_5) GetClient(claimName string, caps map[string]string) string

func (*CephManifestsV1_5) GetCommon added in v1.6.0

func (m *CephManifestsV1_5) GetCommon() string

GetCommon returns rook-cluster manifest

func (*CephManifestsV1_5) GetCommonExternal added in v1.6.0

func (m *CephManifestsV1_5) GetCommonExternal() string

func (*CephManifestsV1_5) GetExternalCephCluster added in v1.6.0

func (m *CephManifestsV1_5) GetExternalCephCluster() string

func (*CephManifestsV1_5) GetFileStorageClass added in v1.6.0

func (m *CephManifestsV1_5) GetFileStorageClass(fsName, storageClassName string) string

func (*CephManifestsV1_5) GetFileStorageSnapshotClass added in v1.6.0

func (m *CephManifestsV1_5) GetFileStorageSnapshotClass(snapshotClassName, reclaimPolicy string) string

func (*CephManifestsV1_5) GetFilesystem added in v1.6.0

func (m *CephManifestsV1_5) GetFilesystem(name string, activeCount int) string

GetFilesystem returns the manifest to create a Rook filesystem resource with the given config.

func (*CephManifestsV1_5) GetNFS added in v1.6.0

func (m *CephManifestsV1_5) GetNFS(name, pool string, count int) string

GetFilesystem returns the manifest to create a Rook Ceph NFS resource with the given config.

func (*CephManifestsV1_5) GetOBC added in v1.6.0

func (m *CephManifestsV1_5) GetOBC(claimName, storageClassName, objectBucketName, maxObject string, varBucketName bool) string

GetOBC returns the manifest to create object bucket claim

func (*CephManifestsV1_5) GetObjectStore added in v1.6.0

func (m *CephManifestsV1_5) GetObjectStore(name string, replicaCount, port int) string

func (*CephManifestsV1_5) GetObjectStoreUser added in v1.6.0

func (m *CephManifestsV1_5) GetObjectStoreUser(name string, displayName string, store string) string

func (*CephManifestsV1_5) GetOperator added in v1.6.0

func (m *CephManifestsV1_5) GetOperator() string

GetRookOperator returns rook Operator manifest

func (*CephManifestsV1_5) GetRBDMirror added in v1.6.0

func (m *CephManifestsV1_5) GetRBDMirror(name string, count int) string

GetRBDMirror returns the manifest to create a Rook Ceph RBD Mirror resource with the given config.

func (*CephManifestsV1_5) GetToolbox added in v1.6.0

func (m *CephManifestsV1_5) GetToolbox() string

GetRookToolBox returns rook-toolbox manifest

func (*CephManifestsV1_5) Settings added in v1.6.0

func (m *CephManifestsV1_5) Settings() *TestCephSettings

type NFSInstaller added in v0.9.0

type NFSInstaller struct {
	T func() *testing.T
	// contains filtered or unexported fields
}

func NewNFSInstaller added in v0.9.0

func NewNFSInstaller(k8shelper *utils.K8sHelper, t func() *testing.T) *NFSInstaller

func (*NFSInstaller) CreateNFSServer added in v0.9.0

func (h *NFSInstaller) CreateNFSServer(namespace string, count int, storageClassName string) error

CreateNFSServer creates the NFS Server CRD instance

func (*NFSInstaller) CreateNFSServerOperator added in v0.9.0

func (h *NFSInstaller) CreateNFSServerOperator(namespace string) error

CreateNFSServerOperator creates nfs server in the provided namespace

func (*NFSInstaller) CreateNFSServerVolume added in v0.9.0

func (h *NFSInstaller) CreateNFSServerVolume(namespace string) error

CreateNFSServerVolume creates NFS export PV and PVC

func (*NFSInstaller) GatherAllNFSServerLogs added in v0.9.0

func (h *NFSInstaller) GatherAllNFSServerLogs(systemNamespace, namespace, testName string)

GatherAllNFSServerLogs gathers all NFS Server logs

func (*NFSInstaller) InstallNFSServer added in v0.9.0

func (h *NFSInstaller) InstallNFSServer(systemNamespace, namespace string, count int) error

InstallNFSServer installs NFS operator, NFS CRD instance and NFS volume

func (*NFSInstaller) UninstallNFSServer added in v0.9.0

func (h *NFSInstaller) UninstallNFSServer(systemNamespace, namespace string)

UninstallNFSServer uninstalls the NFS Server from the given namespace

type NFSManifests added in v0.9.0

type NFSManifests struct {
}

func (*NFSManifests) GetNFSServer added in v0.9.0

func (i *NFSManifests) GetNFSServer(namespace string, count int, storageClassName string) string

GetNFSServer returns NFSServer CRD instance definition

func (*NFSManifests) GetNFSServerCRDs added in v0.9.0

func (i *NFSManifests) GetNFSServerCRDs() string

GetNFSServerCRDs returns NFSServer CRD definition

func (*NFSManifests) GetNFSServerOperator added in v0.9.0

func (i *NFSManifests) GetNFSServerOperator(namespace string) string

GetNFSServerOperator returns the NFSServer operator definition

func (*NFSManifests) GetNFSServerPV added in v0.9.0

func (i *NFSManifests) GetNFSServerPV(namespace string, clusterIP string) string

GetNFSServerPV returns NFSServer PV definition

func (*NFSManifests) GetNFSServerPVC added in v0.9.0

func (i *NFSManifests) GetNFSServerPVC(namespace string) string

GetNFSServerPVC returns NFSServer PVC definition

type TestCephSettings added in v1.6.0

type TestCephSettings struct {
	DataDirHostPath           string
	ClusterName               string
	Namespace                 string
	OperatorNamespace         string
	StorageClassName          string
	UseHelm                   bool
	UsePVC                    bool
	Mons                      int
	UseCrashPruner            bool
	MultipleMgrs              bool
	SkipOSDCreation           bool
	UseCSI                    bool
	EnableDiscovery           bool
	EnableAdmissionController bool
	IsExternal                bool
	SkipClusterCleanup        bool
	SkipCleanupPolicy         bool
	DirectMountToolbox        bool
	EnableVolumeReplication   bool
	RookVersion               string
	CephVersion               cephv1.CephVersionSpec
}

TestCephSettings struct for handling panic and test suite tear down

func (*TestCephSettings) ApplyEnvVars added in v1.6.0

func (s *TestCephSettings) ApplyEnvVars()

Jump to

Keyboard shortcuts

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