Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EbsCsiPlugin ¶
type EbsCsiPlugin interface {
// Init is called extremely early to get CLI flags, before Init
// Do not use for any non-CLI initialization - do that in Init()
InitFlags(fs *pflag.FlagSet)
// Init is called on startup, use to perform initialization
// Returning an error will cause the driver process to exit
//
// NOTE: registry can be nil if the user did not enable metrics,
// plugins must handle this case gracefully
Init(region string, registry *prometheus.Registry) error
// GetEC2Client replaces the AWS EC2 client the driver uses
GetEC2Client(cfg aws.Config, optFns ...func(*ec2.Options)) util.EC2API
// GetSageMakerClient replaces the AWS SageMaker client the driver uses
GetSageMakerClient(cfg aws.Config, optFns ...func(*sagemaker.Options)) util.SageMakerAPI
// GetDriverName replaces the driver name in use (normally "ebs.csi.aws.com")
// This function can be called before Init and should not depend on it
GetDriverName() string
// GetDiskTopologySegments provides a set of additional topology segments that should be applied to volumes created by
// the driver. These segments are merged with the existing topology segments applied by the base driver. Segments
// provided by the plugin take precedent.
GetDiskTopologySegments() map[string]string
// GetNodeTopologySegments provides a set of additional topology segments that should be resolved for nodes running
// the driver. These segments are merged with the existing topology segments resolved by the base driver. Segments
// provided by the plugin take precedent.
GetNodeTopologySegments() map[string]string
}
EbsCsiPlugin is the common plugin interface all plugins implement.
func GetPlugin ¶
func GetPlugin() EbsCsiPlugin
GetPlugin returns the currently loaded plugin. It will return nil if no plugin is loaded.
Click to show internal directories.
Click to hide internal directories.