mirror of
https://github.com/vmware-tanzu/velero.git
synced 2026-04-21 00:00:33 +00:00
Refactor plugin management: - support multiple plugins per executable - support restarting a plugin process in the event it terminates - simplify plugin lifecycle management by using separate managers for each scope (server vs backup vs restore) Signed-off-by: Andy Goldstein <andy.goldstein@gmail.com>
84 lines
1.8 KiB
Protocol Buffer
84 lines
1.8 KiB
Protocol Buffer
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 IsVolumeReadyRequest {
|
|
string plugin = 1;
|
|
string volumeID = 2;
|
|
string volumeAZ = 3;
|
|
}
|
|
|
|
message IsVolumeReadyResponse {
|
|
bool ready = 1;
|
|
}
|
|
|
|
message CreateSnapshotRequest {
|
|
string plugin = 1;
|
|
string volumeID = 2;
|
|
string volumeAZ = 3;
|
|
map<string, string> 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;
|
|
}
|
|
|
|
service BlockStore {
|
|
rpc Init(InitRequest) returns (Empty);
|
|
rpc CreateVolumeFromSnapshot(CreateVolumeRequest) returns (CreateVolumeResponse);
|
|
rpc GetVolumeInfo(GetVolumeInfoRequest) returns (GetVolumeInfoResponse);
|
|
rpc IsVolumeReady(IsVolumeReadyRequest) returns (IsVolumeReadyResponse);
|
|
rpc CreateSnapshot(CreateSnapshotRequest) returns (CreateSnapshotResponse);
|
|
rpc DeleteSnapshot(DeleteSnapshotRequest) returns (Empty);
|
|
rpc GetVolumeID(GetVolumeIDRequest) returns (GetVolumeIDResponse);
|
|
rpc SetVolumeID(SetVolumeIDRequest) returns (SetVolumeIDResponse);
|
|
}
|