xref: /aosp_15_r20/external/googleapis/google/cloud/netapp/v1/volume.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.netapp.v1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto";
21*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/netapp/v1/common.proto";
22*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto";
23*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
24*d5c09012SAndroid Build Coastguard Worker
25*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.NetApp.V1";
26*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/netapp/apiv1/netapppb;netapppb";
27*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
28*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "VolumeProto";
29*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.netapp.v1";
30*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\NetApp\\V1";
31*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::NetApp::V1";
32*d5c09012SAndroid Build Coastguard Worker
33*d5c09012SAndroid Build Coastguard Worker// Protocols is an enum of all the supported network protocols for a volume.
34*d5c09012SAndroid Build Coastguard Workerenum Protocols {
35*d5c09012SAndroid Build Coastguard Worker  // Unspecified protocol
36*d5c09012SAndroid Build Coastguard Worker  PROTOCOLS_UNSPECIFIED = 0;
37*d5c09012SAndroid Build Coastguard Worker
38*d5c09012SAndroid Build Coastguard Worker  // NFS V3 protocol
39*d5c09012SAndroid Build Coastguard Worker  NFSV3 = 1;
40*d5c09012SAndroid Build Coastguard Worker
41*d5c09012SAndroid Build Coastguard Worker  // NFS V4 protocol
42*d5c09012SAndroid Build Coastguard Worker  NFSV4 = 2;
43*d5c09012SAndroid Build Coastguard Worker
44*d5c09012SAndroid Build Coastguard Worker  // SMB protocol
45*d5c09012SAndroid Build Coastguard Worker  SMB = 3;
46*d5c09012SAndroid Build Coastguard Worker}
47*d5c09012SAndroid Build Coastguard Worker
48*d5c09012SAndroid Build Coastguard Worker// AccessType is an enum of all the supported access types for a volume.
49*d5c09012SAndroid Build Coastguard Workerenum AccessType {
50*d5c09012SAndroid Build Coastguard Worker  // Unspecified Access Type
51*d5c09012SAndroid Build Coastguard Worker  ACCESS_TYPE_UNSPECIFIED = 0;
52*d5c09012SAndroid Build Coastguard Worker
53*d5c09012SAndroid Build Coastguard Worker  // Read Only
54*d5c09012SAndroid Build Coastguard Worker  READ_ONLY = 1;
55*d5c09012SAndroid Build Coastguard Worker
56*d5c09012SAndroid Build Coastguard Worker  // Read Write
57*d5c09012SAndroid Build Coastguard Worker  READ_WRITE = 2;
58*d5c09012SAndroid Build Coastguard Worker
59*d5c09012SAndroid Build Coastguard Worker  // None
60*d5c09012SAndroid Build Coastguard Worker  READ_NONE = 3;
61*d5c09012SAndroid Build Coastguard Worker}
62*d5c09012SAndroid Build Coastguard Worker
63*d5c09012SAndroid Build Coastguard Worker// SMBSettings
64*d5c09012SAndroid Build Coastguard Worker// Modifies the behaviour of a SMB volume.
65*d5c09012SAndroid Build Coastguard Workerenum SMBSettings {
66*d5c09012SAndroid Build Coastguard Worker  // Unspecified default option
67*d5c09012SAndroid Build Coastguard Worker  SMB_SETTINGS_UNSPECIFIED = 0;
68*d5c09012SAndroid Build Coastguard Worker
69*d5c09012SAndroid Build Coastguard Worker  // SMB setting encrypt data
70*d5c09012SAndroid Build Coastguard Worker  ENCRYPT_DATA = 1;
71*d5c09012SAndroid Build Coastguard Worker
72*d5c09012SAndroid Build Coastguard Worker  // SMB setting browsable
73*d5c09012SAndroid Build Coastguard Worker  BROWSABLE = 2;
74*d5c09012SAndroid Build Coastguard Worker
75*d5c09012SAndroid Build Coastguard Worker  // SMB setting notify change
76*d5c09012SAndroid Build Coastguard Worker  CHANGE_NOTIFY = 3;
77*d5c09012SAndroid Build Coastguard Worker
78*d5c09012SAndroid Build Coastguard Worker  // SMB setting not to notify change
79*d5c09012SAndroid Build Coastguard Worker  NON_BROWSABLE = 4;
80*d5c09012SAndroid Build Coastguard Worker
81*d5c09012SAndroid Build Coastguard Worker  // SMB setting oplocks
82*d5c09012SAndroid Build Coastguard Worker  OPLOCKS = 5;
83*d5c09012SAndroid Build Coastguard Worker
84*d5c09012SAndroid Build Coastguard Worker  // SMB setting to show snapshots
85*d5c09012SAndroid Build Coastguard Worker  SHOW_SNAPSHOT = 6;
86*d5c09012SAndroid Build Coastguard Worker
87*d5c09012SAndroid Build Coastguard Worker  // SMB setting to show previous versions
88*d5c09012SAndroid Build Coastguard Worker  SHOW_PREVIOUS_VERSIONS = 7;
89*d5c09012SAndroid Build Coastguard Worker
90*d5c09012SAndroid Build Coastguard Worker  // SMB setting to access volume based on enumerartion
91*d5c09012SAndroid Build Coastguard Worker  ACCESS_BASED_ENUMERATION = 8;
92*d5c09012SAndroid Build Coastguard Worker
93*d5c09012SAndroid Build Coastguard Worker  // Continuously available enumeration
94*d5c09012SAndroid Build Coastguard Worker  CONTINUOUSLY_AVAILABLE = 9;
95*d5c09012SAndroid Build Coastguard Worker}
96*d5c09012SAndroid Build Coastguard Worker
97*d5c09012SAndroid Build Coastguard Worker// The security style of the volume, can be either UNIX or NTFS.
98*d5c09012SAndroid Build Coastguard Workerenum SecurityStyle {
99*d5c09012SAndroid Build Coastguard Worker  // SecurityStyle is unspecified
100*d5c09012SAndroid Build Coastguard Worker  SECURITY_STYLE_UNSPECIFIED = 0;
101*d5c09012SAndroid Build Coastguard Worker
102*d5c09012SAndroid Build Coastguard Worker  // SecurityStyle uses NTFS
103*d5c09012SAndroid Build Coastguard Worker  NTFS = 1;
104*d5c09012SAndroid Build Coastguard Worker
105*d5c09012SAndroid Build Coastguard Worker  // SecurityStyle uses UNIX
106*d5c09012SAndroid Build Coastguard Worker  UNIX = 2;
107*d5c09012SAndroid Build Coastguard Worker}
108*d5c09012SAndroid Build Coastguard Worker
109*d5c09012SAndroid Build Coastguard Worker// Actions to be restricted for a volume.
110*d5c09012SAndroid Build Coastguard Workerenum RestrictedAction {
111*d5c09012SAndroid Build Coastguard Worker  // Unspecified restricted action
112*d5c09012SAndroid Build Coastguard Worker  RESTRICTED_ACTION_UNSPECIFIED = 0;
113*d5c09012SAndroid Build Coastguard Worker
114*d5c09012SAndroid Build Coastguard Worker  // Prevent volume from being deleted when mounted.
115*d5c09012SAndroid Build Coastguard Worker  DELETE = 1;
116*d5c09012SAndroid Build Coastguard Worker}
117*d5c09012SAndroid Build Coastguard Worker
118*d5c09012SAndroid Build Coastguard Worker// Message for requesting list of Volumes
119*d5c09012SAndroid Build Coastguard Workermessage ListVolumesRequest {
120*d5c09012SAndroid Build Coastguard Worker  // Required. Parent value for ListVolumesRequest
121*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
122*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
123*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
124*d5c09012SAndroid Build Coastguard Worker      child_type: "netapp.googleapis.com/Volume"
125*d5c09012SAndroid Build Coastguard Worker    }
126*d5c09012SAndroid Build Coastguard Worker  ];
127*d5c09012SAndroid Build Coastguard Worker
128*d5c09012SAndroid Build Coastguard Worker  // Requested page size. Server may return fewer items than requested.
129*d5c09012SAndroid Build Coastguard Worker  // If unspecified, the server will pick an appropriate default.
130*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
131*d5c09012SAndroid Build Coastguard Worker
132*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
133*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
134*d5c09012SAndroid Build Coastguard Worker
135*d5c09012SAndroid Build Coastguard Worker  // Filtering results
136*d5c09012SAndroid Build Coastguard Worker  string filter = 4;
137*d5c09012SAndroid Build Coastguard Worker
138*d5c09012SAndroid Build Coastguard Worker  // Hint for how to order the results
139*d5c09012SAndroid Build Coastguard Worker  string order_by = 5;
140*d5c09012SAndroid Build Coastguard Worker}
141*d5c09012SAndroid Build Coastguard Worker
142*d5c09012SAndroid Build Coastguard Worker// Message for response to listing Volumes
143*d5c09012SAndroid Build Coastguard Workermessage ListVolumesResponse {
144*d5c09012SAndroid Build Coastguard Worker  // The list of Volume
145*d5c09012SAndroid Build Coastguard Worker  repeated Volume volumes = 1;
146*d5c09012SAndroid Build Coastguard Worker
147*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
148*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
149*d5c09012SAndroid Build Coastguard Worker
150*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
151*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable = 3;
152*d5c09012SAndroid Build Coastguard Worker}
153*d5c09012SAndroid Build Coastguard Worker
154*d5c09012SAndroid Build Coastguard Worker// Message for getting a Volume
155*d5c09012SAndroid Build Coastguard Workermessage GetVolumeRequest {
156*d5c09012SAndroid Build Coastguard Worker  // Required. Name of the volume
157*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
158*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
159*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "netapp.googleapis.com/Volume" }
160*d5c09012SAndroid Build Coastguard Worker  ];
161*d5c09012SAndroid Build Coastguard Worker}
162*d5c09012SAndroid Build Coastguard Worker
163*d5c09012SAndroid Build Coastguard Worker// Message for creating a Volume
164*d5c09012SAndroid Build Coastguard Workermessage CreateVolumeRequest {
165*d5c09012SAndroid Build Coastguard Worker  // Required. Value for parent.
166*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
167*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
168*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
169*d5c09012SAndroid Build Coastguard Worker      child_type: "netapp.googleapis.com/Volume"
170*d5c09012SAndroid Build Coastguard Worker    }
171*d5c09012SAndroid Build Coastguard Worker  ];
172*d5c09012SAndroid Build Coastguard Worker
173*d5c09012SAndroid Build Coastguard Worker  // Required. Id of the requesting volume
174*d5c09012SAndroid Build Coastguard Worker  // If auto-generating Id server-side, remove this field and
175*d5c09012SAndroid Build Coastguard Worker  // Id from the method_signature of Create RPC
176*d5c09012SAndroid Build Coastguard Worker  string volume_id = 2 [(google.api.field_behavior) = REQUIRED];
177*d5c09012SAndroid Build Coastguard Worker
178*d5c09012SAndroid Build Coastguard Worker  // Required. The volume being created.
179*d5c09012SAndroid Build Coastguard Worker  Volume volume = 3 [(google.api.field_behavior) = REQUIRED];
180*d5c09012SAndroid Build Coastguard Worker}
181*d5c09012SAndroid Build Coastguard Worker
182*d5c09012SAndroid Build Coastguard Worker// Message for updating a Volume
183*d5c09012SAndroid Build Coastguard Workermessage UpdateVolumeRequest {
184*d5c09012SAndroid Build Coastguard Worker  // Required. Field mask is used to specify the fields to be overwritten in the
185*d5c09012SAndroid Build Coastguard Worker  // Volume resource by the update.
186*d5c09012SAndroid Build Coastguard Worker  // The fields specified in the update_mask are relative to the resource, not
187*d5c09012SAndroid Build Coastguard Worker  // the full request. A field will be overwritten if it is in the mask. If the
188*d5c09012SAndroid Build Coastguard Worker  // user does not provide a mask then all fields will be overwritten.
189*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 1
190*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
191*d5c09012SAndroid Build Coastguard Worker
192*d5c09012SAndroid Build Coastguard Worker  // Required. The volume being updated
193*d5c09012SAndroid Build Coastguard Worker  Volume volume = 2 [(google.api.field_behavior) = REQUIRED];
194*d5c09012SAndroid Build Coastguard Worker}
195*d5c09012SAndroid Build Coastguard Worker
196*d5c09012SAndroid Build Coastguard Worker// Message for deleting a Volume
197*d5c09012SAndroid Build Coastguard Workermessage DeleteVolumeRequest {
198*d5c09012SAndroid Build Coastguard Worker  // Required. Name of the volume
199*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
200*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
201*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "netapp.googleapis.com/Volume" }
202*d5c09012SAndroid Build Coastguard Worker  ];
203*d5c09012SAndroid Build Coastguard Worker
204*d5c09012SAndroid Build Coastguard Worker  // If this field is set as true, CCFE will not block the volume resource
205*d5c09012SAndroid Build Coastguard Worker  // deletion even if it has any snapshots resource. (Otherwise, the request
206*d5c09012SAndroid Build Coastguard Worker  // will only work if the volume has no snapshots.)
207*d5c09012SAndroid Build Coastguard Worker  bool force = 2;
208*d5c09012SAndroid Build Coastguard Worker}
209*d5c09012SAndroid Build Coastguard Worker
210*d5c09012SAndroid Build Coastguard Worker// RevertVolumeRequest reverts the given volume to the specified snapshot.
211*d5c09012SAndroid Build Coastguard Workermessage RevertVolumeRequest {
212*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the volume, in the format of
213*d5c09012SAndroid Build Coastguard Worker  // projects/{project_id}/locations/{location}/volumes/{volume_id}.
214*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
215*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
216*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "netapp.googleapis.com/Volume" }
217*d5c09012SAndroid Build Coastguard Worker  ];
218*d5c09012SAndroid Build Coastguard Worker
219*d5c09012SAndroid Build Coastguard Worker  // Required. The snapshot resource ID, in the format 'my-snapshot', where the
220*d5c09012SAndroid Build Coastguard Worker  // specified ID is the {snapshot_id} of the fully qualified name like
221*d5c09012SAndroid Build Coastguard Worker  // projects/{project_id}/locations/{location_id}/volumes/{volume_id}/snapshots/{snapshot_id}
222*d5c09012SAndroid Build Coastguard Worker  string snapshot_id = 2 [(google.api.field_behavior) = REQUIRED];
223*d5c09012SAndroid Build Coastguard Worker}
224*d5c09012SAndroid Build Coastguard Worker
225*d5c09012SAndroid Build Coastguard Worker// Volume provides a filesystem that you can mount.
226*d5c09012SAndroid Build Coastguard Workermessage Volume {
227*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
228*d5c09012SAndroid Build Coastguard Worker    type: "netapp.googleapis.com/Volume"
229*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/{location}/volumes/{volume}"
230*d5c09012SAndroid Build Coastguard Worker    plural: "volumes"
231*d5c09012SAndroid Build Coastguard Worker    singular: "volume"
232*d5c09012SAndroid Build Coastguard Worker  };
233*d5c09012SAndroid Build Coastguard Worker
234*d5c09012SAndroid Build Coastguard Worker  // The volume states
235*d5c09012SAndroid Build Coastguard Worker  enum State {
236*d5c09012SAndroid Build Coastguard Worker    // Unspecified Volume State
237*d5c09012SAndroid Build Coastguard Worker    STATE_UNSPECIFIED = 0;
238*d5c09012SAndroid Build Coastguard Worker
239*d5c09012SAndroid Build Coastguard Worker    // Volume State is Ready
240*d5c09012SAndroid Build Coastguard Worker    READY = 1;
241*d5c09012SAndroid Build Coastguard Worker
242*d5c09012SAndroid Build Coastguard Worker    // Volume State is Creating
243*d5c09012SAndroid Build Coastguard Worker    CREATING = 2;
244*d5c09012SAndroid Build Coastguard Worker
245*d5c09012SAndroid Build Coastguard Worker    // Volume State is Deleting
246*d5c09012SAndroid Build Coastguard Worker    DELETING = 3;
247*d5c09012SAndroid Build Coastguard Worker
248*d5c09012SAndroid Build Coastguard Worker    // Volume State is Updating
249*d5c09012SAndroid Build Coastguard Worker    UPDATING = 4;
250*d5c09012SAndroid Build Coastguard Worker
251*d5c09012SAndroid Build Coastguard Worker    // Volume State is Restoring
252*d5c09012SAndroid Build Coastguard Worker    RESTORING = 5;
253*d5c09012SAndroid Build Coastguard Worker
254*d5c09012SAndroid Build Coastguard Worker    // Volume State is Disabled
255*d5c09012SAndroid Build Coastguard Worker    DISABLED = 6;
256*d5c09012SAndroid Build Coastguard Worker
257*d5c09012SAndroid Build Coastguard Worker    // Volume State is Error
258*d5c09012SAndroid Build Coastguard Worker    ERROR = 7;
259*d5c09012SAndroid Build Coastguard Worker  }
260*d5c09012SAndroid Build Coastguard Worker
261*d5c09012SAndroid Build Coastguard Worker  // Identifier. Name of the volume
262*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = IDENTIFIER];
263*d5c09012SAndroid Build Coastguard Worker
264*d5c09012SAndroid Build Coastguard Worker  // Output only. State of the volume
265*d5c09012SAndroid Build Coastguard Worker  State state = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
266*d5c09012SAndroid Build Coastguard Worker
267*d5c09012SAndroid Build Coastguard Worker  // Output only. State details of the volume
268*d5c09012SAndroid Build Coastguard Worker  string state_details = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
269*d5c09012SAndroid Build Coastguard Worker
270*d5c09012SAndroid Build Coastguard Worker  // Output only. Create time of the volume
271*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 4
272*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
273*d5c09012SAndroid Build Coastguard Worker
274*d5c09012SAndroid Build Coastguard Worker  // Required. Share name of the volume
275*d5c09012SAndroid Build Coastguard Worker  string share_name = 5 [(google.api.field_behavior) = REQUIRED];
276*d5c09012SAndroid Build Coastguard Worker
277*d5c09012SAndroid Build Coastguard Worker  // Output only. This field is not implemented. The values provided in this
278*d5c09012SAndroid Build Coastguard Worker  // field are ignored.
279*d5c09012SAndroid Build Coastguard Worker  string psa_range = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
280*d5c09012SAndroid Build Coastguard Worker
281*d5c09012SAndroid Build Coastguard Worker  // Required. StoragePool name of the volume
282*d5c09012SAndroid Build Coastguard Worker  string storage_pool = 7 [
283*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
284*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
285*d5c09012SAndroid Build Coastguard Worker      type: "netapp.googleapis.com/StoragePool"
286*d5c09012SAndroid Build Coastguard Worker    }
287*d5c09012SAndroid Build Coastguard Worker  ];
288*d5c09012SAndroid Build Coastguard Worker
289*d5c09012SAndroid Build Coastguard Worker  // Output only. VPC Network name.
290*d5c09012SAndroid Build Coastguard Worker  // Format: projects/{project}/global/networks/{network}
291*d5c09012SAndroid Build Coastguard Worker  string network = 8 [
292*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = OUTPUT_ONLY,
293*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "compute.googleapis.com/Network" }
294*d5c09012SAndroid Build Coastguard Worker  ];
295*d5c09012SAndroid Build Coastguard Worker
296*d5c09012SAndroid Build Coastguard Worker  // Output only. Service level of the volume
297*d5c09012SAndroid Build Coastguard Worker  ServiceLevel service_level = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
298*d5c09012SAndroid Build Coastguard Worker
299*d5c09012SAndroid Build Coastguard Worker  // Required. Capacity in GIB of the volume
300*d5c09012SAndroid Build Coastguard Worker  int64 capacity_gib = 10 [(google.api.field_behavior) = REQUIRED];
301*d5c09012SAndroid Build Coastguard Worker
302*d5c09012SAndroid Build Coastguard Worker  // Optional. Export policy of the volume
303*d5c09012SAndroid Build Coastguard Worker  ExportPolicy export_policy = 11 [(google.api.field_behavior) = OPTIONAL];
304*d5c09012SAndroid Build Coastguard Worker
305*d5c09012SAndroid Build Coastguard Worker  // Required. Protocols required for the volume
306*d5c09012SAndroid Build Coastguard Worker  repeated Protocols protocols = 12 [(google.api.field_behavior) = REQUIRED];
307*d5c09012SAndroid Build Coastguard Worker
308*d5c09012SAndroid Build Coastguard Worker  // Optional. SMB share settings for the volume.
309*d5c09012SAndroid Build Coastguard Worker  repeated SMBSettings smb_settings = 13
310*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
311*d5c09012SAndroid Build Coastguard Worker
312*d5c09012SAndroid Build Coastguard Worker  // Output only. Mount options of this volume
313*d5c09012SAndroid Build Coastguard Worker  repeated MountOption mount_options = 14
314*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
315*d5c09012SAndroid Build Coastguard Worker
316*d5c09012SAndroid Build Coastguard Worker  // Optional. Default unix style permission (e.g. 777) the mount point will be
317*d5c09012SAndroid Build Coastguard Worker  // created with. Applicable for NFS protocol types only.
318*d5c09012SAndroid Build Coastguard Worker  string unix_permissions = 15 [(google.api.field_behavior) = OPTIONAL];
319*d5c09012SAndroid Build Coastguard Worker
320*d5c09012SAndroid Build Coastguard Worker  // Optional. Labels as key value pairs
321*d5c09012SAndroid Build Coastguard Worker  map<string, string> labels = 16 [(google.api.field_behavior) = OPTIONAL];
322*d5c09012SAndroid Build Coastguard Worker
323*d5c09012SAndroid Build Coastguard Worker  // Optional. Description of the volume
324*d5c09012SAndroid Build Coastguard Worker  string description = 17 [(google.api.field_behavior) = OPTIONAL];
325*d5c09012SAndroid Build Coastguard Worker
326*d5c09012SAndroid Build Coastguard Worker  // Optional. SnapshotPolicy for a volume.
327*d5c09012SAndroid Build Coastguard Worker  SnapshotPolicy snapshot_policy = 18 [(google.api.field_behavior) = OPTIONAL];
328*d5c09012SAndroid Build Coastguard Worker
329*d5c09012SAndroid Build Coastguard Worker  // Optional. Snap_reserve specifies percentage of volume storage reserved for
330*d5c09012SAndroid Build Coastguard Worker  // snapshot storage. Default is 0 percent.
331*d5c09012SAndroid Build Coastguard Worker  double snap_reserve = 19 [(google.api.field_behavior) = OPTIONAL];
332*d5c09012SAndroid Build Coastguard Worker
333*d5c09012SAndroid Build Coastguard Worker  // Optional. Snapshot_directory if enabled (true) the volume will contain a
334*d5c09012SAndroid Build Coastguard Worker  // read-only .snapshot directory which provides access to each of the volume's
335*d5c09012SAndroid Build Coastguard Worker  // snapshots.
336*d5c09012SAndroid Build Coastguard Worker  bool snapshot_directory = 20 [(google.api.field_behavior) = OPTIONAL];
337*d5c09012SAndroid Build Coastguard Worker
338*d5c09012SAndroid Build Coastguard Worker  // Output only. Used capacity in GIB of the volume. This is computed
339*d5c09012SAndroid Build Coastguard Worker  // periodically and it does not represent the realtime usage.
340*d5c09012SAndroid Build Coastguard Worker  int64 used_gib = 21 [(google.api.field_behavior) = OUTPUT_ONLY];
341*d5c09012SAndroid Build Coastguard Worker
342*d5c09012SAndroid Build Coastguard Worker  // Optional. Security Style of the Volume
343*d5c09012SAndroid Build Coastguard Worker  SecurityStyle security_style = 22 [(google.api.field_behavior) = OPTIONAL];
344*d5c09012SAndroid Build Coastguard Worker
345*d5c09012SAndroid Build Coastguard Worker  // Optional. Flag indicating if the volume is a kerberos volume or not, export
346*d5c09012SAndroid Build Coastguard Worker  // policy rules control kerberos security modes (krb5, krb5i, krb5p).
347*d5c09012SAndroid Build Coastguard Worker  bool kerberos_enabled = 23 [(google.api.field_behavior) = OPTIONAL];
348*d5c09012SAndroid Build Coastguard Worker
349*d5c09012SAndroid Build Coastguard Worker  // Output only. Flag indicating if the volume is NFS LDAP enabled or not.
350*d5c09012SAndroid Build Coastguard Worker  bool ldap_enabled = 24 [(google.api.field_behavior) = OUTPUT_ONLY];
351*d5c09012SAndroid Build Coastguard Worker
352*d5c09012SAndroid Build Coastguard Worker  // Output only. Specifies the ActiveDirectory name of a SMB volume.
353*d5c09012SAndroid Build Coastguard Worker  string active_directory = 25 [
354*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = OUTPUT_ONLY,
355*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
356*d5c09012SAndroid Build Coastguard Worker      type: "netapp.googleapis.com/ActiveDirectory"
357*d5c09012SAndroid Build Coastguard Worker    }
358*d5c09012SAndroid Build Coastguard Worker  ];
359*d5c09012SAndroid Build Coastguard Worker
360*d5c09012SAndroid Build Coastguard Worker  // Optional. Specifies the source of the volume to be created from.
361*d5c09012SAndroid Build Coastguard Worker  RestoreParameters restore_parameters = 26
362*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
363*d5c09012SAndroid Build Coastguard Worker
364*d5c09012SAndroid Build Coastguard Worker  // Output only. Specifies the KMS config to be used for volume encryption.
365*d5c09012SAndroid Build Coastguard Worker  string kms_config = 27 [
366*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = OUTPUT_ONLY,
367*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
368*d5c09012SAndroid Build Coastguard Worker      type: "netapp.googleapis.com/KmsConfig"
369*d5c09012SAndroid Build Coastguard Worker    }
370*d5c09012SAndroid Build Coastguard Worker  ];
371*d5c09012SAndroid Build Coastguard Worker
372*d5c09012SAndroid Build Coastguard Worker  // Output only. Specified the current volume encryption key source.
373*d5c09012SAndroid Build Coastguard Worker  EncryptionType encryption_type = 28
374*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
375*d5c09012SAndroid Build Coastguard Worker
376*d5c09012SAndroid Build Coastguard Worker  // Output only. Indicates whether the volume is part of a replication
377*d5c09012SAndroid Build Coastguard Worker  // relationship.
378*d5c09012SAndroid Build Coastguard Worker  bool has_replication = 29 [(google.api.field_behavior) = OUTPUT_ONLY];
379*d5c09012SAndroid Build Coastguard Worker
380*d5c09012SAndroid Build Coastguard Worker  // BackupConfig of the volume.
381*d5c09012SAndroid Build Coastguard Worker  optional BackupConfig backup_config = 30;
382*d5c09012SAndroid Build Coastguard Worker
383*d5c09012SAndroid Build Coastguard Worker  // Optional. List of actions that are restricted on this volume.
384*d5c09012SAndroid Build Coastguard Worker  repeated RestrictedAction restricted_actions = 31
385*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
386*d5c09012SAndroid Build Coastguard Worker}
387*d5c09012SAndroid Build Coastguard Worker
388*d5c09012SAndroid Build Coastguard Worker// Defines the export policy for the volume.
389*d5c09012SAndroid Build Coastguard Workermessage ExportPolicy {
390*d5c09012SAndroid Build Coastguard Worker  // Required. List of export policy rules
391*d5c09012SAndroid Build Coastguard Worker  repeated SimpleExportPolicyRule rules = 1
392*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
393*d5c09012SAndroid Build Coastguard Worker}
394*d5c09012SAndroid Build Coastguard Worker
395*d5c09012SAndroid Build Coastguard Worker// An export policy rule describing various export options.
396*d5c09012SAndroid Build Coastguard Workermessage SimpleExportPolicyRule {
397*d5c09012SAndroid Build Coastguard Worker  // Comma separated list of allowed clients IP addresses
398*d5c09012SAndroid Build Coastguard Worker  optional string allowed_clients = 1;
399*d5c09012SAndroid Build Coastguard Worker
400*d5c09012SAndroid Build Coastguard Worker  // Whether Unix root access will be granted.
401*d5c09012SAndroid Build Coastguard Worker  optional string has_root_access = 2;
402*d5c09012SAndroid Build Coastguard Worker
403*d5c09012SAndroid Build Coastguard Worker  // Access type (ReadWrite, ReadOnly, None)
404*d5c09012SAndroid Build Coastguard Worker  optional AccessType access_type = 3;
405*d5c09012SAndroid Build Coastguard Worker
406*d5c09012SAndroid Build Coastguard Worker  // NFS V3 protocol.
407*d5c09012SAndroid Build Coastguard Worker  optional bool nfsv3 = 4;
408*d5c09012SAndroid Build Coastguard Worker
409*d5c09012SAndroid Build Coastguard Worker  // NFS V4 protocol.
410*d5c09012SAndroid Build Coastguard Worker  optional bool nfsv4 = 5;
411*d5c09012SAndroid Build Coastguard Worker
412*d5c09012SAndroid Build Coastguard Worker  // If enabled (true) the rule defines a read only access for clients matching
413*d5c09012SAndroid Build Coastguard Worker  // the 'allowedClients' specification. It enables nfs clients to mount using
414*d5c09012SAndroid Build Coastguard Worker  // 'authentication' kerberos security mode.
415*d5c09012SAndroid Build Coastguard Worker  optional bool kerberos_5_read_only = 6;
416*d5c09012SAndroid Build Coastguard Worker
417*d5c09012SAndroid Build Coastguard Worker  // If enabled (true) the rule defines read and write access for clients
418*d5c09012SAndroid Build Coastguard Worker  // matching the 'allowedClients' specification. It enables nfs clients to
419*d5c09012SAndroid Build Coastguard Worker  // mount using 'authentication' kerberos security mode. The
420*d5c09012SAndroid Build Coastguard Worker  // 'kerberos5ReadOnly' value be ignored if this is enabled.
421*d5c09012SAndroid Build Coastguard Worker  optional bool kerberos_5_read_write = 7;
422*d5c09012SAndroid Build Coastguard Worker
423*d5c09012SAndroid Build Coastguard Worker  // If enabled (true) the rule defines a read only access for clients matching
424*d5c09012SAndroid Build Coastguard Worker  // the 'allowedClients' specification. It enables nfs clients to mount using
425*d5c09012SAndroid Build Coastguard Worker  // 'integrity' kerberos security mode.
426*d5c09012SAndroid Build Coastguard Worker  optional bool kerberos_5i_read_only = 8;
427*d5c09012SAndroid Build Coastguard Worker
428*d5c09012SAndroid Build Coastguard Worker  // If enabled (true) the rule defines read and write access for clients
429*d5c09012SAndroid Build Coastguard Worker  // matching the 'allowedClients' specification. It enables nfs clients to
430*d5c09012SAndroid Build Coastguard Worker  // mount using 'integrity' kerberos security mode. The 'kerberos5iReadOnly'
431*d5c09012SAndroid Build Coastguard Worker  // value be ignored if this is enabled.
432*d5c09012SAndroid Build Coastguard Worker  optional bool kerberos_5i_read_write = 9;
433*d5c09012SAndroid Build Coastguard Worker
434*d5c09012SAndroid Build Coastguard Worker  // If enabled (true) the rule defines a read only access for clients matching
435*d5c09012SAndroid Build Coastguard Worker  // the 'allowedClients' specification. It enables nfs clients to mount using
436*d5c09012SAndroid Build Coastguard Worker  // 'privacy' kerberos security mode.
437*d5c09012SAndroid Build Coastguard Worker  optional bool kerberos_5p_read_only = 10;
438*d5c09012SAndroid Build Coastguard Worker
439*d5c09012SAndroid Build Coastguard Worker  // If enabled (true) the rule defines read and write access for clients
440*d5c09012SAndroid Build Coastguard Worker  // matching the 'allowedClients' specification. It enables nfs clients to
441*d5c09012SAndroid Build Coastguard Worker  // mount using 'privacy' kerberos security mode. The 'kerberos5pReadOnly'
442*d5c09012SAndroid Build Coastguard Worker  // value be ignored if this is enabled.
443*d5c09012SAndroid Build Coastguard Worker  optional bool kerberos_5p_read_write = 11;
444*d5c09012SAndroid Build Coastguard Worker}
445*d5c09012SAndroid Build Coastguard Worker
446*d5c09012SAndroid Build Coastguard Worker// Snapshot Policy for a volume.
447*d5c09012SAndroid Build Coastguard Workermessage SnapshotPolicy {
448*d5c09012SAndroid Build Coastguard Worker  // If enabled, make snapshots automatically according to the schedules.
449*d5c09012SAndroid Build Coastguard Worker  // Default is false.
450*d5c09012SAndroid Build Coastguard Worker  optional bool enabled = 1;
451*d5c09012SAndroid Build Coastguard Worker
452*d5c09012SAndroid Build Coastguard Worker  // Hourly schedule policy.
453*d5c09012SAndroid Build Coastguard Worker  optional HourlySchedule hourly_schedule = 2;
454*d5c09012SAndroid Build Coastguard Worker
455*d5c09012SAndroid Build Coastguard Worker  // Daily schedule policy.
456*d5c09012SAndroid Build Coastguard Worker  optional DailySchedule daily_schedule = 3;
457*d5c09012SAndroid Build Coastguard Worker
458*d5c09012SAndroid Build Coastguard Worker  // Weekly schedule policy.
459*d5c09012SAndroid Build Coastguard Worker  optional WeeklySchedule weekly_schedule = 4;
460*d5c09012SAndroid Build Coastguard Worker
461*d5c09012SAndroid Build Coastguard Worker  // Monthly schedule policy.
462*d5c09012SAndroid Build Coastguard Worker  optional MonthlySchedule monthly_schedule = 5;
463*d5c09012SAndroid Build Coastguard Worker}
464*d5c09012SAndroid Build Coastguard Worker
465*d5c09012SAndroid Build Coastguard Worker// Make a snapshot every hour e.g. at 04:00, 05:00, 06:00.
466*d5c09012SAndroid Build Coastguard Workermessage HourlySchedule {
467*d5c09012SAndroid Build Coastguard Worker  // The maximum number of Snapshots to keep for the hourly schedule
468*d5c09012SAndroid Build Coastguard Worker  optional double snapshots_to_keep = 1;
469*d5c09012SAndroid Build Coastguard Worker
470*d5c09012SAndroid Build Coastguard Worker  // Set the minute of the hour to start the snapshot (0-59), defaults to the
471*d5c09012SAndroid Build Coastguard Worker  // top of the hour (0).
472*d5c09012SAndroid Build Coastguard Worker  optional double minute = 2;
473*d5c09012SAndroid Build Coastguard Worker}
474*d5c09012SAndroid Build Coastguard Worker
475*d5c09012SAndroid Build Coastguard Worker// Make a snapshot every day e.g. at 04:00, 05:20, 23:50
476*d5c09012SAndroid Build Coastguard Workermessage DailySchedule {
477*d5c09012SAndroid Build Coastguard Worker  // The maximum number of Snapshots to keep for the hourly schedule
478*d5c09012SAndroid Build Coastguard Worker  optional double snapshots_to_keep = 1;
479*d5c09012SAndroid Build Coastguard Worker
480*d5c09012SAndroid Build Coastguard Worker  // Set the minute of the hour to start the snapshot (0-59), defaults to the
481*d5c09012SAndroid Build Coastguard Worker  // top of the hour (0).
482*d5c09012SAndroid Build Coastguard Worker  optional double minute = 2;
483*d5c09012SAndroid Build Coastguard Worker
484*d5c09012SAndroid Build Coastguard Worker  // Set the hour to start the snapshot (0-23), defaults to midnight (0).
485*d5c09012SAndroid Build Coastguard Worker  optional double hour = 3;
486*d5c09012SAndroid Build Coastguard Worker}
487*d5c09012SAndroid Build Coastguard Worker
488*d5c09012SAndroid Build Coastguard Worker// Make a snapshot every week e.g. at Monday 04:00, Wednesday 05:20, Sunday
489*d5c09012SAndroid Build Coastguard Worker// 23:50
490*d5c09012SAndroid Build Coastguard Workermessage WeeklySchedule {
491*d5c09012SAndroid Build Coastguard Worker  // The maximum number of Snapshots to keep for the hourly schedule
492*d5c09012SAndroid Build Coastguard Worker  optional double snapshots_to_keep = 1;
493*d5c09012SAndroid Build Coastguard Worker
494*d5c09012SAndroid Build Coastguard Worker  // Set the minute of the hour to start the snapshot (0-59), defaults to the
495*d5c09012SAndroid Build Coastguard Worker  // top of the hour (0).
496*d5c09012SAndroid Build Coastguard Worker  optional double minute = 2;
497*d5c09012SAndroid Build Coastguard Worker
498*d5c09012SAndroid Build Coastguard Worker  // Set the hour to start the snapshot (0-23), defaults to midnight (0).
499*d5c09012SAndroid Build Coastguard Worker  optional double hour = 3;
500*d5c09012SAndroid Build Coastguard Worker
501*d5c09012SAndroid Build Coastguard Worker  // Set the day or days of the week to make a snapshot. Accepts a comma
502*d5c09012SAndroid Build Coastguard Worker  // separated days of the week. Defaults to 'Sunday'.
503*d5c09012SAndroid Build Coastguard Worker  optional string day = 4;
504*d5c09012SAndroid Build Coastguard Worker}
505*d5c09012SAndroid Build Coastguard Worker
506*d5c09012SAndroid Build Coastguard Worker// Make a snapshot once a month e.g. at 2nd 04:00, 7th 05:20, 24th 23:50
507*d5c09012SAndroid Build Coastguard Workermessage MonthlySchedule {
508*d5c09012SAndroid Build Coastguard Worker  // The maximum number of Snapshots to keep for the hourly schedule
509*d5c09012SAndroid Build Coastguard Worker  optional double snapshots_to_keep = 1;
510*d5c09012SAndroid Build Coastguard Worker
511*d5c09012SAndroid Build Coastguard Worker  // Set the minute of the hour to start the snapshot (0-59), defaults to the
512*d5c09012SAndroid Build Coastguard Worker  // top of the hour (0).
513*d5c09012SAndroid Build Coastguard Worker  optional double minute = 2;
514*d5c09012SAndroid Build Coastguard Worker
515*d5c09012SAndroid Build Coastguard Worker  // Set the hour to start the snapshot (0-23), defaults to midnight (0).
516*d5c09012SAndroid Build Coastguard Worker  optional double hour = 3;
517*d5c09012SAndroid Build Coastguard Worker
518*d5c09012SAndroid Build Coastguard Worker  // Set the day or days of the month to make a snapshot (1-31). Accepts a
519*d5c09012SAndroid Build Coastguard Worker  // comma separated number of days. Defaults to '1'.
520*d5c09012SAndroid Build Coastguard Worker  optional string days_of_month = 4;
521*d5c09012SAndroid Build Coastguard Worker}
522*d5c09012SAndroid Build Coastguard Worker
523*d5c09012SAndroid Build Coastguard Worker// View only mount options for a volume.
524*d5c09012SAndroid Build Coastguard Workermessage MountOption {
525*d5c09012SAndroid Build Coastguard Worker  // Export string
526*d5c09012SAndroid Build Coastguard Worker  string export = 1;
527*d5c09012SAndroid Build Coastguard Worker
528*d5c09012SAndroid Build Coastguard Worker  // Full export string
529*d5c09012SAndroid Build Coastguard Worker  string export_full = 2;
530*d5c09012SAndroid Build Coastguard Worker
531*d5c09012SAndroid Build Coastguard Worker  // Protocol to mount with.
532*d5c09012SAndroid Build Coastguard Worker  Protocols protocol = 3;
533*d5c09012SAndroid Build Coastguard Worker
534*d5c09012SAndroid Build Coastguard Worker  // Instructions for mounting
535*d5c09012SAndroid Build Coastguard Worker  string instructions = 4;
536*d5c09012SAndroid Build Coastguard Worker}
537*d5c09012SAndroid Build Coastguard Worker
538*d5c09012SAndroid Build Coastguard Worker// The RestoreParameters if volume is created from a snapshot or backup.
539*d5c09012SAndroid Build Coastguard Workermessage RestoreParameters {
540*d5c09012SAndroid Build Coastguard Worker  // The source that the volume is created from.
541*d5c09012SAndroid Build Coastguard Worker  oneof source {
542*d5c09012SAndroid Build Coastguard Worker    // Full name of the snapshot resource.
543*d5c09012SAndroid Build Coastguard Worker    // Format:
544*d5c09012SAndroid Build Coastguard Worker    // projects/{project}/locations/{location}/volumes/{volume}/snapshots/{snapshot}
545*d5c09012SAndroid Build Coastguard Worker    string source_snapshot = 1;
546*d5c09012SAndroid Build Coastguard Worker
547*d5c09012SAndroid Build Coastguard Worker    // Full name of the backup resource.
548*d5c09012SAndroid Build Coastguard Worker    // Format:
549*d5c09012SAndroid Build Coastguard Worker    // projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}
550*d5c09012SAndroid Build Coastguard Worker    string source_backup = 2;
551*d5c09012SAndroid Build Coastguard Worker  }
552*d5c09012SAndroid Build Coastguard Worker}
553*d5c09012SAndroid Build Coastguard Worker
554*d5c09012SAndroid Build Coastguard Worker// BackupConfig contains backup related config on a volume.
555*d5c09012SAndroid Build Coastguard Workermessage BackupConfig {
556*d5c09012SAndroid Build Coastguard Worker  // Optional. When specified, schedule backups will be created based on the
557*d5c09012SAndroid Build Coastguard Worker  // policy configuration.
558*d5c09012SAndroid Build Coastguard Worker  repeated string backup_policies = 1 [
559*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = OPTIONAL,
560*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
561*d5c09012SAndroid Build Coastguard Worker      type: "netapp.googleapis.com/BackupPolicy"
562*d5c09012SAndroid Build Coastguard Worker    }
563*d5c09012SAndroid Build Coastguard Worker  ];
564*d5c09012SAndroid Build Coastguard Worker
565*d5c09012SAndroid Build Coastguard Worker  // Optional. Name of backup vault.
566*d5c09012SAndroid Build Coastguard Worker  // Format:
567*d5c09012SAndroid Build Coastguard Worker  // projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}
568*d5c09012SAndroid Build Coastguard Worker  string backup_vault = 2 [
569*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = OPTIONAL,
570*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
571*d5c09012SAndroid Build Coastguard Worker      type: "netapp.googleapis.com/BackupVault"
572*d5c09012SAndroid Build Coastguard Worker    }
573*d5c09012SAndroid Build Coastguard Worker  ];
574*d5c09012SAndroid Build Coastguard Worker
575*d5c09012SAndroid Build Coastguard Worker  // Optional. When set to true, scheduled backup is enabled on the volume.
576*d5c09012SAndroid Build Coastguard Worker  // This field should be nil when there's no backup policy attached.
577*d5c09012SAndroid Build Coastguard Worker  optional bool scheduled_backup_enabled = 3
578*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
579*d5c09012SAndroid Build Coastguard Worker}
580