service

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Jun 10, 2019 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// KeyStoragePool is the key used to get the storagepool name from the
	// volume create parameters map
	KeyStoragePool = "storagepool"

	// DefaultVolumeSizeKiB is default volume sgolang/protobuf/blob/master/ptypesize to create on a scaleIO
	// cluster when no size is given, expressed in KiB
	DefaultVolumeSizeKiB = 16 * kiBytesInGiB

	// VolSizeMultipleGiB is the volume size that VxFlexOS creates volumes as
	// a multiple of, meaning that all volume sizes are a multiple of this
	// number
	VolSizeMultipleGiB = 8

	VolumeIDList = "VolumeIDList"

	TRUE  = "TRUE"
	FALSE = "FALSE"
)
View Source
const (
	// EnvEndpoint is the name of the enviroment variable used to set the
	// HTTP endpoint of the ScaleIO Gateway
	EnvEndpoint = "X_CSI_VXFLEXOS_ENDPOINT"

	// EnvUser is the name of the enviroment variable used to set the
	// username when authenticating to the ScaleIO Gateway
	EnvUser = "X_CSI_VXFLEXOS_USER"

	// EnvPassword is the name of the enviroment variable used to set the
	// user's password when authenticating to the ScaleIO Gateway
	EnvPassword = "X_CSI_VXFLEXOS_PASSWORD"

	// EnvInsecure is the name of the enviroment variable used to specify
	// that the ScaleIO Gateway's certificate chain and host name should not
	// be verified
	EnvInsecure = "X_CSI_VXFLEXOS_INSECURE"

	// EnvSystemName is the name of the enviroment variable used to set the
	// name of the ScaleIO system to interact with
	EnvSystemName = "X_CSI_VXFLEXOS_SYSTEMNAME"

	// EnvSDCGUID is the name of the enviroment variable used to set the
	// GUID of the SDC. This is only used by the Node Service, and removes
	// a need for calling an external binary to retrieve the GUID
	EnvSDCGUID = "X_CSI_VXFLEXOS_SDCGUID"

	// EnvThick is the name of the enviroment variable used to specify
	// that thick provisioning should be used when creating volumes
	EnvThick = "X_CSI_VXFLEXOS_THICKPROVISIONING"

	// EnvAutoProbe is the name of the environment variable used to specify
	// that the controller service should automatically probe itself if it
	// receives incoming requests before having been probed, in direct
	// violation of the CSI spec
	EnvAutoProbe = "X_CSI_VXFLEXOS_AUTOPROBE"
)
View Source
const (
	// Name is the name of the CSI plug-in.
	Name = "csi-vxflexos.dellemc.com"

	// KeyThickProvisioning is the key used to get a flag indicating that
	// a volume should be thick provisioned from the volume create params
	KeyThickProvisioning = "thickprovisioning"
)

Variables

View Source
var Manifest = map[string]string{
	"url":    "http://github.com/dell/csi-vxflexos",
	"semver": core.SemVer,
	"commit": core.CommitSha32,
	"formed": core.CommitTime.Format(time.RFC1123),
}

Manifest is the SP's manifest.

Functions

This section is empty.

Types

type Device

type Device struct {
	FullPath string
	Name     string
	RealDev  string
}

Device is a struct for holding details about a block device

func GetDevice

func GetDevice(path string) (*Device, error)

GetDevice returns a Device struct with info about the given device, or an error if it doesn't exist or is not a block device

type Opts

type Opts struct {
	Endpoint                   string
	User                       string
	Password                   string
	SystemName                 string
	SdcGUID                    string
	Insecure                   bool
	Thick                      bool
	AutoProbe                  bool
	DisableCerts               bool   // used for unit testing only
	Lsmod                      string // used for unit testing only
	EnableSnapshotCGDelete     bool   // when snapshot deleted, enable deleting of all snaps in the CG of the snapshot
	EnableListVolumesSnapshots bool   // when listing volumes, include snapshots and volumes
}

Opts defines service configuration options.

type Service

Service is the CSI Mock service provider.

func New

func New() Service

New returns a new Service.

Jump to

Keyboard shortcuts

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