apis

package
v0.3.6 Latest Latest
Warning

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

Go to latest
Published: Sep 7, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package hwameistor contains hwameistor API versions.

This file ensures Go source parsers acknowledge the hwameistor package and any child packages. It can be removed if any other Go source files are added to this package.

Index

Constants

View Source
const (
	Version = "1.0.0"

	NodeLeaseNamePrefix = "hwameistor-local-storage-worker"

	ControllerLeaseName = "hwameistor-local-storage-master"

	TopologyNodeKey = "topology.lvm.hwameistor.io/node"
)

consts

Variables

This section is empty.

Functions

This section is empty.

Types

type ControllerManager

type ControllerManager interface {
	Run(stopCh <-chan struct{})

	VolumeScheduler() apisv1alpha1.VolumeScheduler

	VolumeGroupManager() apisv1alpha1.VolumeGroupManager

	ReconcileNode(node *apisv1alpha1.LocalStorageNode)

	ReconcileVolume(vol *apisv1alpha1.LocalVolume)

	ReconcileVolumeGroup(volGroup *apisv1alpha1.LocalVolumeGroup)

	ReconcileVolumeExpand(expand *apisv1alpha1.LocalVolumeExpand)

	ReconcileVolumeMigrate(migrate *apisv1alpha1.LocalVolumeMigrate)

	ReconcileVolumeGroupMigrate(lvgmigrate *apisv1alpha1.LocalVolumeGroupMigrate)

	ReconcileVolumeConvert(convert *apisv1alpha1.LocalVolumeConvert)

	ReconcileVolumeGroupConvert(lvgconvert *apisv1alpha1.LocalVolumeGroupConvert)
}

ControllerManager interface

type LocalStorageMember

type LocalStorageMember interface {
	Run(stopCh <-chan struct{})

	// ******  configuration ******* //
	ConfigureBase(name string, namespace string, haSystemConfig apisv1alpha1.SystemConfig, cli client.Client, informersCache cache.Cache) LocalStorageMember

	ConfigureNode() LocalStorageMember

	ConfigureController(scheme *runtime.Scheme) LocalStorageMember

	ConfigureCSIDriver(driverName string, sockAddr string) LocalStorageMember

	ConfigureRESTServer(httpPort int) LocalStorageMember

	// access the modules
	Controller() ControllerManager

	Node() NodeManager

	Name() string

	Version() string

	DriverName() string
}

LocalStorageMember interface //go:generate mockgen -source=member.go -destination=../member/member_mock.go -package=member

type NodeManager

type NodeManager interface {
	Run(stopCh <-chan struct{})

	Storage() *nodestorage.LocalManager

	TakeVolumeReplicaTaskAssignment(vol *apisv1alpha1.LocalVolume)

	ReconcileVolumeReplica(replica *apisv1alpha1.LocalVolumeReplica)
}

NodeManager interface //go:generate mockgen -source=member.go -destination=../member/node/manager_mock.go -package=node

Directories

Path Synopsis
Package v1alpha1 contains API Schema definitions for the localstorage v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=hwameistor.io
Package v1alpha1 contains API Schema definitions for the localstorage v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=hwameistor.io
pkg/mock/member/controller/volumegroup
Package v1alpha1 is a generated GoMock package.
Package v1alpha1 is a generated GoMock package.

Jump to

Keyboard shortcuts

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