service

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2017 License: Apache-2.0 Imports: 23 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 size to create on a scaleIO
	// cluster when no size is given, expressed in KiB
	DefaultVolumeSizeKiB = 16 * kiBytesInGiB

	// VolSizeMultipleGiB is the volume size that ScaleIO creates volumes as
	// a multiple of, meaning that all volume sizes are a multiple of this
	// number
	VolSizeMultipleGiB = 8
)
View Source
const (
	// EnvEndpoint is the name of the enviroment variable used to set the
	// HTTP endpoint of the ScaleIO Gateway
	EnvEndpoint = "X_CSI_SCALEIO_ENDPOINT"

	// EnvUser is the name of the enviroment variable used to set the
	// username when authenticating to the ScaleIO Gateway
	EnvUser = "X_CSI_SCALEIO_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_SCALEIO_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_SCALEIO_INSECURE"

	// EnvSystemName is the name of the enviroment variable used to set the
	// name of the ScaleIO system to interact with
	EnvSystemName = "X_CSI_SCALEIO_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_SCALEIO_SDCGUID"

	// EnvThick is the name of the enviroment variable used to specify
	// that thick provisioning should be used when creating volumes
	EnvThick = "X_CSI_SCALEIO_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_SCALEIO_AUTOPROBE"
)
View Source
const (
	// Name is the name of the CSI plug-in.
	Name = "com.thecodeteam.scaleio"

	// SupportedVersions is a list of supported CSI versions.
	SupportedVersions = "0.1.0"

	// 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":    "https://github.com/thecodeteam/csi-scaleio",
	"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
}

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