Documentation
¶
Overview ¶
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Package provider ...
Index ¶
- Constants
- func FromProviderToLibVolume(vpcVolume *models.Share, logger *zap.Logger) (libVolume *provider.Volume)
- func FromProviderToLibVolumeAccessPoint(vpcShareTarget *models.ShareTarget, logger *zap.Logger) (libVolumeAccessPoint *provider.VolumeAccessPoint)
- func GetEtcPath() string
- func IsValidVolumeIDFormat(volID string) bool
- func NewProvider(conf *vpcconfig.VPCFileConfig, logger *zap.Logger) (local.Provider, error)
- func SetRetryParameters(maxAttempts int, maxGap int)
- func ToInt(valueInInt string) int
- func ToInt64(valueInInt string) int64
- func WaitForValidVolumeState(vpcs *VPCSession, volumeID string) (err error)
- func WaitForVolumeDeletion(vpcs *VPCSession, volumeID string) (err error)
- type FlexyRetry
- type VPCFileProvider
- func (vpcp *VPCFileProvider) ContextCredentialsFactory(zone *string) (local.ContextCredentialsFactory, error)
- func (vpcp *VPCFileProvider) OpenSession(ctx context.Context, contextCredentials provider.ContextCredentials, ...) (provider.Session, error)
- func (vpcp *VPCFileProvider) UpdateAPIKey(conf interface{}, logger *zap.Logger) error
- type VPCSession
- func (*VPCSession) Close()
- func (vpcs *VPCSession) CreateVolume(volumeRequest provider.Volume) (volumeResponse *provider.Volume, err error)
- func (vpcs *VPCSession) CreateVolumeAccessPoint(volumeAccessPointRequest provider.VolumeAccessPointRequest) (*provider.VolumeAccessPointResponse, error)
- func (vpcs *VPCSession) DeleteVolume(volume *provider.Volume) (err error)
- func (vpcs *VPCSession) DeleteVolumeAccessPoint(deleteAccessPointRequest provider.VolumeAccessPointRequest) (*http.Response, error)
- func (vpcs *VPCSession) GetProviderDisplayName() provider.VolumeProvider
- func (vpcs *VPCSession) GetVolume(id string) (respVolume *provider.Volume, err error)
- func (vpcs *VPCSession) GetVolumeAccessPoint(volumeAccessPointRequest provider.VolumeAccessPointRequest) (*provider.VolumeAccessPointResponse, error)
- func (vpcs *VPCSession) GetVolumeByName(name string) (respVolume *provider.Volume, err error)
- func (vpcs *VPCSession) ListVolumes(limit int, start string, tags map[string]string) (*provider.VolumeList, error)
- func (vpcs *VPCSession) ProviderName() provider.VolumeProvider
- func (vpcs *VPCSession) Type() provider.VolumeType
- func (vpc *VPCSession) UpdateVolume(volumeTemplate provider.Volume) error
- func (vpcs *VPCSession) WaitForCreateVolumeAccessPoint(AccessPointRequest provider.VolumeAccessPointRequest) (*provider.VolumeAccessPointResponse, error)
- func (vpcs *VPCSession) WaitForDeleteVolumeAccessPoint(deleteAccessPointRequest provider.VolumeAccessPointRequest) error
Constants ¶
const ( StatusStable = "stable" StatusDeleting = "deleting" StatusDeleted = "deleted" )
VpcVolumeAccessPoint ...
const ( // VPCNextGen ... VPCNextGen = "g2" // PrivatePrefix ... PrivatePrefix = "private-" // BasePrivateURL ... BasePrivateURL = "https://" + PrivatePrefix // HTTPSLength ... HTTPSLength = 8 // NEXTGenProvider ... NEXTGenProvider = 2 )
const ( // VPC storage provider VPC = provider.VolumeProvider("VPC-SHARE") // VolumeType ... VolumeType = provider.VolumeType("vpc-share") )
const (
ConstantRetryGap = 10 // seconds
)
ConstantRetryGap ...
Variables ¶
This section is empty.
Functions ¶
func FromProviderToLibVolume ¶
func FromProviderToLibVolume(vpcVolume *models.Share, logger *zap.Logger) (libVolume *provider.Volume)
FromProviderToLibVolume converting vpc provider share type to generic lib volume type
func FromProviderToLibVolumeAccessPoint ¶
func FromProviderToLibVolumeAccessPoint(vpcShareTarget *models.ShareTarget, logger *zap.Logger) (libVolumeAccessPoint *provider.VolumeAccessPoint)
FromProviderToLibVolumeAccessPoint converting vpc provider share target type to generic lib volume accessPoint Type
func IsValidVolumeIDFormat ¶
IsValidVolumeIDFormat validating(gc has 5 parts and NG has 6 parts)
func NewProvider ¶
NewProvider initialises an instance of an IaaS provider.
func SetRetryParameters ¶
SetRetryParameters sets the retry logic parameters
func WaitForValidVolumeState ¶
func WaitForValidVolumeState(vpcs *VPCSession, volumeID string) (err error)
WaitForValidVolumeState checks the file share for valid status
func WaitForVolumeDeletion ¶
func WaitForVolumeDeletion(vpcs *VPCSession, volumeID string) (err error)
WaitForVolumeDeletion checks the volume for valid status
Types ¶
type FlexyRetry ¶
type FlexyRetry struct {
// contains filtered or unexported fields
}
FlexyRetry ...
func NewFlexyRetry ¶
func NewFlexyRetry(maxRtyAtmpt int, maxrRtyGap int) FlexyRetry
NewFlexyRetry ...
func (*FlexyRetry) FlexyRetry ¶
FlexyRetry ...
func (*FlexyRetry) FlexyRetryWithConstGap ¶
func (fRetry *FlexyRetry) FlexyRetryWithConstGap(logger *zap.Logger, funcToRetry func() (error, bool)) error
FlexyRetryWithConstGap ...
type VPCFileProvider ¶
type VPCFileProvider struct { Config *vpcconfig.VPCFileConfig ContextCF local.ContextCredentialsFactory ClientProvider riaas.RegionalAPIClientProvider APIConfig riaas.Config // contains filtered or unexported fields }
VPCFileProvider implements provider.Provider
func (*VPCFileProvider) ContextCredentialsFactory ¶
func (vpcp *VPCFileProvider) ContextCredentialsFactory(zone *string) (local.ContextCredentialsFactory, error)
ContextCredentialsFactory ...
func (*VPCFileProvider) OpenSession ¶
func (vpcp *VPCFileProvider) OpenSession(ctx context.Context, contextCredentials provider.ContextCredentials, ctxLogger *zap.Logger) (provider.Session, error)
OpenSession opens a session on the provider
func (*VPCFileProvider) UpdateAPIKey ¶
func (vpcp *VPCFileProvider) UpdateAPIKey(conf interface{}, logger *zap.Logger) error
UpdateAPIKey ...
type VPCSession ¶
type VPCSession struct { provider.DefaultVolumeProvider VPCAccountID string Config *vpcconfig.VPCFileConfig ContextCredentials provider.ContextCredentials VolumeType provider.VolumeType Provider provider.VolumeProvider Apiclient riaas.RegionalAPI APIVersion string Logger *zap.Logger APIRetry FlexyRetry }
VPCSession implements lib.Session
func (*VPCSession) CreateVolume ¶
func (vpcs *VPCSession) CreateVolume(volumeRequest provider.Volume) (volumeResponse *provider.Volume, err error)
CreateVolume creates file share
func (*VPCSession) CreateVolumeAccessPoint ¶
func (vpcs *VPCSession) CreateVolumeAccessPoint(volumeAccessPointRequest provider.VolumeAccessPointRequest) (*provider.VolumeAccessPointResponse, error)
VolumeAccessPoint create volume target based on given volume accessPoint request
func (*VPCSession) DeleteVolume ¶
func (vpcs *VPCSession) DeleteVolume(volume *provider.Volume) (err error)
DeleteVolume deletes the file share
func (*VPCSession) DeleteVolumeAccessPoint ¶
func (vpcs *VPCSession) DeleteVolumeAccessPoint(deleteAccessPointRequest provider.VolumeAccessPointRequest) (*http.Response, error)
DeleteVolumeAccessPoint deletes file share target for given volume VolumeAccessPoint request
func (*VPCSession) GetProviderDisplayName ¶
func (vpcs *VPCSession) GetProviderDisplayName() provider.VolumeProvider
GetProviderDisplayName returns the name of the VPC provider
func (*VPCSession) GetVolume ¶
func (vpcs *VPCSession) GetVolume(id string) (respVolume *provider.Volume, err error)
GetVolume gets the file share by using ID
func (*VPCSession) GetVolumeAccessPoint ¶
func (vpcs *VPCSession) GetVolumeAccessPoint(volumeAccessPointRequest provider.VolumeAccessPointRequest) (*provider.VolumeAccessPointResponse, error)
GetVolumeAccessPoint get the file share target based on the request
func (*VPCSession) GetVolumeByName ¶
func (vpcs *VPCSession) GetVolumeByName(name string) (respVolume *provider.Volume, err error)
GetVolumeByName ...
func (*VPCSession) ListVolumes ¶
func (vpcs *VPCSession) ListVolumes(limit int, start string, tags map[string]string) (*provider.VolumeList, error)
ListVolumes list all file shares
func (*VPCSession) ProviderName ¶
func (vpcs *VPCSession) ProviderName() provider.VolumeProvider
ProviderName ...
func (*VPCSession) UpdateVolume ¶
func (vpc *VPCSession) UpdateVolume(volumeTemplate provider.Volume) error
UpdateVolume POSTs to /volumes
func (*VPCSession) WaitForCreateVolumeAccessPoint ¶
func (vpcs *VPCSession) WaitForCreateVolumeAccessPoint(AccessPointRequest provider.VolumeAccessPointRequest) (*provider.VolumeAccessPointResponse, error)
WaitForCreateVolumeAccessPoint checks if file share target is created and is stable state
func (*VPCSession) WaitForDeleteVolumeAccessPoint ¶
func (vpcs *VPCSession) WaitForDeleteVolumeAccessPoint(deleteAccessPointRequest provider.VolumeAccessPointRequest) error
WaitForDeleteVolumeAccessPoint waits for file share target to be deleted. e.g waits till no file share target is found
Source Files
¶
- create_volume.go
- create_volume_access_point.go
- delete_volume.go
- delete_volume_access_point.go
- get_volume.access_point.go
- get_volume.go
- list_volumes.go
- provider.go
- session.go
- token_generator.go
- update_volume.go
- util.go
- wait_for_create_volume_access_point.go
- wait_for_delete_volume_access_point.go
- wait_for_valid_volume_state.go