syntax = "proto3"; package generated; import "Shared.proto"; message CreateVolumeRequest { string plugin = 1; string snapshotID = 2; string volumeType = 3; string volumeAZ = 4; int64 iops = 5; } message CreateVolumeResponse { string volumeID = 1; } message GetVolumeInfoRequest { string plugin = 1; string volumeID = 2; string volumeAZ = 3; } message GetVolumeInfoResponse { string volumeType = 1; int64 iops = 2; } message CreateSnapshotRequest { string plugin = 1; string volumeID = 2; string volumeAZ = 3; map tags = 4; } message CreateSnapshotResponse { string snapshotID = 1; } message DeleteSnapshotRequest { string plugin = 1; string snapshotID = 2; } message GetVolumeIDRequest { string plugin = 1; bytes persistentVolume = 2; } message GetVolumeIDResponse { string volumeID = 1; } message SetVolumeIDRequest { string plugin = 1; bytes persistentVolume = 2; string volumeID = 3; } message SetVolumeIDResponse { bytes persistentVolume = 1; } message VolumeSnapshotterInitRequest { string plugin = 1; map config = 2; } service VolumeSnapshotter { rpc Init(VolumeSnapshotterInitRequest) returns (Empty); rpc CreateVolumeFromSnapshot(CreateVolumeRequest) returns (CreateVolumeResponse); rpc GetVolumeInfo(GetVolumeInfoRequest) returns (GetVolumeInfoResponse); rpc CreateSnapshot(CreateSnapshotRequest) returns (CreateSnapshotResponse); rpc DeleteSnapshot(DeleteSnapshotRequest) returns (Empty); rpc GetVolumeID(GetVolumeIDRequest) returns (GetVolumeIDResponse); rpc SetVolumeID(SetVolumeIDRequest) returns (SetVolumeIDResponse); }