110 lines
2.8 KiB
Protocol Buffer
110 lines
2.8 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package v1beta2;
|
|
|
|
option go_package = "github.com/kubernetes-csi/csi-proxy/client/api/disk/v1beta2";
|
|
|
|
service Disk {
|
|
// ListDiskLocations returns locations <Adapter, Bus, Target, LUN ID> of all
|
|
// disk devices enumerated by the host
|
|
rpc ListDiskLocations(ListDiskLocationsRequest) returns (ListDiskLocationsResponse) {}
|
|
|
|
// PartitionDisk initializes and partitions a disk device (if the disk has not
|
|
// been partitioned already) and returns the resulting volume device ID
|
|
rpc PartitionDisk(PartitionDiskRequest) returns (PartitionDiskResponse) {}
|
|
|
|
// Rescan refreshes the host's storage cache
|
|
rpc Rescan(RescanRequest) returns (RescanResponse) {}
|
|
|
|
// ListDiskIDs returns a map of DiskID objects where the key is the disk number
|
|
rpc ListDiskIDs(ListDiskIDsRequest) returns (ListDiskIDsResponse) {}
|
|
|
|
// DiskStats returns the stats for the disk
|
|
rpc DiskStats(DiskStatsRequest) returns (DiskStatsResponse) {}
|
|
|
|
// SetAttachState sets the offline/online state of a disk
|
|
rpc SetAttachState(SetAttachStateRequest) returns (SetAttachStateResponse) {}
|
|
|
|
// GetAttachState gets the offline/online state of a disk
|
|
rpc GetAttachState(GetAttachStateRequest) returns (GetAttachStateResponse) {}
|
|
}
|
|
|
|
message ListDiskLocationsRequest {
|
|
// Intentionally empty
|
|
}
|
|
|
|
message DiskLocation {
|
|
string Adapter = 1;
|
|
string Bus = 2;
|
|
string Target = 3;
|
|
string LUNID = 4;
|
|
}
|
|
|
|
message ListDiskLocationsResponse {
|
|
// Map of disk device IDs and <adapter, bus, target, lun ID> associated with each disk device
|
|
map <string, DiskLocation> disk_locations = 1;
|
|
}
|
|
|
|
message PartitionDiskRequest {
|
|
// Disk device ID of the disk to partition
|
|
string diskID = 1;
|
|
}
|
|
|
|
message PartitionDiskResponse {
|
|
// Intentionally empty
|
|
}
|
|
|
|
message RescanRequest {
|
|
// Intentionally empty
|
|
}
|
|
|
|
message RescanResponse {
|
|
// Intentionally empty
|
|
}
|
|
|
|
message ListDiskIDsRequest {
|
|
// Intentionally empty
|
|
}
|
|
|
|
message DiskIDs {
|
|
// Map of Disk ID types and Disk ID values
|
|
map <string, string> identifiers = 1;
|
|
}
|
|
|
|
message ListDiskIDsResponse {
|
|
// Map of disk device numbers and IDs <page83> associated with each disk device
|
|
map <string, DiskIDs> diskIDs = 1;
|
|
}
|
|
|
|
message DiskStatsRequest {
|
|
// Disk device ID of the disk to get the size from
|
|
string diskID = 1;
|
|
}
|
|
|
|
message DiskStatsResponse {
|
|
//Total size of the volume
|
|
int64 diskSize = 1;
|
|
}
|
|
|
|
message SetAttachStateRequest {
|
|
// Disk device ID (number) of the disk which state will change
|
|
string diskID = 1;
|
|
|
|
// Online state to set for the disk. true for online, false for offline
|
|
bool isOnline = 2;
|
|
}
|
|
|
|
message SetAttachStateResponse {
|
|
}
|
|
|
|
message GetAttachStateRequest {
|
|
// Disk device ID (number) of the disk
|
|
string diskID = 1;
|
|
}
|
|
|
|
message GetAttachStateResponse {
|
|
// Online state of the disk. true for online, false for offline
|
|
bool isOnline = 1;
|
|
}
|
|
|