storagedrivers

package
v1.0.3 Latest Latest
Warning

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

Go to latest
Published: Nov 10, 2022 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OntapNASStorageDriverName          = "ontap-nas"
	OntapNASFlexGroupStorageDriverName = "ontap-nas-flexgroup"
	OntapNASQtreeStorageDriverName     = "ontap-nas-economy"
	OntapSANStorageDriverName          = "ontap-san"
	OntapSANEconomyStorageDriverName   = "ontap-san-economy"
	SolidfireSANStorageDriverName      = "solidfire-san"
	AzureNASStorageDriverName          = "azure-netapp-files"
	AzureNASBlockStorageDriverName     = "azure-netapp-files-subvolume"
	GCPNFSStorageDriverName            = "gcp-cvs"
	FakeStorageDriverName              = "fake"
)

Storage driver names specified in the config file, etc.

View Source
const (
	UnsetPool         = ""
	DefaultVolumeSize = "1G"
)
View Source
const (
	CredentialStoreK8sSecret CredentialStore = "secret"

	KeyName string = "name"
	KeyType string = "type"
)
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 DefaultFileSystemType = config.FsExt4

Default Filesystem value

View Source
const DefaultTridentIgroupName = "trident"
View Source
const DefaultTridentStoragePrefix = "trident_"
View Source
const MountOptionNoUUID = "nouuid"

Mount options managed by drivers

View Source
const TopologyLabelPrefix = "topology.kubernetes.io"

Topology label names

View Source
const TridentLabelTag = "trident"

Volume label names

Variables

This section is empty.

Functions

func AreSameCredentials

func AreSameCredentials(credentials1, credentials2 map[string]string) bool

func CheckMinVolumeSize

func CheckMinVolumeSize(requestedSizeBytes, minVolumeSizeBytes uint64) error

CheckMinVolumeSize returns UnsupportedCapacityRangeError if the requested volume size is less than the minimum volume size

func CheckSupportedFilesystem

func CheckSupportedFilesystem(ctx context.Context, fs, volumeInternalName string) (string, error)

CheckSupportedFilesystem checks for a supported file system type

func CheckVolumeSizeLimits

func CheckVolumeSizeLimits(
	ctx context.Context, requestedSizeInt uint64, config *CommonStorageDriverConfig,
) (bool, uint64, error)

CheckVolumeSizeLimits if a limit has been set, ensures the requestedSize is under it.

func Clone

func Clone(ctx context.Context, source, destination interface{})

Clone will create a copy of the source object and store it into the destination object (which must be a pointer)

func EnsureMountOption

func EnsureMountOption(mountOptions, option string) string

EnsureMountOption ensures option is present in mount options; option is appended to mountOptions if not present

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 GetIneligiblePhysicalPoolNames

func GetIneligiblePhysicalPoolNames(err error) (error, []string)

func GetOntapConfigRedactList

func GetOntapConfigRedactList() []string

func IsBackendIneligibleError

func IsBackendIneligibleError(err error) bool

func IsVolumeExistsError

func IsVolumeExistsError(err error) bool

func NewBackendIneligibleError

func NewBackendIneligibleError(volumeName string, errors []error, ineligiblePhysicalPoolNames []string) error

func NewVolumeExistsError

func NewVolumeExistsError(name string) error

func SanitizeCommonStorageDriverConfig

func SanitizeCommonStorageDriverConfig(c *CommonStorageDriverConfig)

Types

type AzureNASStorageDriverConfig

type AzureNASStorageDriverConfig struct {
	*CommonStorageDriverConfig
	SubscriptionID      string `json:"subscriptionID"`
	TenantID            string `json:"tenantID"`
	ClientID            string `json:"clientID"`
	ClientSecret        string `json:"clientSecret"`
	Location            string `json:"location"`
	NfsMountOptions     string `json:"nfsMountOptions"`
	VolumeCreateTimeout string `json:"volumeCreateTimeout"`
	SDKTimeout          string `json:"sdkTimeout"`
	MaxCacheAge         string `json:"maxCacheAge"`
	AzureNASStorageDriverPool
	Storage []AzureNASStorageDriverPool `json:"storage"`
}

func (AzureNASStorageDriverConfig) CheckForCRDControllerForbiddenAttributes

func (d AzureNASStorageDriverConfig) CheckForCRDControllerForbiddenAttributes() []string

CheckForCRDControllerForbiddenAttributes checks config for the keys forbidden by CRD controller and returns them

func (*AzureNASStorageDriverConfig) ExtractSecrets

func (d *AzureNASStorageDriverConfig) ExtractSecrets() map[string]string

ExtractSecrets function builds a map of any sensitive fields it contains (credentials, etc.), and returns the the map.

func (*AzureNASStorageDriverConfig) GetAndHideSensitive

func (d *AzureNASStorageDriverConfig) GetAndHideSensitive(secretName string) map[string]string

GetAndHideSensitive function builds a map of any sensitive fields it contains (credentials, etc.), replaces those fields with secretName and returns the the map.

func (AzureNASStorageDriverConfig) GoString

func (d AzureNASStorageDriverConfig) GoString() string

Implement GoStringer interface for the AzureNASStorageDriverConfig driver

func (*AzureNASStorageDriverConfig) HideSensitiveWithSecretName

func (d *AzureNASStorageDriverConfig) HideSensitiveWithSecretName(secretName string)

HideSensitiveWithSecretName function replaces sensitive fields it contains (credentials, etc.), with secretName.

func (*AzureNASStorageDriverConfig) InjectSecrets

func (d *AzureNASStorageDriverConfig) InjectSecrets(secretMap map[string]string) error

InjectSecrets function replaces sensitive fields in the config with the field values in the map

func (*AzureNASStorageDriverConfig) ResetSecrets

func (d *AzureNASStorageDriverConfig) ResetSecrets()

RemoveSecrets function removes sensitive fields it contains (credentials, etc.)

func (AzureNASStorageDriverConfig) SpecOnlyValidation

func (d AzureNASStorageDriverConfig) SpecOnlyValidation() error

func (AzureNASStorageDriverConfig) String

Implement stringer interface for the AzureNASStorageDriverConfig driver

type AzureNASStorageDriverConfigDefaults

type AzureNASStorageDriverConfigDefaults struct {
	ExportRule      string `json:"exportRule"`
	SnapshotDir     string `json:"snapshotDir"`
	UnixPermissions string `json:"unixPermissions"`
	CommonStorageDriverConfigDefaults
}

type AzureNASStorageDriverPool

type AzureNASStorageDriverPool struct {
	Labels                              map[string]string   `json:"labels"`
	Region                              string              `json:"region"`
	Zone                                string              `json:"zone"`
	ServiceLevel                        string              `json:"serviceLevel"`
	VirtualNetwork                      string              `json:"virtualNetwork"`
	Subnet                              string              `json:"subnet"`
	NetworkFeatures                     string              `json:"networkFeatures"`
	SupportedTopologies                 []map[string]string `json:"supportedTopologies"`
	ResourceGroups                      []string            `json:"resourceGroups"`
	NetappAccounts                      []string            `json:"netappAccounts"`
	CapacityPools                       []string            `json:"capacityPools"`
	FilePoolVolumes                     []string            `json:"filePoolVolumes"`
	NASType                             string              `json:"nasType"`
	AzureNASStorageDriverConfigDefaults `json:"defaults"`
}

AzureNASStorageDriverPool is the virtual pool definition for the ANF driver. Note that 'Region' and 'Zone' are internal specifiers, not related to Azure's 'Location' field.

type BackendIneligibleError

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

func (*BackendIneligibleError) Error

func (e *BackendIneligibleError) Error() string

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:"serialNumbers,omitEmpty"`
	DriverContext     trident.DriverContext `json:"-"`
	LimitVolumeSize   string                `json:"limitVolumeSize"`
	Credentials       map[string]string     `json:"credentials"`
}

CommonStorageDriverConfig holds settings in common across all StorageDrivers

func ValidateCommonSettings

func ValidateCommonSettings(ctx context.Context, configJSON string) (*CommonStorageDriverConfig, error)

ValidateCommonSettings attempts to "partially" decode the JSON into just the settings in CommonStorageDriverConfig

func (*CommonStorageDriverConfig) GetCredentials

func (d *CommonStorageDriverConfig) GetCredentials() (string, string, error)

GetCredentials function returns secret name and type (if set), otherwise empty strings

func (*CommonStorageDriverConfig) HasCredentials

func (d *CommonStorageDriverConfig) HasCredentials() bool

HasCredentials returns if the credentials field is set, otherwise false

func (*CommonStorageDriverConfig) SetBackendName

func (d *CommonStorageDriverConfig) SetBackendName(backendName string)

SetBackendName sets the backend name

func (CommonStorageDriverConfig) String

func (d CommonStorageDriverConfig) String() string

Implement stringer interface for the CommonStorageDriverConfig driver

type CommonStorageDriverConfigDefaults

type CommonStorageDriverConfigDefaults struct {
	Size string `json:"size"`
}

type CredentialStore

type CredentialStore string

Backend Credentials specific

type DriverConfig

type DriverConfig interface {
	String() string
	GoString() string
	GetCredentials() (string, string, error)
	HasCredentials() bool
	SetBackendName(backendName string)
	InjectSecrets(secretMap map[string]string) error
	ExtractSecrets() map[string]string
	ResetSecrets()
	HideSensitiveWithSecretName(secretName string)
	GetAndHideSensitive(secretName string) map[string]string
	CheckForCRDControllerForbiddenAttributes() []string
	SpecOnlyValidation() error
}

DriverConfig provides a common interface for storage config related operations

func GetDriverConfigByName

func GetDriverConfigByName(driverName string) (DriverConfig, error)

type FakeStorageDriverConfig

type FakeStorageDriverConfig struct {
	*CommonStorageDriverConfig
	Protocol trident.Protocol `json:"protocol"`
	// Pools are the modeled physical pools.  At least one is required.
	Pools map[string]*fake.StoragePool `json:"pools"`
	// Volumes are the modeled backend volumes that exist when the driver starts.  Optional.
	Volumes      []fake.Volume           `json:"volumes"`
	InstanceName string                  `json:"instanceName"`
	Storage      []FakeStorageDriverPool `json:"storage"`
	Username     string                  `json:"username"`
	Password     string                  `json:"password"`
	FakeStorageDriverPool
}

func (FakeStorageDriverConfig) CheckForCRDControllerForbiddenAttributes

func (d FakeStorageDriverConfig) CheckForCRDControllerForbiddenAttributes() []string

CheckForCRDControllerForbiddenAttributes checks config for the keys forbidden by CRD controller and returns them

func (*FakeStorageDriverConfig) ExtractSecrets

func (d *FakeStorageDriverConfig) ExtractSecrets() map[string]string

ExtractSecrets function builds a map of any sensitive fields it contains (credentials, etc.), and returns the the map.

func (*FakeStorageDriverConfig) GetAndHideSensitive

func (d *FakeStorageDriverConfig) GetAndHideSensitive(secretName string) map[string]string

GetAndHideSensitive function builds a map of any sensitive fields it contains (credentials, etc.), replaces those fields with secretName and returns the the map.

func (FakeStorageDriverConfig) GoString

func (d FakeStorageDriverConfig) GoString() string

Implement GoStringer interface for the FakeStorageDriverConfig driver

func (*FakeStorageDriverConfig) HideSensitiveWithSecretName

func (d *FakeStorageDriverConfig) HideSensitiveWithSecretName(secretName string)

HideSensitiveWithSecretName function replaces sensitive fields it contains (credentials, etc.), with secretName.

func (*FakeStorageDriverConfig) InjectSecrets

func (d *FakeStorageDriverConfig) InjectSecrets(secretMap map[string]string) error

InjectSecrets function replaces sensitive fields in the config with the field values in the map

func (*FakeStorageDriverConfig) ResetSecrets

func (d *FakeStorageDriverConfig) ResetSecrets()

RemoveSecrets function removes sensitive fields it contains (credentials, etc.)

func (FakeStorageDriverConfig) SpecOnlyValidation

func (d FakeStorageDriverConfig) SpecOnlyValidation() error

func (FakeStorageDriverConfig) String

func (d FakeStorageDriverConfig) String() string

Implement Stringer interface for the FakeStorageDriverConfig driver

type FakeStorageDriverConfigDefaults

type FakeStorageDriverConfigDefaults struct {
	CommonStorageDriverConfigDefaults
}

type FakeStorageDriverPool

type FakeStorageDriverPool struct {
	Labels                          map[string]string   `json:"labels"`
	Region                          string              `json:"region"`
	Zone                            string              `json:"zone"`
	SupportedTopologies             []map[string]string `json:"supportedTopologies"`
	FakeStorageDriverConfigDefaults `json:"defaults"`
}

type GCPNFSStorageDriverConfig

type GCPNFSStorageDriverConfig struct {
	*CommonStorageDriverConfig
	ProjectNumber       string        `json:"projectNumber"`
	HostProjectNumber   string        `json:"hostProjectNumber"`
	APIKey              GCPPrivateKey `json:"apiKey"`
	APIRegion           string        `json:"apiRegion"`
	APIURL              string        `json:"apiURL"`
	APIAudienceURL      string        `json:"apiAudienceURL"`
	ProxyURL            string        `json:"proxyURL"`
	NfsMountOptions     string        `json:"nfsMountOptions"`
	VolumeCreateTimeout string        `json:"volumeCreateTimeout"`
	GCPNFSStorageDriverPool
	Storage []GCPNFSStorageDriverPool `json:"storage"`
}

func (GCPNFSStorageDriverConfig) CheckForCRDControllerForbiddenAttributes

func (d GCPNFSStorageDriverConfig) CheckForCRDControllerForbiddenAttributes() []string

CheckForCRDControllerForbiddenAttributes checks config for the keys forbidden by CRD controller and returns them

func (*GCPNFSStorageDriverConfig) ExtractSecrets

func (d *GCPNFSStorageDriverConfig) ExtractSecrets() map[string]string

ExtractSecrets function builds a map of any sensitive fields it contains (credentials, etc.), and returns the the map.

func (*GCPNFSStorageDriverConfig) GetAndHideSensitive

func (d *GCPNFSStorageDriverConfig) GetAndHideSensitive(secretName string) map[string]string

GetAndHideSensitive function builds a map of any sensitive fields it contains (credentials, etc.), replaces those fields with secretName and returns the the map.

func (GCPNFSStorageDriverConfig) GoString

func (d GCPNFSStorageDriverConfig) GoString() string

Implement GoStringer interface for the GCPNFSStorageDriverConfig driver

func (*GCPNFSStorageDriverConfig) HideSensitiveWithSecretName

func (d *GCPNFSStorageDriverConfig) HideSensitiveWithSecretName(secretName string)

HideSensitiveWithSecretName function replaces sensitive fields it contains (credentials, etc.), with secretName.

func (*GCPNFSStorageDriverConfig) InjectSecrets

func (d *GCPNFSStorageDriverConfig) InjectSecrets(secretMap map[string]string) error

InjectSecrets function replaces sensitive fields in the config with the field values in the map

func (*GCPNFSStorageDriverConfig) ResetSecrets

func (d *GCPNFSStorageDriverConfig) ResetSecrets()

RemoveSecrets function removes sensitive fields it contains (credentials, etc.)

func (GCPNFSStorageDriverConfig) SpecOnlyValidation

func (d GCPNFSStorageDriverConfig) SpecOnlyValidation() error

func (GCPNFSStorageDriverConfig) String

func (d GCPNFSStorageDriverConfig) String() string

Implement stringer interface for the GCPNFSStorageDriverConfig driver

type GCPNFSStorageDriverConfigDefaults

type GCPNFSStorageDriverConfigDefaults struct {
	ExportRule      string `json:"exportRule"`
	SnapshotDir     string `json:"snapshotDir"`
	SnapshotReserve string `json:"snapshotReserve"`
	UnixPermissions string `json:"unixPermissions"`
	CommonStorageDriverConfigDefaults
}

type GCPNFSStorageDriverPool

type GCPNFSStorageDriverPool struct {
	Labels                            map[string]string   `json:"labels"`
	Region                            string              `json:"region"`
	Zone                              string              `json:"zone"`
	ServiceLevel                      string              `json:"serviceLevel"`
	StorageClass                      string              `json:"storageClass"`
	Network                           string              `json:"network"`
	SupportedTopologies               []map[string]string `json:"supportedTopologies"`
	GCPNFSStorageDriverConfigDefaults `json:"defaults"`
}

type GCPPrivateKey

type GCPPrivateKey struct {
	Type                    string `json:"type"`
	ProjectID               string `json:"project_id"`
	PrivateKeyID            string `json:"private_key_id"`
	PrivateKey              string `json:"private_key"`
	ClientEmail             string `json:"client_email"`
	ClientID                string `json:"client_id"`
	AuthURI                 string `json:"auth_uri"`
	TokenURI                string `json:"token_uri"`
	AuthProviderX509CertURL string `json:"auth_provider_x509_cert_url"`
	ClientX509CertURL       string `json:"client_x509_cert_url"`
}

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
	QtreesPerFlexvol                 string   `json:"qtreesPerFlexvol"`                 // default to 200
	LUNsPerFlexvol                   string   `json:"lunsPerFlexvol"`                   // default to 100
	EmptyFlexvolDeferredDeletePeriod string   `json:"emptyFlexvolDeferredDeletePeriod"` // in seconds, default to 28800
	NfsMountOptions                  string   `json:"nfsMountOptions"`
	LimitAggregateUsage              string   `json:"limitAggregateUsage"`
	AutoExportPolicy                 bool     `json:"autoExportPolicy"`
	AutoExportCIDRs                  []string `json:"autoExportCIDRs"`
	OntapStorageDriverPool
	Storage                   []OntapStorageDriverPool `json:"storage"`
	UseCHAP                   bool                     `json:"useCHAP"`
	UseREST                   bool                     `json:"useREST"`
	ChapUsername              string                   `json:"chapUsername"`
	ChapInitiatorSecret       string                   `json:"chapInitiatorSecret"`
	ChapTargetUsername        string                   `json:"chapTargetUsername"`
	ChapTargetInitiatorSecret string                   `json:"chapTargetInitiatorSecret"`
	ClientPrivateKey          string                   `json:"clientPrivateKey"`
	ClientCertificate         string                   `json:"clientCertificate"`
	TrustedCACertificate      string                   `json:"trustedCACertificate"`
	ReplicationPolicy         string                   `json:"replicationPolicy"`
	ReplicationSchedule       string                   `json:"replicationSchedule"`
}

OntapStorageDriverConfig holds settings for OntapStorageDrivers

func (OntapStorageDriverConfig) CheckForCRDControllerForbiddenAttributes

func (d OntapStorageDriverConfig) CheckForCRDControllerForbiddenAttributes() []string

CheckForCRDControllerForbiddenAttributes checks config for the keys forbidden by CRD controller and returns them

func (*OntapStorageDriverConfig) ExtractSecrets

func (d *OntapStorageDriverConfig) ExtractSecrets() map[string]string

ExtractSecrets function builds a map of any sensitive fields it contains (credentials, etc.), and returns the the map.

func (*OntapStorageDriverConfig) GetAndHideSensitive

func (d *OntapStorageDriverConfig) GetAndHideSensitive(secretName string) map[string]string

GetAndHideSensitive function builds a map of any sensitive fields it contains (credentials, etc.), replaces those fields with secretName and returns the the map.

func (OntapStorageDriverConfig) GoString

func (d OntapStorageDriverConfig) GoString() string

GoString makes OntapStorageDriverConfig satisfy the GoStringer interface.

func (*OntapStorageDriverConfig) HideSensitiveWithSecretName

func (d *OntapStorageDriverConfig) HideSensitiveWithSecretName(secretName string)

HideSensitiveWithSecretName function replaces sensitive fields it contains (credentials, etc.), with secretName.

func (*OntapStorageDriverConfig) InjectSecrets

func (d *OntapStorageDriverConfig) InjectSecrets(secretMap map[string]string) error

InjectSecrets function replaces sensitive fields in the config with the field values in the map

func (*OntapStorageDriverConfig) ResetSecrets

func (d *OntapStorageDriverConfig) ResetSecrets()

ResetSecrets function removes sensitive fields it contains (credentials, etc.)

func (OntapStorageDriverConfig) SpecOnlyValidation

func (d OntapStorageDriverConfig) SpecOnlyValidation() error

func (OntapStorageDriverConfig) String

func (d OntapStorageDriverConfig) String() string

String makes OntapStorageDriverConfig satisfy the Stringer interface.

type OntapStorageDriverConfigDefaults

type OntapStorageDriverConfigDefaults struct {
	SpaceAllocation   string `json:"spaceAllocation"`
	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"`
	LUKSEncryption    string `json:"LUKSEncryption"`
	Mirroring         string `json:"mirroring"`
	TieringPolicy     string `json:"tieringPolicy"`
	QosPolicy         string `json:"qosPolicy"`
	AdaptiveQosPolicy string `json:"adaptiveQosPolicy"`
	CommonStorageDriverConfigDefaults
}

type OntapStorageDriverPool

type OntapStorageDriverPool struct {
	Labels                           map[string]string   `json:"labels"`
	Region                           string              `json:"region"`
	Zone                             string              `json:"zone"`
	SupportedTopologies              []map[string]string `json:"supportedTopologies"`
	OntapStorageDriverConfigDefaults `json:"defaults"`
}

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)

	SolidfireStorageDriverPool
	Storage []SolidfireStorageDriverPool `json:"storage"`
}

SolidfireStorageDriverConfig holds settings for SolidfireStorageDrivers

func (SolidfireStorageDriverConfig) CheckForCRDControllerForbiddenAttributes

func (d SolidfireStorageDriverConfig) CheckForCRDControllerForbiddenAttributes() []string

CheckForCRDControllerForbiddenAttributes checks config for the keys forbidden by CRD controller and returns them

func (*SolidfireStorageDriverConfig) ExtractSecrets

func (d *SolidfireStorageDriverConfig) ExtractSecrets() map[string]string

ExtractSecrets function builds a map of any sensitive fields it contains (credentials, etc.), and returns the the map.

func (*SolidfireStorageDriverConfig) GetAndHideSensitive

func (d *SolidfireStorageDriverConfig) GetAndHideSensitive(secretName string) map[string]string

GetAndHideSensitive function builds a map of any sensitive fields it contains (credentials, etc.), replaces those fields with secretName and returns the the map.

func (SolidfireStorageDriverConfig) GoString

func (d SolidfireStorageDriverConfig) GoString() string

Implement GoStringer interface for the SolidfireStorageDriverConfig driver

func (*SolidfireStorageDriverConfig) HideSensitiveWithSecretName

func (d *SolidfireStorageDriverConfig) HideSensitiveWithSecretName(secretName string)

HideSensitiveWithSecretName function replaces sensitive fields it contains (credentials, etc.), with secretName.

func (*SolidfireStorageDriverConfig) InjectSecrets

func (d *SolidfireStorageDriverConfig) InjectSecrets(secretMap map[string]string) error

InjectSecrets function replaces sensitive fields in the config with the field values in the map

func (*SolidfireStorageDriverConfig) ResetSecrets

func (d *SolidfireStorageDriverConfig) ResetSecrets()

RemoveSecrets function removes sensitive fields it contains (credentials, etc.)

func (SolidfireStorageDriverConfig) SpecOnlyValidation

func (d SolidfireStorageDriverConfig) SpecOnlyValidation() error

func (SolidfireStorageDriverConfig) String

Implement stringer interface for the Solidfire driver

type SolidfireStorageDriverConfigDefaults

type SolidfireStorageDriverConfigDefaults struct {
	CommonStorageDriverConfigDefaults
}

type SolidfireStorageDriverPool

type SolidfireStorageDriverPool struct {
	Labels                               map[string]string   `json:"labels"`
	Region                               string              `json:"region"`
	Zone                                 string              `json:"zone"`
	Type                                 string              `json:"type"`
	SupportedTopologies                  []map[string]string `json:"supportedTopologies"`
	SolidfireStorageDriverConfigDefaults `json:"defaults"`
}

type VolumeExistsError

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

func (*VolumeExistsError) Error

func (e *VolumeExistsError) Error() string

Directories

Path Synopsis
api
Package api provides a high-level interface to the Azure NetApp Files SDK
Package api provides a high-level interface to the Azure NetApp Files SDK
gcp
api
This package provides a high-level interface to the NetApp GCP Cloud Volumes NFS REST API.
This package provides a high-level interface to the NetApp GCP Cloud Volumes NFS REST API.
api
DO NOT EDIT: Auto generated using 'ifacemaker -f ontap_rest.go -s RestClient -i RestClientInterface -p api'
DO NOT EDIT: Auto generated using 'ifacemaker -f ontap_rest.go -s RestClient -i RestClientInterface -p api'
api

Jump to

Keyboard shortcuts

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