Skip to content

Commit

Permalink
Move VolumeGroupSnapshot to GA (container-storage-interface#573)
Browse files Browse the repository at this point in the history
  • Loading branch information
xing-yang authored Oct 22, 2024
1 parent 2f34062 commit f6b6d53
Show file tree
Hide file tree
Showing 3 changed files with 1,182 additions and 1,243 deletions.
31 changes: 3 additions & 28 deletions csi.proto
Original file line number Diff line number Diff line change
Expand Up @@ -109,26 +109,21 @@ service Controller {
}

service GroupController {
option (alpha_service) = true;

rpc GroupControllerGetCapabilities (
GroupControllerGetCapabilitiesRequest)
returns (GroupControllerGetCapabilitiesResponse) {}

rpc CreateVolumeGroupSnapshot(CreateVolumeGroupSnapshotRequest)
returns (CreateVolumeGroupSnapshotResponse) {
option (alpha_method) = true;
}

rpc DeleteVolumeGroupSnapshot(DeleteVolumeGroupSnapshotRequest)
returns (DeleteVolumeGroupSnapshotResponse) {
option (alpha_method) = true;
}

rpc GetVolumeGroupSnapshot(
GetVolumeGroupSnapshotRequest)
returns (GetVolumeGroupSnapshotResponse) {
option (alpha_method) = true;
}
}

Expand Down Expand Up @@ -229,7 +224,7 @@ message PluginCapability {
// attempt to invoke the REQUIRED GroupController service RPCs, as
// well as specific RPCs as indicated by
// GroupControllerGetCapabilities.
GROUP_CONTROLLER_SERVICE = 3 [(alpha_enum_value) = true];
GROUP_CONTROLLER_SERVICE = 3;

// SNAPSHOT_METADATA_SERVICE indicates that the Plugin provides
// RPCs to retrieve metadata on the allocated blocks of a single
Expand Down Expand Up @@ -1287,7 +1282,7 @@ message Snapshot {
// and SP SHALL allow it to be deleted separately.
// If this message is inside a VolumeGroupSnapshot message, the value
// MUST be the same as the group_snapshot_id in that message.
string group_snapshot_id = 6 [(alpha_field) = true];
string group_snapshot_id = 6;
}
message DeleteSnapshotRequest {
// The ID of the snapshot to be deleted.
Expand Down Expand Up @@ -1760,32 +1755,25 @@ message NodeExpandVolumeResponse {
int64 capacity_bytes = 1;
}
message GroupControllerGetCapabilitiesRequest {
option (alpha_message) = true;

// Intentionally empty.
}

message GroupControllerGetCapabilitiesResponse {
option (alpha_message) = true;

// All the capabilities that the group controller service supports.
// This field is OPTIONAL.
repeated GroupControllerServiceCapability capabilities = 1;
}

// Specifies a capability of the group controller service.
message GroupControllerServiceCapability {
option (alpha_message) = true;

message RPC {
enum Type {
UNKNOWN = 0;

// Indicates that the group controller plugin supports
// creating, deleting, and getting details of a volume
// group snapshot.
CREATE_DELETE_GET_VOLUME_GROUP_SNAPSHOT = 1
[(alpha_enum_value) = true];
CREATE_DELETE_GET_VOLUME_GROUP_SNAPSHOT = 1;
}

Type type = 1;
Expand All @@ -1797,8 +1785,6 @@ message GroupControllerServiceCapability {
}
}
message CreateVolumeGroupSnapshotRequest {
option (alpha_message) = true;

// The suggested name for the group snapshot. This field is REQUIRED
// for idempotency.
// Any Unicode string that conforms to the length limit is allowed
Expand Down Expand Up @@ -1826,16 +1812,12 @@ message CreateVolumeGroupSnapshotRequest {
}

message CreateVolumeGroupSnapshotResponse {
option (alpha_message) = true;

// Contains all attributes of the newly created group snapshot.
// This field is REQUIRED.
VolumeGroupSnapshot group_snapshot = 1;
}

message VolumeGroupSnapshot {
option (alpha_message) = true;

// The identifier for this group snapshot, generated by the plugin.
// This field MUST contain enough information to uniquely identify
// this specific snapshot vs all other group snapshots supported by
Expand Down Expand Up @@ -1867,8 +1849,6 @@ message VolumeGroupSnapshot {
bool ready_to_use = 4;
}
message DeleteVolumeGroupSnapshotRequest {
option (alpha_message) = true;

// The ID of the group snapshot to be deleted.
// This field is REQUIRED.
string group_snapshot_id = 1;
Expand All @@ -1895,11 +1875,8 @@ message DeleteVolumeGroupSnapshotRequest {

message DeleteVolumeGroupSnapshotResponse {
// Intentionally empty.
option (alpha_message) = true;
}
message GetVolumeGroupSnapshotRequest {
option (alpha_message) = true;

// The ID of the group snapshot to fetch current group snapshot
// information for.
// This field is REQUIRED.
Expand All @@ -1926,8 +1903,6 @@ message GetVolumeGroupSnapshotRequest {
}

message GetVolumeGroupSnapshotResponse {
option (alpha_message) = true;

// This field is REQUIRED
VolumeGroupSnapshot group_snapshot = 1;
}
Expand Down
Loading

0 comments on commit f6b6d53

Please sign in to comment.