Portworx OpenStorageWatch API
The OpenStorageWatch API from Portworx — 1 operation(s) for openstoragewatch.
The OpenStorageWatch API from Portworx — 1 operation(s) for openstoragewatch.
openapi: 3.0.0
info:
title: OpenStorage SDK OpenStorageAlerts OpenStorageWatch API
version: 0.186.0
security:
- bearerAuth: []
tags:
- name: OpenStorageWatch
paths:
/v1/watch:
post:
description: Requires access AccessType.Read
operationId: OpenStorageWatch_Watch
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/apiSdkWatchRequest'
required: true
responses:
'200':
content:
application/json:
schema:
properties:
error:
$ref: '#/components/schemas/runtimeStreamError'
result:
$ref: '#/components/schemas/apiSdkWatchResponse'
title: Stream result of apiSdkWatchResponse
type: object
description: A successful response.(streaming responses)
default:
content:
application/json:
schema:
$ref: '#/components/schemas/runtimeError'
description: An unexpected error response.
summary: Watch on resources managed by the driver and receive them as a stream of events.
tags:
- OpenStorageWatch
components:
schemas:
apiSdkWatchRequest:
properties:
volume_event:
$ref: '#/components/schemas/apiSdkVolumeWatchRequest'
title: Defines the request to watch an openstorage event. An event can be a volume, a node, a disk, etc
type: object
OwnershipAccessType:
default: Read
description: "Access types can be set by owner to have different levels of access to\na resource.\n\nIt is up to the resource to interpret what the types mean and are\nused for.\n\n - Read: Read access only and cannot affect the resource.\n - Write: Write access and can affect the resource.\nThis type automatically provides Read access also.\n - Admin: Administrator access.\nThis type automatically provides Read and Write access also."
enum:
- Read
- Write
- Admin
type: string
apiVolumeState:
default: VOLUME_STATE_NONE
description: "VolumeState represents the state of a volume.\n\n - VOLUME_STATE_PENDING: Volume is transitioning to new state\n - VOLUME_STATE_AVAILABLE: Volume is ready to be assigned to a container\n - VOLUME_STATE_ATTACHED: Volume is attached to container\n - VOLUME_STATE_DETACHED: Volume is detached but associated with a container\n - VOLUME_STATE_DETATCHING: Volume detach is in progress\n - VOLUME_STATE_ERROR: Volume is in error state\n - VOLUME_STATE_DELETED: Volume is deleted, it will remain in this state\nwhile resources are asynchronously reclaimed\n - VOLUME_STATE_TRY_DETACHING: Volume is trying to be detached\n - VOLUME_STATE_RESTORE: Volume is undergoing restore"
enum:
- VOLUME_STATE_NONE
- VOLUME_STATE_PENDING
- VOLUME_STATE_AVAILABLE
- VOLUME_STATE_ATTACHED
- VOLUME_STATE_DETACHED
- VOLUME_STATE_DETATCHING
- VOLUME_STATE_ERROR
- VOLUME_STATE_DELETED
- VOLUME_STATE_TRY_DETACHING
- VOLUME_STATE_RESTORE
type: string
apiProxyProtocol:
default: PROXY_PROTOCOL_INVALID
description: "ProxyProtocol defines the protocol used for proxy.\n\n - PROXY_PROTOCOL_INVALID: Invalid uninitialized value\n - PROXY_PROTOCOL_NFS: NFS indicates that the external data source is NFS and the volume\nwill be reflected over NFS protocol\n - PROXY_PROTOCOL_S3: S3 indicates that the external data source is an object store.\n - PROXY_PROTOCOL_PXD: PXD indicates that the external data source is a Portworx block volume.\n - PROXY_PROTOCOL_PURE_BLOCK: PURE_BLOCK indicates that the external data source is a pure_block volume.\n - PROXY_PROTOCOL_PURE_FILE: PURE_FILE indicates that the external data source is a pure_file volume."
enum:
- PROXY_PROTOCOL_INVALID
- PROXY_PROTOCOL_NFS
- PROXY_PROTOCOL_S3
- PROXY_PROTOCOL_PXD
- PROXY_PROTOCOL_PURE_BLOCK
- PROXY_PROTOCOL_PURE_FILE
type: string
OwnershipPublicAccessControl:
properties:
type:
$ref: '#/components/schemas/OwnershipAccessType'
title: PublicAccessControl allows assigning public ownership
type: object
apiS3ProxySpec:
description: S3ProxySpec is the spec for proxying an external object store.
properties:
bucket_name:
title: BucketName is the name of the bucket from the object store
type: string
type: object
Sharedv4ServiceSpecServiceType:
default: UNSPECIFIED
description: "Type of sharedv4 service. Values are governed by the different types\nof services supported by container orchestrators such as Kubernetes.\n\n - UNSPECIFIED: Unspecified\n - NODEPORT: Export the sharedv4 service on each Node's IP.\nIn this mode the sharedv4 volume can be accessed from outside the\ncluster using one of the node's IPs.\n - CLUSTERIP: Export the shared4 service on an internal cluster IP.\nIn this mode the sharedv4 volume will only be accessible\nwithin the cluster via this service.\n - LOADBALANCER: Expose the sharedv4 service on cloud provider's load balancer.\nApplicable when running in cloud. In this mode the sharedv4 volume\ncan be accessed from outside the cluster.\n - NONE: Do not use sharedv4 service feature. Use legacy sharedv4 volumes instead."
enum:
- UNSPECIFIED
- NODEPORT
- CLUSTERIP
- LOADBALANCER
- NONE
type: string
apiXattrValue:
default: UNSPECIFIED
enum:
- UNSPECIFIED
- COW_ON_DEMAND
title: "- UNSPECIFIED: Value is uninitialized or unknown\n - COW_ON_DEMAND: Enable on-demand copy-on-write on the volume"
type: string
apiIoStrategy:
description: IoStrategy defines how I/O should be performed to backing storage media.
properties:
async_io:
description: AsyncIO enables kaio.
type: boolean
direct_io:
title: Enable direct I/O on the backing datastore
type: boolean
early_ack:
description: EarlyAck enables acks for async I/O at the source.
type: boolean
type: object
apiCosType:
default: NONE
enum:
- NONE
- LOW
- MEDIUM
- HIGH
type: string
apiRuntimeStateMap:
description: 'RuntimeStateMap is a list of name value mapping of driver specific runtime
information.'
properties:
runtime_state:
additionalProperties:
type: string
type: object
type: object
apiReplicaSet:
properties:
id:
format: int64
title: ID is the unique ID of this replica set
type: integer
nodes:
items:
type: string
type: array
pool_uuids:
items:
type: string
title: Unique IDs of the storage pools for this replica set
type: array
title: 'ReplicaSet set of machine IDs (nodes) to which part of this volume is erasure
coded - for clustered storage arrays'
type: object
apiFilesystemHealthStatus:
default: FS_HEALTH_STATUS_UNKNOWN
enum:
- FS_HEALTH_STATUS_UNKNOWN
- FS_HEALTH_STATUS_HEALTHY
- FS_HEALTH_STATUS_SAFE_TO_FIX
- FS_HEALTH_STATUS_NEEDS_INSPECTION
title: "- FS_HEALTH_STATUS_UNKNOWN: filesystem health status is unknown\n - FS_HEALTH_STATUS_HEALTHY: filesystem is a healthy\n - FS_HEALTH_STATUS_SAFE_TO_FIX: filesystem has errors, but can be fixed safely\n - FS_HEALTH_STATUS_NEEDS_INSPECTION: filesystem has errors, these cannot be fixed automatically,\nuser needs to review the reported errors and take appropriate action"
type: string
apiVolumeStatus:
default: VOLUME_STATUS_NONE
description: "VolumeStatus represents a health status for a volume.\n\n - VOLUME_STATUS_NOT_PRESENT: Volume is not present\n - VOLUME_STATUS_UP: Volume is healthy\n - VOLUME_STATUS_DOWN: Volume is in fail mode\n - VOLUME_STATUS_DEGRADED: Volume is up but with degraded performance\nIn a RAID group, this may indicate a problem with one or more drives"
enum:
- VOLUME_STATUS_NONE
- VOLUME_STATUS_NOT_PRESENT
- VOLUME_STATUS_UP
- VOLUME_STATUS_DOWN
- VOLUME_STATUS_DEGRADED
type: string
apiNearSyncReplicationStrategy:
default: NEAR_SYNC_STRATEGY_NONE
enum:
- NEAR_SYNC_STRATEGY_NONE
- NEAR_SYNC_STRATEGY_AGGRESSIVE
- NEAR_SYNC_STRATEGY_OPTIMIZED
type: string
apiSharedv4Spec:
properties:
failover_strategy:
$ref: '#/components/schemas/apiSharedv4FailoverStrategyValue'
title: Sharedv4Spec specifies common properties of sharedv4 and sharedv4 service volumes
type: object
apiLabelSelectorRequirement:
description: 'LabelSelectorRequirement is a selector that contains values, a key, and an operator that
relates the key and values.'
properties:
key:
description: Key is the label key that the selector applies to.
type: string
operator:
$ref: '#/components/schemas/LabelSelectorRequirementOperator'
values:
description: 'Values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.'
items:
type: string
type: array
type: object
apiFastpathStatus:
default: FASTPATH_UNKNOWN
description: "- FASTPATH_UNKNOWN: backward compatible state\n - FASTPATH_ACTIVE: fastpath activated and enabled\n - FASTPATH_INACTIVE: fastpath inactive\n - FASTPATH_UNSUPPORTED: fastpath unsupported, disabled\n - FASTPATH_PENDING: fastpath operation setup in progress\n - FASTPATH_ERRORED: fastpath error'd, possible stuck failure"
enum:
- FASTPATH_UNKNOWN
- FASTPATH_ACTIVE
- FASTPATH_INACTIVE
- FASTPATH_UNSUPPORTED
- FASTPATH_PENDING
- FASTPATH_ERRORED
title: fastpath extensions
type: string
apiReplicaPlacementSpec:
properties:
affected_replicas:
format: int32
title: 'AffectedReplicas defines the number of volume replicas affected by this rule. If not provided,
rule would affect all replicas
(optional)'
type: integer
enforcement:
$ref: '#/components/schemas/apiEnforcementType'
match_expressions:
description: MatchExpressions is a list of label selector requirements. The requirements are ANDed.
items:
$ref: '#/components/schemas/apiLabelSelectorRequirement'
type: array
topology_key:
title: 'TopologyKey key for the matching all segments of the cluster topology with the same key
e.g If the key is failure-domain.beta.kubernetes.io/zone, this should match all nodes with
the same value for this key (i.e in the same zone)'
type: string
weight:
format: int64
title: 'Weight defines the weight of the rule which allows to break the tie with other matching rules. A rule with
higher weight wins over a rule with lower weight.
(optional)'
type: string
type: object
apiExportSpec:
description: ExportSpec defines how the volume is exported..
properties:
export_options:
description: ExportOptions options exporting the volume.
type: string
export_protocol:
$ref: '#/components/schemas/apiExportProtocol'
type: object
apiEnforcementType:
default: required
description: "- required: This specifies that the rule is required and must be strictly enforced\n - preferred: This specifies that the rule is preferred and can be best effort"
enum:
- required
- preferred
title: Defines the types of enforcement on the given rules
type: string
apiTopologyRequirement:
properties:
labels:
additionalProperties:
type: string
title: Key-value pairs defining the required topology for a volume
type: object
title: TopologyRequirement defines the topology requirement for a volume
type: object
ScanPolicyScanTrigger:
default: SCAN_TRIGGER_NONE
enum:
- SCAN_TRIGGER_NONE
- SCAN_TRIGGER_ON_MOUNT
- SCAN_TRIGGER_ON_NEXT_MOUNT
type: string
apiFastpathReplState:
properties:
acl:
type: boolean
block:
type: boolean
dev_id:
format: uint64
type: string
devpath:
type: string
exported:
type: boolean
exported_device:
title: target info
type: string
imported:
title: initiator info
type: boolean
node_id:
format: int64
type: integer
node_uuid:
title: node_uuid added to enhance UI reporting
type: string
protocol:
$ref: '#/components/schemas/apiFastpathProtocol'
target:
type: string
type: object
apiFastpathConfig:
properties:
coord_uuid:
title: fastpath coordinator node uuid to enhance reporting
type: string
dirty:
title: Dirty flag on volume - was attached in userspace
type: boolean
force_failover:
title: fastpath force failover, disable auto promote to fastpath
type: boolean
promote:
title: Fastpath temporary promotion during attach
type: boolean
replicas:
items:
$ref: '#/components/schemas/apiFastpathReplState'
title: Fastpath replica state for each replica in replica set
type: array
setup_on:
format: int32
title: fastpath setup on this node
type: integer
status:
$ref: '#/components/schemas/apiFastpathStatus'
verbose:
title: Verbose contains detailed info on fastpath status
type: string
title: FastpathConfig part of volume
type: object
apiSharedv4FailoverStrategyValue:
default: UNSPECIFIED
description: " - UNSPECIFIED: Unspecified\n - AGGRESSIVE: Fail over to the new NFS server quickly. This is appropriate for\nthe apps with sharedv4 service volumes. It can also be used\nfor the apps with sharedv4 volumes when such apps are able\nto restart quickly.\n - NORMAL: Give the old NFS server more time to come back up before\ntriggering the failover. This is appropriate for the apps\nwith sharedv4 volumes (non-service)."
enum:
- UNSPECIFIED
- AGGRESSIVE
- NORMAL
type: string
apiAttachState:
default: ATTACH_STATE_EXTERNAL
enum:
- ATTACH_STATE_EXTERNAL
- ATTACH_STATE_INTERNAL
- ATTACH_STATE_INTERNAL_SWITCH
title: "- ATTACH_STATE_EXTERNAL: Attached and available externally\n - ATTACH_STATE_INTERNAL: Attached but only available internally\n - ATTACH_STATE_INTERNAL_SWITCH: Switching from External to Internal"
type: string
apiIoThrottle:
properties:
read_bw_mbytes:
format: int64
type: integer
read_iops:
format: int64
type: integer
write_bw_mbytes:
format: int64
type: integer
write_iops:
format: int64
type: integer
title: 'IoThrottle defines IO throttle limits for a volume
read_iops : maximum read iops this volume is allowed
write_iops : maximum write iops this volume is allowed
read_bw_mbytes : maximum read bandwidth this volume is allowed in MegaBytes
write_bw_mbytes : maximum write bandwidth this volume is allowed in MegaBytes'
type: object
apiSdkVolumeWatchResponse:
properties:
name:
title: Name of volume
type: string
volume:
$ref: '#/components/schemas/apiVolume'
title: Defines the response containing an volume with a state changed
type: object
apiFastpathProtocol:
default: FASTPATH_PROTO_UNKNOWN
enum:
- FASTPATH_PROTO_UNKNOWN
- FASTPATH_PROTO_NVMEOF_TCP
- FASTPATH_PROTO_ISCSI
- FASTPATH_PROTO_LOCAL
type: string
apiVolumePlacementStrategy:
description: 'VolumePlacementStrategy defines a strategy for placing volumes in the cluster which will be a series of rules
All the rules specified will be applied for volume placement.
Rules that have enforcement as "required" are strictly enforced while "preferred" are best effort.
In situations, where 2 or more rules conflict, the weight of the rules will dictate which wins.'
properties:
replica_affinity:
items:
$ref: '#/components/schemas/apiReplicaPlacementSpec'
title: ReplicaAffinity defines affinity rules between replicas within a volume
type: array
replica_anti_affinity:
items:
$ref: '#/components/schemas/apiReplicaPlacementSpec'
title: ReplicaAntiAffinity defines anti-affinity rules between replicas within a volume
type: array
volume_affinity:
items:
$ref: '#/components/schemas/apiVolumePlacementSpec'
title: VolumeAffinity defines affinity rules between volumes
type: array
volume_anti_affinity:
items:
$ref: '#/components/schemas/apiVolumePlacementSpec'
title: VolumeAntiAffinity defines anti-affinity rules between volumes
type: array
type: object
runtimeStreamError:
properties:
details:
items:
$ref: '#/components/schemas/protobufAny'
type: array
grpc_code:
format: int32
type: integer
http_code:
format: int32
type: integer
http_status:
type: string
message:
type: string
type: object
apiSdkVolumeWatchRequest:
properties:
labels:
additionalProperties:
type: string
title: labels to filter out the volumes to watch on
type: object
title: 'Defines the request to watch an openstorage volume event for the given label
if the label is empty, it returns all the volume events'
type: object
apiOwnership:
description: 'Ownership information for resource.
Administrators are users who belong to the group `*`, meaning, every group.'
properties:
acls:
$ref: '#/components/schemas/OwnershipAccessControl'
owner:
description: 'Username of owner.
The storage system uses the username taken from the security authorization
token and is saved on this field. Only users with system administration
can edit this value.'
type: string
type: object
apiVolume:
description: Volume represents an abstract storage volume.
properties:
attach_info:
additionalProperties:
type: string
description: AttachInfo is a list of name value mappings that provides attach information.
type: object
attach_path:
description: AttachPath is the mounted path in the host namespace.
items:
type: string
type: array
attach_time:
description: AttachTime time this device was last attached externally.
format: date-time
type: string
attached_on:
description: AttachedOn is the node instance identifier for clustered systems.
type: string
attached_state:
$ref: '#/components/schemas/apiAttachState'
ctime:
format: date-time
title: Volume creation time
type: string
derived_io_profile:
$ref: '#/components/schemas/apiIoProfile'
detach_time:
description: DetachTime time this device was detached.
format: date-time
type: string
device_path:
description: DevicePath is the device exported by block device implementations.
type: string
error:
description: Error is the Last recorded error.
type: string
format:
$ref: '#/components/schemas/apiFSType'
fpConfig:
$ref: '#/components/schemas/apiFastpathConfig'
fs_resize_required:
description: FsResizeRequired if an FS resize is required on the volume.
type: boolean
group:
$ref: '#/components/schemas/apiGroup'
id:
description: Self referential volume ID.
type: string
in_trashcan:
title: InTrashcan if the volume is in trashcan
type: boolean
last_scan:
description: LastScan is the time when an integrity check was run.
format: date-time
type: string
last_scan_fix:
format: date-time
title: LastScanFix is the time when an integrity check fixed errors in filesystem
type: string
last_scan_status:
$ref: '#/components/schemas/apiFilesystemHealthStatus'
locator:
$ref: '#/components/schemas/apiVolumeLocator'
mount_options:
$ref: '#/components/schemas/apiMountOptions'
readonly:
description: Readonly is true if this volume is to be mounted with readonly access.
type: boolean
replica_sets:
description: ReplicatSets storage for this volumefor clustered storage arrays.
items:
$ref: '#/components/schemas/apiReplicaSet'
type: array
runtime_state:
description: 'RuntimeState is a lst of name value mapping of driver specific runtime
information.'
items:
$ref: '#/components/schemas/apiRuntimeStateMap'
type: array
secure_device_path:
description: SecureDevicePath is the device path for an encrypted volume.
type: string
sharedv4_mount_options:
$ref: '#/components/schemas/apiMountOptions'
source:
$ref: '#/components/schemas/apiSource'
spec:
$ref: '#/components/schemas/apiVolumeSpec'
state:
$ref: '#/components/schemas/apiVolumeState'
status:
$ref: '#/components/schemas/apiVolumeStatus'
usage:
description: Usage is bytes consumed by this volume.
format: uint64
type: string
volume_consumers:
items:
$ref: '#/components/schemas/apiVolumeConsumer'
title: VolumeConsumers are entities that consume this volume
type: array
type: object
apiPureBlockSpec:
properties:
full_vol_name:
type: string
pod_name:
type: string
serial_num:
type: string
title: PureBlockSpec is the spec for proxying a volume on pure_block backends
type: object
ScanPolicyScanAction:
default: SCAN_ACTION_NONE
enum:
- SCAN_ACTION_NONE
- SCAN_ACTION_SCAN_ONLY
- SCAN_ACTION_SCAN_REPAIR
type: string
runtimeError:
properties:
code:
format: int32
type: integer
details:
items:
$ref: '#/components/schemas/protobufAny'
type: array
error:
type: string
message:
type: string
type: object
apiMountOptions:
description: MountOptions defines the mount options with which a volume is mounted.
properties:
options:
additionalProperties:
type: string
title: 'Options are opaque key value pairs that are passed as mount options when
a volume is mounted.
If an empty value is provided only the key will be passed as an option
If both key and value are provided then ''key=value'' will be passed as an
option'
type: object
type: object
apiScanPolicy:
description: 'ScanPolicy defines when a filesystem check is triggered and what action to take
User can specify *one* of the following valid policies
1. trigger=SCAN_TRIGGER_ON_MOUNT, action=SCAN_ACTION_SCAN_ONLY
2. trigger=SCAN_TRIGGER_ON_MOUNT, action=SCAN_ACTION_SCAN_REPAIR
3. trigger=SCAN_TRIGGER_ON_NEXT_MOUNT, action=SCAN_ACTION_SCAN_ONLY
4. trigger=SCAN_TRIGGER_ON_NEXT_MOUNT, action=SCAN_ACTION_SCAN_REPAIR
5. trigger=SCAN_TRIGGER_NONE, action=SCAN_ACTION_NONE
Note: When trigger == SCAN_TRIGGER_ON_NEXT_MOUNT, the associated action is
performed once on the next mount and the scanpolicy gets reset to
`trigger=SCAN_TRIGGER_NONE, action=SCAN_ACTION_NONE`, irrespective of the
output of the action.'
properties:
action:
$ref: '#/components/schemas/ScanPolicyScanAction'
trigger:
$ref: '#/components/schemas/ScanPolicyScanTrigger'
type: object
LabelSelectorRequirementOperator:
default: In
description: "- In: In means the value for 'key' should be in one of the given value(s)\n - NotIn: NotIn means the value for 'key' should NOT be in one of the given value(s)\n - Exists: Exists means the 'key' should just exist regardless of the value\n - DoesNotExist: DoesNotExist means the 'key' should NOT exist\n - Gt: Gt means the 'key' should be greater than the value(s)\n - Lt: Lt means the 'key' should be less than the value(s)"
enum:
- In
- NotIn
- Exists
- DoesNotExist
- Gt
- Lt
title: This defines operator types used in a label matching rule
type: string
apiSdkWatchResponse:
properties:
volume_event:
$ref: '#/components/schemas/apiSdkVolumeWatchResponse'
title: Defines the response to watch an openstorage event. An event can be a volume, a node, a disk, etc
type: object
apiProxySpec:
description: ProxySpec defines how this volume will reflect an external data source.
properties:
endpoint:
description: 'Endpoint is the external endpoint which can be used for accessing the
external data source.'
type: string
nfs_spec:
$ref: '#/components/schemas/apiNFSProxySpec'
proxy_protocol:
$ref: '#/components/schemas/apiProxyProtocol'
pure_block_spec:
$ref: '#/components/schemas/apiPureBlockSpec'
pure_file_spec:
$ref: '#/components/schemas/apiPureFileSpec'
pxd_spec:
$ref: '#/components/schemas/apiPXDProxySpec'
s3_spec:
$ref: '#/components/schemas/apiS3ProxySpec'
type: object
apiPXDProxySpec:
properties:
id:
title: ID of the remote portworx volume
type: string
title: PXDProxySpec is the spec for proxying a Portworx volume
type: object
apiExportProtocol:
default: INVALID
description: "ExportProtocol defines how the device is exported..\n\n - INVALID: Invalid uninitialized value\n - PXD: PXD the volume is exported over Portworx block interface.\n - ISCSI: ISCSI the volume is exported over ISCSI.\n - NFS: NFS the volume is exported over NFS.\n - CUSTOM: Custom the volume is exported over custom interface."
enum:
- INVALID
- PXD
- ISCSI
- NFS
- CUSTOM
type: string
apiNFSProxySpec:
description: NFSProxySpec is the spec for proxying an NFS share.
properties:
export_path:
title: ExportPath is the NFS export path on the NFS server
type: string
sub_path:
description: SubPath is the sub-directory from an NFS share that should be reflected.
type: string
type: object
apiVolumeSpec:
description: VolumeSpec has the properties needed to create a volume.
properties:
aggregation_level:
description: Aggregation level Specifies the number of parts the volume can be aggregated from.
format: int64
type: integer
auto_fstrim:
title: Autofstrim indicates that fstrim would be run on this volume automatically, without user intervention
type: boolean
block_size:
description: BlockSize for the filesystem.
format: int64
type: string
cascaded:
description: Cascaded is true if this volume can be populated on any node from an external source.
type: boolean
checksum_clone_id:
title: clone created to trigger checksum verification
type: string
checksummed:
title: Checksummed indicates if volumed data is checksummed to provide data integrity
type: boolean
compressed:
description: Compressed is true if this volume is to be compressed.
type: boolean
cos:
$ref: '#/components/schemas/apiCosType'
dedupe:
description: Dedupe specifies if the volume data is to be de-duplicated.
type: boolean
encrypted:
description: Encrypted is true if this volume will be cryptographically secured.
type: boolean
ephemeral:
title: Ephemeral storage
type: boolean
export_spec:
$ref: '#/components/schemas/apiExportSpec'
fa_create_options:
description: Filesystem create options to be honored.
type: string
force_unsupported_fs_type:
description: 'Use to force a file system type which is not recommended.
The driver may still refuse to use the file system type.'
type: boolean
format:
$ref: '#/components/schemas/apiFSType'
fp_preference:
title: fastpath extensions
type: boolean
group:
$ref: '#/components/schemas/apiGroup'
group_enforced:
description: GroupEnforced is true if consistency group creation is enforced.
type: boolean
ha_level:
description: HaLevel specifies the number of copies of data.
format: int64
type: string
io_profile:
$ref: '#/components/schemas/apiIoProfile'
io_strategy:
$ref: '#/components/schemas/apiIoStrategy'
io_throttle:
$ref: '#/components/schemas/apiIoThrottle'
journal:
description: Journal is true if data for the volume goes into the journal.
type: boolean
mount_options:
$ref: '#/components/schemas/apiMountOptions'
near_sync:
title: NearSync specifies the volume has a near-sync replica
type: boolean
near_sync_replication_strategy:
$ref: '#/components/schemas/apiNearSyncReplicationStrategy'
nodiscard:
description: 'Nodiscard specifies if the volume will be mounted with discard support disabled.
i.e. FS will not release allocated blocks back to the backing storage pool.'
type: boolean
number_of_chunks:
format: int64
title: NumberOfChunks indicates how many chunks must be created, 0 and 1 both mean 1
type: integer
ownership:
$ref: '#/components/schemas/apiOwnership'
passphrase:
title: Passphrase for an encrypted volume
type: string
placement_strategy:
$ref: '#/components/schemas/apiVolumePlacementStrategy'
proxy_spec:
$ref: '#/components/schemas/apiProxySpec'
proxy_write:
title: Proxy_write if true, per volume proxy write replication enabled
type: boolean
queue_depth:
format: int64
title: QueueDepth defines the desired block device queue depth
type: integer
readahead:
title: Enable readahead for the volume
type: boolean
replica_set:
$ref: '#/components/schemas/apiReplicaSet'
scale:
description: Scale allows autocreation of volumes.
format: int64
type: integer
scan_policy:
$ref: '#/components/schemas/apiScanPolicy'
shared:
description: Share
# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/portworx/refs/heads/main/openapi/portworx-openstoragewatch-api-openapi.yml