All notable changes to Linstor OPENAPI(REST) will be documented in this file.
- Added x_replicas_on_different_map option to AutoSelectFilter schema
- Added keep_tiebreaker query parameter to DELETE /v1/resource-definitions/{resource}/resources/{node}
- Added force_restore parameter to backup ship, restore and schedule backups
- Added volume_passphrases to resource-group spawn
- Added volume_passphrases to ResourceDefinitionCloneRequest
- Added passphrase to volume-definition create
- Added volume definition PUT /encryption-passphrase endpoint
- Added initial resource definition properties to spawn command
- Removed everything OpenFlex related (entry-points, schemas, etc..)
- Added peerSlots to ResourceGroup (create, modify and spawn)
- Added stor_pool_free_capacity_oversubscription_ratio and stor_pool_total_capacity_oversubscription_ratio to QuerySizeInfoSpawnResult
- Added GET /v1/files/{extFileName}/check/{node}
- Added ExtFileCheckResult
- Added storpool_rename to SnapshotRestore and BackupSchedule
- Deprecated EXOS entry points
- Added EffectivePropertiesMap, EffectivePropertiesMapValue and PropertyWithDescription objects
- Added max_rollback_entries to ControllerConfigDbK8s
- Added GET /v1/view/backup/queue
- Added SnapQueue, NodeQueue, and BackupQueues objects
- Added POST /v1/queries/resource-groups/query-all-size-info
- Added QueryAllSizeInfoRequest and QueryAllSizeInfoResponse objects
- Added POST /v1/action/snapshot/multi as well as CreateMultiSnapshotRequest and CreateMultiSnapshotResponse objects
- Added POST /v1/resource-groups/{resource_group}/query-size-info
- Added QuerySizeInfoRequest and QuerySizeInfoResponse objects
- Added GET /v1/node-connections/ with filter-options ?node_a and ?node_b
- Added PUT /v1/node-connections/{nodeA}/{nodeB}
- Added NodeConnection and NodeConnectionModify objects
- Added GET, POST /v1/remotes/ebs
- Added PUT /v1/remotes/ebs/{remoteName}
- Extended RemoteList with ebs_remotes
- Added POST /v1/nodes/ebs
- Extended SatelliteConfig with ebs boolean
- Added SnapshotVolumeNode which includes an optional state
- Added /v1/physical-storage/{node} to view devices for a single node
- Added /v1/schedules/ and /v1/schedules/{scheduleName} endpoints as well as Schedule to create, delete, modify and list schedules
- Added /v1/remotes/{remote_name}/backups/schedule/{schedule_name}/enable, disable and delete to create, delete and modify schedule-remote-rscDfn-triples
- Added /v1/schedules/list and /v1/schedules/list/{rscName} endpoints as well as ScheduledRscs and ScheduleDetails to list schedule-remote-rscDfn-triples
- Added k8s options to DB config
- Added NetCom properties to whitelist
- Added use_zfs_clone to clone request
- Added snap_name to backup create
- Added /v1/events/nodes SSE node events stream
- Added ?cached=true option for all storage-pool list APIs
- Added ?limit and ?offset to /v1/nodes/{node}/storage-pools/{storagepool}
- Added /v1/controller/backup/db to do an database online backup
- Added /v1/resource-definitions/{resource}/sync-status to check if resource is ready to be used
- Added /v1/nodes/{node}/evacuate
- Added /v1/stats/* endpoints for all objects
- Added /v1/remotes/{remote-name}/backups/info as well as BackupInfo, BackupInfoRequest, BackupInfoStorPool and BackupInfoVolume
- Added download_only to BackupShip and BackupRestore
- Added query-param "nodes" for DELETE /v1/resource-definitions/{resource}/snapshots/{snapshot}
- Added optional Node.eviction_timestamp
- Added Schema NodeRestore
- Extended PUT /v1/nodes/{node_name}/restore to accept new NodeRestore body
- Added resource-definition clone API
- POST /v1/resource-definitions/{rscname}/clone
- GET /v1/resource-definitions/{rscname}/clone/{clonedrsc}
- Added /v1/resource-groups/{resource_group}/adjust
- Added /v1/resource-groups/adjustall
- Added Backup and BackupList, as well as the entrypoint /v1/remotes/{remote_name}/backups
- Added S3Remote and the corresponding entrypoint /v1/remotes
- Added LinstorRemote and the corresponding entrypoint /v1/remotes
- Extended SatelliteConfig with remote_spdk boolean
- Added layer_stack to toggle-disk API
- Added layer BCACHE
- Schemas BCacheResource and BCacheVolume
- Added shared_name to ResourceWithVolumes
- Added makeResourceAvailable API
- Added diskless storage pool filter to AutoSelectFilter
- Added external_locking to StoragePool
- Added shared_space and external_locking to PhysicalStorageStoragePoolCreate
- Added shared_space to StoragePool (for listing)
- Added EXOS API
- /v1/vendor/seagate/exos/defaults
- /v1/vendor/seagate/exos/enclosure/
- /v1/vendor/seagate/exos/enclosure/{enclosure}
- /v1/vendor/seagate/exos/enclosure/{enclosure}/events
- /v1/vendor/seagate/exos/map
- Added ExternalFiles API with corresponding data structure
- /v1/files
- /v1/files/{extFileName}
- /v1/resource-definitions/{resource}/files/{extFileName}
- Added de-/activate to resource API
- /v1/resource-definitions/{resource}/resources/{node_name}/activate
- /v1/resource-definitions/{resource}/resources/{node_name}/deactivate
- Added the PropsInfo API which exposes meta information about properties:
- /v1/controller/properties/info
- /v1/controller/properties/info/all
- /v1/nodes/properties/info
- /v1/storage-pool-definitions/properties/info
- /v1/nodes/{node}/storage-pools/properties/info
- /v1/resource-definitions/properties/info
- /v1/resource-definitions/{resource}/resources/properties/info
- /v1/resource-definitions/{resource}/volume-definitions/properties/info
- /v1/resource-definitions/{resource}/resources/{node}/volumes/properties/info
- /v1/resource-definitions/{resource}/resource-connections/properties/info
- /v1/resource-groups/properties/info
- /v1/resource-groups/{resource_group}/volume-groups/properties/info
- /v1/resource-definitions/{resource}/drbd-proxy/properties/info
- Added /v1/nodes/{node}/restore
- Added additional_place_count to AutoSelectFilter
- Added etcd.prefix to ControllerConfigDbEtcd parameters
- Added promotion_score and may_promote to DrbdResource object
- Added /v1/error-reports DELETE method, to delete a range of error reports or single ones
- Added SSE (Server Sent Events) url /v1/events/drbd/promotion
- Added /v1/view/snapshot-shippings
- Added optional AutoSelectFilter to resource-group/spawn
- Added /v1/nodes/{node}/config, that allows you to get and set the satellite config
- Added /v1/sos-report to create bug reports you can send to linbit
- Added new fields to the ErrorReport object
- Added /v1/resource-definitions/{resource}/snapshot-shipping
- Allow to modify the resource group in Resource definitions
- Added createTimestamp to Resource and Snapshot
- Added default value (null) for AutoPlaceRequest's layer_list
- Added /v1/view/snapshots for a faster all in one snapshot list
- Filter lists by properties:
- /v1/nodes
- /v1/resource-definitions
- /v1/resource-groups
- /v1/view/storage-pools
- /v1/view/resources
- Added CacheResource and CacheVolume schemas
- AutSelectFilter arrays are now null per default
- Added connections map to the DRBD resource layer data
- Added support for Openflex
- Added /v1/controller/config, that gives you the controller config information
- Fixed broken volume definition modify
flags
handling - Added flags to volume groups (create/modify)
- Added WritecacheResource and WritecacheVolume schemas.
- Removed support for swordfish
- Added
with_storage_pool
to PhysicalStorageCreate post request, allowing to create linstor storage pools too - Added
gross
flag for volume-definition size - Added flags to VolumeDefinitionModify (so that
gross
flag can be changed) - Added query-max-volume-size to resource-groups
- Added /v1/physical-storage endpoint, that lets you query and create lvm/zfs pools
- Extended Node with list of supported providers and layers as well as lists of reasons for unsupported providers and layers
- Added
reports
array field to Volume object, contains ApiCallRcs for problems - Changed
ResourceDefinitions
can now includeVolumeDefinitions
involume_definitions
field - Added various filter query parameters
- Added supports_snapshots to StoragePool
- Added /v1/resource-groups
- Added /v1/resource-groups/{rscgrp}/volume-groups
- Moved AutoSelectFilter::place_count default indirectly to create resource implementation
- Added diskless_on_remaining to AutoSelectFilter
- Changed /v1/view/resources return type to ResourceWithVolumes ResourceWithVolumes is now a child type of Resource (removed volumes from Resource)
- Added ext_meta_stor_pool to DrbdVolume
- Added is_active field to the NetInterface type
- Added /v1/resource-definitions/{rscName}/resources/{nodeName}/volumes/{vlmnr} PUT
- Added
reports
field to StoragePool object
- Added /v1/view/storage-pools overview path
- Added uuid fields for objects
- Added /v1/view/resources overview path
- documentation schema extraction
- Added /v1/storage-pool-definitions object path
- added NVME layer object type
- Documentation review and updates
- no functional changes
- Initial REST API v1