Documentation
¶
Index ¶
- Constants
- func CheckVolumeSizeLimits(requestedSizeInt uint64, config *CommonStorageDriverConfig) (bool, uint64, error)
- func GetCommonInternalVolumeName(c *CommonStorageDriverConfig, name string) string
- func GetDefaultIgroupName(context trident.DriverContext) string
- func GetDefaultStoragePrefix(context trident.DriverContext) string
- func SanitizeCommonStorageDriverConfig(c *CommonStorageDriverConfig)
- type CommonStorageDriverConfig
- type CommonStorageDriverConfigDefaults
- type CommonStorageDriverConfigExternal
- type ESeriesStorageDriverConfig
- type EseriesStorageDriverConfigDefaults
- type FakeStorageDriverConfig
- type FakeStorageDriverConfigDefaults
- type OntapStorageDriverConfig
- type OntapStorageDriverConfigDefaults
- type SolidfireStorageDriverConfig
- type SolidfireStorageDriverConfigDefaults
Constants ¶
View Source
const ( EseriesIscsiStorageDriverName = "eseries-iscsi" OntapNASStorageDriverName = "ontap-nas" OntapNASFlexGroupStorageDriverName = "ontap-nas-flexgroup" OntapNASQtreeStorageDriverName = "ontap-nas-economy" OntapSANStorageDriverName = "ontap-san" SolidfireSANStorageDriverName = "solidfire-san" FakeStorageDriverName = "fake" )
Storage driver names specified in the config file, etc.
View Source
const ConfigVersion = 1
ConfigVersion is the expected version specified in the config file
View Source
const DefaultDockerIgroupName = "netappdvp"
Default SAN igroup / host group names
View Source
const DefaultDockerStoragePrefix = "netappdvp_"
Default storage prefix
View Source
const DefaultTridentIgroupName = "trident"
View Source
const DefaultTridentStoragePrefix = "trident_"
View Source
const DefaultVolumeSize = "1G"
View Source
const UnsetPool = ""
Variables ¶
This section is empty.
Functions ¶
func CheckVolumeSizeLimits ¶
func CheckVolumeSizeLimits(requestedSizeInt uint64, config *CommonStorageDriverConfig) (bool, uint64, error)
CheckVolumeSizeLimits if a limit has been set, ensures the requestedSize is under it.
func GetCommonInternalVolumeName ¶
func GetCommonInternalVolumeName(c *CommonStorageDriverConfig, name string) string
func GetDefaultIgroupName ¶
func GetDefaultIgroupName(context trident.DriverContext) string
func GetDefaultStoragePrefix ¶
func GetDefaultStoragePrefix(context trident.DriverContext) string
func SanitizeCommonStorageDriverConfig ¶
func SanitizeCommonStorageDriverConfig(c *CommonStorageDriverConfig)
Types ¶
type CommonStorageDriverConfig ¶
type CommonStorageDriverConfig struct {
Version int `json:"version"`
StorageDriverName string `json:"storageDriverName"`
BackendName string `json:"backendName"`
Debug bool `json:"debug"` // Unsupported!
DebugTraceFlags map[string]bool `json:"debugTraceFlags"` // Example: {"api":false, "method":true}
DisableDelete bool `json:"disableDelete"`
StoragePrefixRaw json.RawMessage `json:"storagePrefix,string"`
StoragePrefix *string `json:"-"`
SerialNumbers []string `json:"-"`
DriverContext trident.DriverContext `json:"-"`
LimitVolumeSize string `json:"limitVolumeSize"`
}
CommonStorageDriverConfig holds settings in common across all StorageDrivers
func ValidateCommonSettings ¶
func ValidateCommonSettings(configJSON string) (*CommonStorageDriverConfig, error)
ValidateCommonSettings attempts to "partially" decode the JSON into just the settings in CommonStorageDriverConfig
type CommonStorageDriverConfigDefaults ¶
type CommonStorageDriverConfigDefaults struct {
Size string `json:"size"`
}
type CommonStorageDriverConfigExternal ¶
type CommonStorageDriverConfigExternal struct {
Version int `json:"version"`
StorageDriverName string `json:"storageDriverName"`
StoragePrefix *string `json:"storagePrefix"`
SerialNumbers []string `json:"serialNumbers"`
}
func GetCommonStorageDriverConfigExternal ¶
func GetCommonStorageDriverConfigExternal( c *CommonStorageDriverConfig, ) *CommonStorageDriverConfigExternal
type ESeriesStorageDriverConfig ¶
type ESeriesStorageDriverConfig struct {
*CommonStorageDriverConfig
// Web Proxy Services Info
WebProxyHostname string `json:"webProxyHostname"`
WebProxyPort string `json:"webProxyPort"` // optional
WebProxyUseHTTP bool `json:"webProxyUseHTTP"` // optional
WebProxyVerifyTLS bool `json:"webProxyVerifyTLS"` // optional
Username string `json:"username"`
Password string `json:"password"`
// Array Info
ControllerA string `json:"controllerA"`
ControllerB string `json:"controllerB"`
PasswordArray string `json:"passwordArray"` //optional
// Options
PoolNameSearchPattern string `json:"poolNameSearchPattern"` //optional
// Host Networking
HostDataIPDeprecated string `json:"hostData_IP,omitempty"` // for backward compatibility only
HostDataIP string `json:"hostDataIP"` // for iSCSI can be either port if multipathing is setup
AccessGroup string `json:"accessGroupName"` // name for host group
HostType string `json:"hostType"` // host type, default is 'linux_dm_mp'
EseriesStorageDriverConfigDefaults `json:"defaults"`
}
ESeriesStorageDriverConfig holds settings for ESeriesStorageDriver
type EseriesStorageDriverConfigDefaults ¶
type EseriesStorageDriverConfigDefaults struct {
CommonStorageDriverConfigDefaults
}
type FakeStorageDriverConfig ¶
type FakeStorageDriverConfig struct {
*CommonStorageDriverConfig
Protocol trident.Protocol `json:"protocol"`
// pools represents the possible buckets into which a given volume should go
Pools map[string]*fake.StoragePool `json:"pools"`
InstanceName string `json:"instanceName"`
FakeStorageDriverConfigDefaults `json:"defaults"`
}
type FakeStorageDriverConfigDefaults ¶
type FakeStorageDriverConfigDefaults struct {
CommonStorageDriverConfigDefaults
}
type OntapStorageDriverConfig ¶
type OntapStorageDriverConfig struct {
*CommonStorageDriverConfig // embedded types replicate all fields
ManagementLIF string `json:"managementLIF"`
DataLIF string `json:"dataLIF"`
IgroupName string `json:"igroupName"`
SVM string `json:"svm"`
Username string `json:"username"`
Password string `json:"password"`
Aggregate string `json:"aggregate"`
UsageHeartbeat string `json:"usageHeartbeat"` // in hours, default to 24.0
QtreePruneFlexvolsPeriod string `json:"qtreePruneFlexvolsPeriod"` // in seconds, default to 600
QtreeQuotaResizePeriod string `json:"qtreeQuotaResizePeriod"` // in seconds, default to 60
NfsMountOptions string `json:"nfsMountOptions"`
LimitAggregateUsage string `json:"limitAggregateUsage"`
OntapStorageDriverConfigDefaults `json:"defaults"`
}
OntapStorageDriverConfig holds settings for OntapStorageDrivers
type OntapStorageDriverConfigDefaults ¶
type OntapStorageDriverConfigDefaults struct {
SpaceReserve string `json:"spaceReserve"`
SnapshotPolicy string `json:"snapshotPolicy"`
SnapshotReserve string `json:"snapshotReserve"`
SnapshotDir string `json:"snapshotDir"`
UnixPermissions string `json:"unixPermissions"`
ExportPolicy string `json:"exportPolicy"`
SecurityStyle string `json:"securityStyle"`
SplitOnClone string `json:"splitOnClone"`
FileSystemType string `json:"fileSystemType"`
Encryption string `json:"encryption"`
CommonStorageDriverConfigDefaults
}
type SolidfireStorageDriverConfig ¶
type SolidfireStorageDriverConfig struct {
*CommonStorageDriverConfig // embedded types replicate all fields
TenantName string
EndPoint string
SVIP string
InitiatorIFace string //iface to use of iSCSI initiator
Types *[]sfapi.VolType
LegacyNamePrefix string //name prefix used in earlier ndvp versions
AccessGroups []int64
UseCHAP bool
DefaultBlockSize int64 //blocksize to use on create when not specified (512|4096, 512 is default)
SolidfireStorageDriverConfigDefaults `json:"defaults"`
}
SolidfireStorageDriverConfig holds settings for SolidfireStorageDrivers
type SolidfireStorageDriverConfigDefaults ¶
type SolidfireStorageDriverConfigDefaults struct {
CommonStorageDriverConfigDefaults
}
Click to show internal directories.
Click to hide internal directories.