package
0.11.4
Repository: https://github.com/rexray/rexray.git
Documentation: pkg.go.dev

# Functions

BackCompat ensures keys can be used from old configurations.
MustNewUUID is like NewUUID but panics if it encounters an error when creating a new UUID.
NewTransaction returns a new transaction.
NewUUID returns a new UUID.
ParseClientType parses a new client type.
ParseDeviceScanType parses a device scan type.
ParseEndpointType parses the endpoint type.
ParseUUID is a helper function on top of UnmarshalText.
ParseVolumeAttachmentTypes parses a value into a VolumeAttachmentsTypes value.

# Constants

AuthorizationHeader is the HTTP header that contains the Authorization information.
Block is block storage.
ConfigClient is a config key.
ConfigClientAuth is a config key.
ConfigClientAuthToken is a config key.
ConfigClientCacheInstanceID is a config key.
ConfigClientType is a config key.
ConfigDeviceAttachTimeout is a config key.
ConfigDeviceScanType is a config key.
ConfigEmbedded is a config key.
ConfigEndpoints is a config key.
ConfigExecutorNoDownload is a config key.
ConfigExecutorPath is a config key.
ConfigHost is a config key.
ConfigHTTPDisableKeepAlive is a config key.
ConfigHTTPReadTimeout is a config key.
ConfigHTTPWriteTimeout is a config key.
ConfigIg is a config key.
ConfigIgVol is a config key.
ConfigIgVolOps is a config key.
ConfigIgVolOpsCreate is a config key.
ConfigIgVolOpsCreateDefault is a config key.
ConfigIgVolOpsCreateDefaultAZ is a config key.
ConfigIgVolOpsCreateDefaultFsType is a config key.
ConfigIgVolOpsCreateDefaultIOPS is a config key.
ConfigIgVolOpsCreateDefaultSize is a config key.
ConfigIgVolOpsCreateDefaultType is a config key.
ConfigIgVolOpsCreateDisable is a config key.
ConfigIgVolOpsCreateImplicit is a config key.
ConfigIgVolOpsMount is a config key.
ConfigIgVolOpsMountPath is a config key.
ConfigIgVolOpsMountPreempt is a config key.
ConfigIgVolOpsMountRetryCount is a config key.
ConfigIgVolOpsMountRetryWait is a config key.
ConfigIgVolOpsMountRootPath is a config key.
ConfigIgVolOpsPath is a config key.
ConfigIgVolOpsPathCache is a config key.
ConfigIgVolOpsPathCacheAsync is a config key.
ConfigIgVolOpsPathCacheEnabled is a config key.
ConfigIgVolOpsRemove is a config key.
ConfigIgVolOpsRemoveDisable is a config key.
ConfigIgVolOpsRemoveForce is a config key.
ConfigIgVolOpsUnmount is a config key.
ConfigIgVolOpsUnmountIgnoreUsed is a config key.
ConfigIntegrationDriver is a config key.
ConfigLogging is a config key.
ConfigLogHTTPRequests is a config key.
ConfigLogHTTPResponses is a config key.
ConfigLogLevel is a config key.
ConfigLogStderr is a config key.
ConfigLogStdout is a config key.
ConfigOldDocker is a config key.
ConfigOldDockerAvailabilityZone is a config key.
ConfigOldDockerFsType is a config key.
ConfigOldDockerIOPS is a config key.
ConfigOldDockerLinuxVolumeRootPath is a config key.
ConfigOldDockerMountDirPath is a config key.
ConfigOldDockerSize is a config key.
ConfigOldDockerVolumeType is a config key.
ConfigOldIntegrationVolCreateDisable is a config key.
ConfigOldIntegrationVolMountPreempt is a config key.
ConfigOldIntegrationVolPathCache is a config key.
ConfigOldIntegrationVolRemoveDisable is a config key.
ConfigOldIntegrationVolUnmountIgnoreUsed is a config key.
ConfigOldRoot is a config key.
ConfigOSDriver is a config key.
ConfigRoot is a config key.
ConfigSchemaResponseValidationEnabled is a config key.
ConfigServer is a config key.
ConfigServerAuth is a config key.
ConfigServerAuthAlg is a config key.
ConfigServerAuthAllow is a config key.
ConfigServerAuthDeny is a config key.
ConfigServerAuthDisabled is a config key.
ConfigServerAuthKey is a config key.
ConfigServerAutoEndpointMode is a config key.
ConfigServerParseRequestOpts is a config key.
ConfigServerTasks is a config key.
ConfigServerTasksExeTimeout is a config key.
ConfigServerTasksLogTimeout is a config key.
ConfigService is a config key.
ConfigServices is a config key.
ConfigStorageDriver is a config key.
ConfigTLS is a config key.
ConfigTLSCertFile is a config key.
ConfigTLSClientCertRequired is a config key.
ConfigTLSDisabled is a config key.
ConfigTLSInsecure is a config key.
ConfigTLSKeyFile is a config key.
ConfigTLSKnownHosts is a config key.
ConfigTLSServerName is a config key.
ConfigTLSTrustedCertsFile is a config key.
ConfigTLSVerifyPeers is a config key.
ControllerClient is a libStorage client that has no interaction with the local host, removing any need for access to libStorage executors.
DebugLevel level.
DeviceScanDeep performs a deep, longer scan.
DeviceScanQuick performs a shallow, quick scan.
ErrorLevel level.
FatalLevel level.
FilterAnd is the & operator.
FilterApproxMatch is the ~= operator.
FilterEqualityMatch is the = operator.
FilterGreaterOrEqual is the >= operator.
FilterLessOrEqual is the <= operator.
FilterNot is the ! operator.
FilterOr is the | operator.
FilterPresent is the =* operator.
FilterSubstrings is the = operator in conjunction with a string that has leading and trailing * characters.
FilterSubstringsPostfix is the = operator in conjunction with a string that has a trailing * character.
FilterSubstringsPrefix is the = operator in conjunction with a string that has a leading * character.
InfoLevel level.
InstanceIDHeader is the HTTP header that contains an InstanceID.
IntegrationClient is the default client type -- a client that both communicates with a remote libStorage endpoint as well as interacts with the local host.
LibStorageDriverName is the name of the libStorage storage driver.
LocalDevicesHeader is the HTTP header that contains a local device pair.
LSXOpAll indicates the executor supports all operations.
LSXOpAllNoMount indicates the executor supports all operations except mount and unmount.
1.
LSXSOpLocalDevices indicates an executor supports "LocalDevices".
LSXSOpMount indicates an executor supports "Mount".
LSXSOpMounts indicates an executor supports "Mounts".
LSXSOpNextDevice indicates an executor supports "NextDevice".
LSXSOpNone indicates the executor is not supported for the platform.
LSXSOpUmount indicates an executor supports "Umount".
LSXSOpWaitForDevice indicates an executor supports "WaitForDevice".
NAS is network attached storage.
Object is object-backed storage.
PanicLevel level, highest level of severity.
ServerNameHeader is the HTTP header that contains the randomly generated name the server creates for unique identification when the server starts for the first time.
TaskStateError is the state for a task that has completed with an error.
TaskStateQueued is the state for a task that has been enqueued but not yet started.
TaskStateRunning is the state for a task that is running.
TaskStateSuccess is the state for a task that has completed successfully.
TCPEndpoint is a TCP endpoint.
TraceLevel level.
TransactionHeader is the HTTP header that contains the transaction sent from the client.
UnixEndpoint is a UNIX socket endpoint.
UnknownClientType is an unknown client type.
UnknownEndpointType is an unknown endpoint type.
VolAttFalse is an alias for VolAttNone.
VolAttNone is the default value.
VolAttReq requests attachment information for all retrieved volumes.
VolAttReqForInstance requests attachment information for volumes attached to the instance provided in the instance ID Mask: 1 | 2.
VolAttReqOnlyAttachedVols requests attachment information for all retrieved volumes and return only volumes that are attached to some instance.
VolAttReqOnlyUnattachedVols requests attachment information for all retrieved volumes and return only volumes that are not attached to any instance.
VolAttReqOnlyVolsAttachedToInstance requests attachment information for all retrieved volumes and return only volumes that attached to the instance provided in the instance ID.
VolAttReqOnlyVolsAttachedToInstanceOrUnattachedVols requests attachment information for all retrieved volumes and return only volumes that attached to the instance provided in the instance ID or are not attached to any instance at all.
VolAttReqTrue is an alias for VolAttReqWithDevMapOnlyVolsAttachedToInstance.
VolAttReqWithDevMapForInstance requests attachment information for volumes attached to the instance provided in the instance ID and perform device mappings where possible.
VolAttReqWithDevMapOnlyVolsAttachedToInstance requests attachment information for all retrieved volumes and return only volumes that attached to the instance provided in the instance ID and perform device mappings where possible.
VolAttReqWithDevMapOnlyVolsAttachedToInstanceOrUnattachedVols requests attachment information for all retrieved volumes and return only volumes that attached to the instance provided in the instance ID or are not attached to any instance at all and perform device mappings where possible.
VolumeAttached indicates the volume is attached to the instance specified in the API call that requested the volume information.
8.
4.
2.
1.
VolumeAttachmentStateUnknown indicates the driver has set the state, but it is explicitly unknown and should not be inferred from the list of attachments alone.
VolumeAttachmentsTrue is an alias for VolAttReqTrue.
16.
VolumeAvailable indicates the volume is not attached to any instance.
VolumeUnavailable indicates the volume is attached to some instance other than the one specified in the API call that requested the volume information.
WarnLevel level.

# Variables

Debug is a flag that indicates whether or not the environment variable `LIBSTORAGE_DEBUG` is set to a boolean true value.
ErrIIDMetadataNil is returned by *InstanceID.UnmarshalMetadata when the InstanceID's metadata is empty or nil.
ErrIIDMetadataNilData is returned by *InstanceID.MarshalMetadata when the provided object to marshal is nil.
ErrIIDMetadataNilDest is returned by *InstanceID.UnmarshalMetadata when the provided destination into which the metadata should be unmarshaled is nil.
ErrMissingStorageService occurs when the storage service is expected in the provided context but is not there.
ErrNotImplemented is the error that Driver implementations should return if a function is not implemented.
ErrTimedOut is the error that is used to indicate an operation timed out.
Stderr is the writer used when a component in libStorage wishes to write to the standard error stream.
Stdout is the writer used when a component in libStorage wishes to write to the standard output stream.

# Structs

AuthConfig is the auth configuration.
AuthToken is a JSON Web Token.
DeviceFormatOpts are options when formatting a device.
DeviceMountOpts are options when mounting a device.
DriverInfo is information about a driver.
ErrBadAdminToken occurs when a bad admin token is provided.
ErrBadFilter occurs when a bad filter is supplied via the filter query string.
ErrBatchProcess occurs when a batch process is interrupted by an error before the process is complete.
ErrContextKey occurs when no value exists for a specified context key.
ErrContextType occurs when a value exists in the context but is not the expected typed.
ErrDriverTypeErr occurs when a Driver is constructed with an invalid type.
ErrKnownHost occurs when the client's TLS dialer encounters a problem verifying the remote peer's certificate against a list of known host signatures.
ErrKnownHostConflict occurs when the client's TLS dialer encounters an existing known host entry for the targeted host name but with a different signature than the one being presented by the remote peer.
ErrMissingInstanceID occurs when an operation requires the instance ID for the configured service to be avaialble.
ErrMissingLocalDevices occurs when an operation requires local devices and they're missing.
ErrNotFound occurs when a Driver inspects or sends an operation to a resource that cannot be found.
ErrSecTokInvalid occurs when a security token is invalid.
ErrStoreKey occurs when no value exists for a specified store key.
ErrUnsupportedForClientType is the error that occurs when an operation is invoked that is unsupported for the current client type.
Filter is an LDAP-style filter string.
Instance provides information about a storage object.
InstanceID identifies a host to a remote storage platform.
LocalDevices is a wrapper for a map of volume to device mappings.
LocalDevicesOpts are options when getting a list of local devices.
MountInfo reveals information about a particular mounted filesystem.
NextDeviceInfo assists the libStorage client in determining the next available device name by providing the driver's device prefix and optional pattern.
PathConfig contains the path configuration for the application.
ServiceInfo is information about a service.
Snapshot provides information about a storage-layer snapshot.
SnapshotCopyRequest is the JSON body for copying a snapshot.
SnapshotRemoveRequest is the JSON body for removing a snapshot.
Task is a representation of an asynchronous, long-running task.
TLSConfig is a custom TLS configuration that includes the concept of a peer certificate's fingerprint.
TLSKnownHost contains the identifying information of trusted, remote peer.
Transaction contains transaction information.
Volume provides information about a storage volume.
VolumeAttachment provides information about an object attached to a storage volume.
VolumeAttachOpts are options for attaching a volume.
VolumeAttachRequest is the JSON body for attaching a volume to an instance.
VolumeAttachResponse is the JSON response for attaching a volume to an instance.
VolumeCopyRequest is the JSON body for copying a volume.
VolumeCreateOpts are options when creating a new volume.
VolumeCreateRequest is the JSON body for creating a new volume.
VolumeDetachOpts are options for detaching a volume.
VolumeDetachRequest is the JSON body for detaching a volume from an instance.
VolumeDevice provides information about a volume's backing storage device.
VolumeInspectOpts are options when inspecting a volume.
VolumeMountOpts are options for mounting a volume.
VolumeRemoveOpts are options for removing a volume.
VolumeSnapshotRequest is the JSON body for snapshotting a volume.
VolumesOpts are options when inspecting a volume.
WaitForDeviceOpts are options when waiting on specific local device to appear.

# Interfaces

APIClient is the libStorage API client used for communicating with a remote libStorage endpoint.
Client is the libStorage client.
Context is a libStorage context.
ContextLoggerFieldAware is used by types that will be logged by the Context logger.
ContextLoggerFieldsAware is used by types that will be logged by the Context logger.
Driver is the base interface for a libStorage driver.
FieldLogger interface generalizes the Entry and Logger types.
IntegrationDriver is the interface implemented to integrate external storage consumers, such as Docker, with libStorage.
IntegrationDriverManager is the management wrapper for an IntegrationDriver.
LogEntry is collected data to be emitted as a log entry.
Middleware is middleware for a route.
OSDriver is the interface implemented by types that provide OS introspection and management.
OSDriverManager is the management wrapper for an OSDriver.
ProvidesAPIClient is any type that provides the API client.
ProvidesStorageExecutorCLI is a type that provides the StorageExecutorCLI.
Route defines an individual API route in the server.
Router defines an interface to specify a group of routes to add the the server.
Server is the interface for a libStorage server.
Service is the base type for services.
Services is a service's container.
StorageDriver is a libStorage driver used by the routes to implement the backend functionality.
StorageDriverManager is the management wrapper for a StorageDriver.
StorageDriverVolInspectByName is a StorageDriver with a VolumeInspectByName function.
StorageDriverWithLogin is a StorageDriver with a Login function.
StorageExecutor is the part of a storage driver that is downloaded at runtime by the libStorage client.
StorageExecutorCLI provides a way to interact with the CLI tool built with the driver implementations of the StorageExecutor interface.
StorageExecutorFunctions is the collection of functions that are required of a StorageExecutor.
StorageExecutorWithMount is an interface that executor implementations may use to become part of the mount workflow.
StorageExecutorWithMounts is an interface that executor implementations may use to become part of the mounts workflow.
StorageExecutorWithSupported is an interface that executor implementations may use by defining the function "Supported(Context, Store) (bool, error)".
StorageExecutorWithUnmount is an interface that executor implementations may use to become part of unmount workflow.
StorageService is a service that provides the interaction with StorageDrivers.
Store is a key/value store with case-insensitive keys.
TaskExecutionService is a service for executing tasks.
TaskTrackingService a service for tracking tasks.
VolumeMapping is a volume's name and the path to which it is mounted.

# Type aliases

APIFunc is an adapter to allow the use of ordinary functions as API endpoints.
ClientType is a client's type.
ConfigKey is a configuration key.
DeviceScanType is a type of device scan algorithm.
EndpointType is a type of endpoint.
FilterOperator is a filter operator.
InstanceIDMap is a map of InstanceID objects.
Level is a log level.
LocalDevicesMap is a map of LocalDevices objects.
LSXSupportedOp is a bit for the mask returned from an executor's Supported function.
MiddlewareFunc is an adapter to allow the use of ordinary functions as API filters.
NewConfigReg is given to the registry to register a new configuration registration request.
NewIntegrationDriver is a function that constructs a new IntegrationDriver.
NewOSDriver is a function that constructs a new OSDriver.
NewRequestObjFunc is a function that creates a new instance of the type to which the request body is serialized.
NewStorageDriver is a function that constructs a new StorageDriver.
NewStorageExecutor is a function that constructs a new StorageExecutors.
ServicesMap is the response when getting one to many ServiceInfos.
ServiceSnapshotMap is the response for listing snapshots for multiple services.
ServiceVolumeMap is the response for listing volumes for multiple services.
SnapshotMap is the response for listing snapshots for a single service.
StorageTaskRunFunc is a function responsible for a storage-service task's execution.
StorageType is the type of storage a driver provides.
TaskRunFunc is a function responsible for a task's execution.
TaskState is the possible state of a task.
TxTimestamp is a transaction's timestamp.
UUID is a UUID.
VolumeAttachmentStates is the volume's attachment state possibilities.
VolumeAttachmentsTypes is the type of the volume attachments bitmask.
VolumeMap is the response for listing volumes for a single service.