40
40
- [ CSI Group Controller RPC] ( #csi-group-controller-rpc )
41
41
- [ CreateVolumeGroupSnapshot] ( #createvolumegroupsnapshot )
42
42
- [ DeleteVolumeGroupSnapshot] ( #deletevolumegroupsnapshot )
43
- - [ ControllerGetVolumeGroupSnapshot ] ( #controllergetvolumegroupsnapshot )
43
+ - [ GetVolumeGroupSnapshot ] ( #getvolumegroupsnapshot )
44
44
- [ Production Readiness Review Questionnaire] ( #production-readiness-review-questionnaire )
45
45
- [ Feature enablement and rollback] ( #feature-enablement-and-rollback )
46
46
- [ Rollout, Upgrade and Rollback Planning] ( #rollout-upgrade-and-rollback-planning )
@@ -349,24 +349,6 @@ type VolumeGroupSnapshotSpec struct {
349
349
// secret object contains more than one secret, all secrets are passed.
350
350
// +optional
351
351
VolumeGroupSnapshotSecretRef *SecretReference
352
-
353
- // A list of VolumeSecrets
354
- // This field is only needed if per volume secret is different from
355
- // VolumeGroupSnapshotSecretRef
356
- // +optional
357
- VolumeSecretRefList []VolumeSecret
358
- }
359
-
360
- Type VolumeSecret {
361
- // Name of a PVC
362
- Name string
363
-
364
- // VolumeSecretRef is a reference to the secret object containing
365
- // sensitive information to pass to the CSI driver to complete the CSI
366
- // calls for VolumeGroupSnapshots.
367
- // This field is optional, and may be empty if no secret is required. If the
368
- // secret object contains more than one secret, all secrets are passed.
369
- VolumeSecretRef *SecretReference
370
352
}
371
353
372
354
Type VolumeGroupSnapshotStatus struct {
@@ -581,35 +563,14 @@ message CreateVolumeGroupSnapshotRequest {
581
563
// ControllerCreateVolumeGroupSnapshot request.
582
564
// This field is OPTIONAL. Refer to the `Secrets Requirements`
583
565
// section on how to use this field.
584
- // The secrets provided in this field SHOULD be the same as
585
- // the secrets provided in ControllerDeleteVolumeGroupSnapshot
586
- // and ControllerGetVolumeGroupSnapshot requests for the same
587
- // group snapshot unless if secrets are rotated after the
588
- // group snapshot is created.
566
+ // The secrets provided in this field SHOULD be the same for
567
+ // all group snapshot operations on the same group snapshot.
589
568
map<string, string> secrets = 3 [(csi_secret) = true];
590
569
591
- // Volume secrets required by plugin to complete volume group
592
- // snapshot creation request. This field is needed in case the
593
- // volume level secrets are different from the above secrets
594
- // for the group snapshot.
595
- // This field is OPTIONAL.
596
- repeated VolumeSecret volume_secrets = 4;
597
-
598
570
// Plugin specific parameters passed in as opaque key-value pairs.
599
571
// This field is OPTIONAL. The Plugin is responsible for parsing and
600
572
// validating these parameters. COs will treat these as opaque.
601
- map<string, string> parameters = 5;
602
- }
603
-
604
- message VolumeSecret {
605
- // ID of the volume whose secrets are provided.
606
- // This field is REQUIRED.
607
- string volume_id = 1;
608
-
609
- // Secrets required by plugin for a volume operation.
610
- // This field is REQUIRED. Refer to the `Secrets Requirements`
611
- // section on how to use this field.
612
- map<string, string> secrets = 2 [(.csi.v1.csi_secret) = true];
573
+ map<string, string> parameters = 4;
613
574
}
614
575
615
576
message CreateVolumeGroupSnapshotResponse {
@@ -641,6 +602,17 @@ message VolumeGroupSnapshot {
641
602
// Timestamp when the volume group snapshot is taken.
642
603
// This field is REQUIRED.
643
604
.google.protobuf.Timestamp creation_time = 3;
605
+
606
+ // Indicates if all individual snapshots in the group snapshot
607
+ // are ready to use as a `volume_content_source` in a
608
+ // `CreateVolumeRequest`. The default value is false.
609
+ // If any snapshot in the list of snapshots in this message have
610
+ // ready_to_use set to false, the SP MUST set this field to false.
611
+ // If all of the snapshots in the list of snapshots in this message
612
+ // have ready_to_use set to true, the SP SHOULD set this field to
613
+ // true.
614
+ // This field is REQUIRED.
615
+ bool ready_to_use = 4;
644
616
}
645
617
```
646
618
@@ -677,10 +649,10 @@ message DeleteVolumeGroupSnapshotResponse {
677
649
}
678
650
```
679
651
680
- #### ControllerGetVolumeGroupSnapshot
652
+ #### GetVolumeGroupSnapshot
681
653
682
654
```
683
- message ControllerGetVolumeGroupSnapshotRequest {
655
+ message GetVolumeGroupSnapshotRequest {
684
656
option (alpha_message) = true;
685
657
686
658
// The ID of the group snapshot to fetch current group snapshot
@@ -689,7 +661,7 @@ message ControllerGetVolumeGroupSnapshotRequest {
689
661
string group_snapshot_id = 1;
690
662
691
663
// Secrets required by plugin to complete
692
- // ControllerGetVolumeGroupSnapshot request.
664
+ // GetVolumeGroupSnapshot request.
693
665
// This field is OPTIONAL. Refer to the `Secrets Requirements`
694
666
// section on how to use this field.
695
667
// The secrets provided in this field SHOULD be the same as
@@ -699,7 +671,7 @@ message ControllerGetVolumeGroupSnapshotRequest {
699
671
map<string, string> secrets = 2 [(csi_secret) = true];
700
672
}
701
673
702
- message ControllerGetVolumeGroupSnapshotResponse {
674
+ message GetVolumeGroupSnapshotResponse {
703
675
option (alpha_message) = true;
704
676
705
677
// This field is REQUIRED
0 commit comments