Documentation
¶
Index ¶
- Constants
- Variables
- func GetLogger(ctx context.Context) (context.Context, *logrus.Entry)
- func GetRunIDLog(ctx context.Context) (context.Context, *logrus.Entry, string)
- func MarshalSyncMapToJSON(m *sync.Map) ([]byte, error)
- type ArrayConnectivityStatus
- type IsilonClusterConfig
- type IsilonClusters
- type Opts
- type RPOEnum
- type Service
Constants ¶
View Source
const ( MaxRetries = 10 RetrySleepTime = 1000 * time.Millisecond AccessZoneParam = "AccessZone" ExportPathParam = "Path" IsiPathParam = "IsiPath" IsiVolumePathPermissionsParam = "IsiVolumePathPermissions" AzServiceIPParam = "AzServiceIP" RootClientEnabledParam = "RootClientEnabled" RootClientEnabledParamDefault = "false" DeleteSnapshotMarker = "DELETE_SNAPSHOT" IgnoreDotAndDotDotSubDirs = 2 ClusterNameParam = "ClusterName" SoftLimitParam = "SoftLimit" SoftLimitParamDefault = "" AdvisoryLimitParam = "AdvisoryLimit" AdvisoryLimitParamDefault = "" SoftGracePrdParam = "SoftGracePrd" SoftGracePrdParamDefault = "" // Parameters to set quota limit from pvc PVCSoftLimitParam = "pvcSoftLimit" PVCAdvisoryLimitParam = "pvcAdvisoryLimit" PVCSoftGracePrdParam = "pvcSoftGracePrd" // KeyCSIPVCName represents key for csi pvc name KeyCSIPVCName = "csi.storage.k8s.io/pvc/name" // KeyReplicationEnabled represents key for replication enabled KeyReplicationEnabled = "isReplicationEnabled" // KeyReplicationVGPrefix represents key for replication vg prefix KeyReplicationVGPrefix = "volumeGroupPrefix" // KeyReplicationRemoteSystem represents key for replication remote system KeyReplicationRemoteSystem = "remoteSystem" // KeyReplicationRemoteAccessZone represents key for replication remote access zone KeyReplicationRemoteAccessZone = "remoteAccessZone" // KeyReplicationRemoteAzServiceIP represents key for replication remote AzServiceIP KeyReplicationRemoteAzServiceIP = "remoteAzServiceIP" // KeyReplicationRemoteRootClientEnabled represents key for replication remote root client enabled KeyReplicationRemoteRootClientEnabled = "remoteRootClientEnabled" // KeyReplicationIgnoreNamespaces represents key for replication ignore namespaces KeyReplicationIgnoreNamespaces = "ignoreNamespaces" // KeyCSIPVCNamespace represents key for csi pvc namespace KeyCSIPVCNamespace = "csi.storage.k8s.io/pvc/namespace" // KeyReplicationRPO represents key for replication RPO KeyReplicationRPO = "rpo" RpoFiveMinutes RPOEnum = "Five_Minutes" RpoFifteenMinutes RPOEnum = "Fifteen_Minutes" RpoThirtyMinutes RPOEnum = "Thirty_Minutes" RpoOneHour RPOEnum = "One_Hour" RpoSixHours RPOEnum = "Six_Hours" RpoTwelveHours RPOEnum = "Twelve_Hours" RpoOneDay RPOEnum = "One_Day" )
constants
View Source
const ( PolicySchedulingManual = "" PolicySchedulingAutomatic = "when-source-modified" WritesEnabled = "writes_enabled" WritesDisabled = "writes_disabled" ResyncPolicyCreated = "resync_policy_created" )
constants for ease of understanding
Variables ¶
View Source
var DriverConfigParamsFile string
DriverConfigParamsFile is the name of the input driver config params file
View Source
var Manifest = map[string]string{ "url": "http://github.com/dell/csi-isilon", "semver": core.SemVer, "commit": core.CommitSha32, "formed": core.CommitTime.Format(time.RFC1123), }
Manifest is the SP's manifest.
Functions ¶
func GetRunIDLog ¶
GetRunIDLog function returns logger with runID
Types ¶
type ArrayConnectivityStatus ¶
type ArrayConnectivityStatus struct { LastSuccess int64 `json:"lastSuccess"` // connectivity status LastAttempt int64 `json:"lastAttempt"` // last timestamp attempted to check connectivity }
ArrayConnectivityStatus Status of the array probe
type IsilonClusterConfig ¶
type IsilonClusterConfig struct { ClusterName string `yaml:"clusterName"` Endpoint string `yaml:"endpoint"` EndpointPort string `yaml:"endpointPort,omitempty"` MountEndpoint string `yaml:"mountEndpoint,omitempty"` // This field is used to retain the orignal Endpoint after CSM-Authorization has been injected EndpointURL string User string `yaml:"username"` Password string `yaml:"password"` SkipCertificateValidation *bool `yaml:"skipCertificateValidation,omitempty"` IsiPath string `yaml:"isiPath,omitempty"` IsiVolumePathPermissions string `yaml:"isiVolumePathPermissions,omitempty"` IsDefault *bool `yaml:"isDefault,omitempty"` ReplicationCertificateID string `yaml:"replicationCertificateID,omitempty"` IgnoreUnresolvableHosts *bool `yaml:"ignoreUnresolvableHosts,omitempty"` // contains filtered or unexported fields }
IsilonClusterConfig To hold config details of a isilon cluster
func (IsilonClusterConfig) String ¶
func (s IsilonClusterConfig) String() string
To display the IsilonClusterConfig of a cluster
type IsilonClusters ¶
type IsilonClusters struct {
IsilonClusters []IsilonClusterConfig `yaml:"isilonClusters"`
}
IsilonClusters To unmarshal secret.yaml file
type Opts ¶
type Opts struct { Port string AccessZone string Path string IsiVolumePathPermissions string SkipCertificateValidation bool AutoProbe bool QuotaEnabled bool Verbose uint CustomTopologyEnabled bool KubeConfigPath string MaxVolumesPerNode int64 IsHealthMonitorEnabled bool IgnoreUnresolvableHosts bool // contains filtered or unexported fields }
Opts defines service configuration options.
type Service ¶
type Service interface { csi.ControllerServer csi.IdentityServer csi.NodeServer BeforeServe(context.Context, *gocsi.StoragePlugin, net.Listener) error RegisterAdditionalServers(server *grpc.Server) }
Service is the CSI service provider.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.