google-cloud-filestore-v1 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -33,24 +33,39 @@ module Google
33
33
  # assigned. For this version, only MODE_IPV4 is supported.
34
34
  # @!attribute [rw] reserved_ip_range
35
35
  # @return [::String]
36
- # A /29 CIDR block in one of the
37
- # [internal IP address
36
+ # Optional, reserved_ip_range can have one of the following two types of
37
+ # values.
38
+ #
39
+ # * CIDR range value when using DIRECT_PEERING connect mode.
40
+ # * [Allocated IP address
41
+ # range](https://cloud.google.com/compute/docs/ip-addresses/reserve-static-internal-ip-address)
42
+ # when using PRIVATE_SERVICE_ACCESS connect mode.
43
+ #
44
+ # When the name of an allocated IP address range is specified, it must be one
45
+ # of the ranges associated with the private service access connection.
46
+ # When specified as a direct CIDR value, it must be a /29 CIDR block for
47
+ # Basic tier, a /24 CIDR block for High Scale tier, or a /26 CIDR block for
48
+ # Enterprise tier in one of the [internal IP address
38
49
  # ranges](https://www.arin.net/reference/research/statistics/address_filters/)
39
50
  # that identifies the range of IP addresses reserved for this instance. For
40
- # example, 10.0.0.0/29 or 192.168.0.0/29. The range you specify can't overlap
41
- # with either existing subnets or assigned IP address ranges for other Cloud
42
- # Filestore instances in the selected VPC network.
51
+ # example, 10.0.0.0/29, 192.168.0.0/24 or 192.168.0.0/26, respectively. The
52
+ # range you specify can't overlap with either existing subnets or assigned IP
53
+ # address ranges for other Filestore instances in the selected VPC
54
+ # network.
43
55
  # @!attribute [r] ip_addresses
44
56
  # @return [::Array<::String>]
45
57
  # Output only. IPv4 addresses in the format
46
- # IPv4 addresses in the format `{octet1}.{octet2}.{octet3}.{octet4}` or
47
- # IPv6 addresses in the format
58
+ # `{octet1}.{octet2}.{octet3}.{octet4}` or IPv6 addresses in the format
48
59
  # `{block1}:{block2}:{block3}:{block4}:{block5}:{block6}:{block7}:{block8}`.
60
+ # @!attribute [rw] connect_mode
61
+ # @return [::Google::Cloud::Filestore::V1::NetworkConfig::ConnectMode]
62
+ # The network connect mode of the Filestore instance.
63
+ # If not provided, the connect mode defaults to DIRECT_PEERING.
49
64
  class NetworkConfig
50
65
  include ::Google::Protobuf::MessageExts
51
66
  extend ::Google::Protobuf::MessageExts::ClassMethods
52
67
 
53
- # Internet protocol versions supported by Cloud Filestore.
68
+ # Internet protocol versions supported by Filestore.
54
69
  module AddressMode
55
70
  # Internet protocol not set.
56
71
  ADDRESS_MODE_UNSPECIFIED = 0
@@ -58,6 +73,20 @@ module Google
58
73
  # Use the IPv4 internet protocol.
59
74
  MODE_IPV4 = 1
60
75
  end
76
+
77
+ # Available connection modes.
78
+ module ConnectMode
79
+ # Not set.
80
+ CONNECT_MODE_UNSPECIFIED = 0
81
+
82
+ # Connect via direct peering to the Filestore service.
83
+ DIRECT_PEERING = 1
84
+
85
+ # Connect to your Filestore instance using Private Service
86
+ # Access. Private services access provides an IP address range for multiple
87
+ # Google Cloud services, including Filestore.
88
+ PRIVATE_SERVICE_ACCESS = 2
89
+ end
61
90
  end
62
91
 
63
92
  # File share configuration for the instance.
@@ -67,7 +96,7 @@ module Google
67
96
  # @!attribute [rw] capacity_gb
68
97
  # @return [::Integer]
69
98
  # File share capacity in gigabytes (GB).
70
- # Cloud Filestore defines 1 GB as 1024^3 bytes.
99
+ # Filestore defines 1 GB as 1024^3 bytes.
71
100
  # @!attribute [rw] source_backup
72
101
  # @return [::String]
73
102
  # The resource name of the backup, in the format
@@ -144,7 +173,7 @@ module Google
144
173
  end
145
174
  end
146
175
 
147
- # A Cloud Filestore instance.
176
+ # A Filestore instance.
148
177
  # @!attribute [r] name
149
178
  # @return [::String]
150
179
  # Output only. The resource name of the instance, in the format
@@ -182,6 +211,13 @@ module Google
182
211
  # @!attribute [r] satisfies_pzs
183
212
  # @return [::Google::Protobuf::BoolValue]
184
213
  # Output only. Reserved for future use.
214
+ # @!attribute [rw] kms_key_name
215
+ # @return [::String]
216
+ # KMS key name used for data encryption.
217
+ # @!attribute [r] suspension_reasons
218
+ # @return [::Array<::Google::Cloud::Filestore::V1::Instance::SuspensionReason>]
219
+ # Output only. Field indicates all the reasons the instance is in "SUSPENDED"
220
+ # state.
185
221
  class Instance
186
222
  include ::Google::Protobuf::MessageExts
187
223
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -221,6 +257,16 @@ module Google
221
257
  # The instance is restoring a backup to an existing file share and may be
222
258
  # unusable during this time.
223
259
  RESTORING = 7
260
+
261
+ # The instance is suspended. You can get further details from
262
+ # the `suspension_reasons` field of the `Instance` resource.
263
+ SUSPENDED = 8
264
+
265
+ # The instance is in the process of becoming suspended.
266
+ SUSPENDING = 9
267
+
268
+ # The instance is in the process of becoming active.
269
+ RESUMING = 10
224
270
  end
225
271
 
226
272
  # Available service tiers.
@@ -228,10 +274,10 @@ module Google
228
274
  # Not set.
229
275
  TIER_UNSPECIFIED = 0
230
276
 
231
- # STANDARD tier.
277
+ # STANDARD tier. BASIC_HDD is the preferred term for this tier.
232
278
  STANDARD = 1
233
279
 
234
- # PREMIUM tier.
280
+ # PREMIUM tier. BASIC_SSD is the preferred term for this tier.
235
281
  PREMIUM = 2
236
282
 
237
283
  # BASIC instances offer a maximum capacity of 63.9 TB.
@@ -247,6 +293,19 @@ module Google
247
293
  # HIGH_SCALE instances offer expanded capacity and performance scaling
248
294
  # capabilities.
249
295
  HIGH_SCALE_SSD = 5
296
+
297
+ # ENTERPRISE instances offer the features and availability needed for
298
+ # mission-critical workloads.
299
+ ENTERPRISE = 6
300
+ end
301
+
302
+ # SuspensionReason contains the possible reasons for a suspension.
303
+ module SuspensionReason
304
+ # Not set.
305
+ SUSPENSION_REASON_UNSPECIFIED = 0
306
+
307
+ # The KMS key used by the instance is either revoked or denied access to.
308
+ KMS_KEY_ISSUE = 1
250
309
  end
251
310
  end
252
311
 
@@ -254,8 +313,8 @@ module Google
254
313
  # @!attribute [rw] parent
255
314
  # @return [::String]
256
315
  # Required. The instance's project and location, in the format
257
- # `projects/{project_id}/locations/{location}`. In Cloud Filestore,
258
- # locations map to GCP zones, for example **us-west1-b**.
316
+ # `projects/{project_id}/locations/{location}`. In Filestore,
317
+ # locations map to Google Cloud zones, for example **us-west1-b**.
259
318
  # @!attribute [rw] instance_id
260
319
  # @return [::String]
261
320
  # Required. The name of the instance to create.
@@ -296,7 +355,7 @@ module Google
296
355
  extend ::Google::Protobuf::MessageExts::ClassMethods
297
356
  end
298
357
 
299
- # RestoreInstanceRequest restores an existing instances's file share from a
358
+ # RestoreInstanceRequest restores an existing instance's file share from a
300
359
  # backup.
301
360
  # @!attribute [rw] name
302
361
  # @return [::String]
@@ -304,8 +363,8 @@ module Google
304
363
  # `projects/{project_number}/locations/{location_id}/instances/{instance_id}`.
305
364
  # @!attribute [rw] file_share
306
365
  # @return [::String]
307
- # Required. Name of the file share in the Cloud Filestore instance that the
308
- # backup is being restored to.
366
+ # Required. Name of the file share in the Filestore instance that the backup
367
+ # is being restored to.
309
368
  # @!attribute [rw] source_backup
310
369
  # @return [::String]
311
370
  # The resource name of the backup, in the format
@@ -320,6 +379,10 @@ module Google
320
379
  # @return [::String]
321
380
  # Required. The instance resource name, in the format
322
381
  # `projects/{project_id}/locations/{location}/instances/{instance_id}`
382
+ # @!attribute [rw] force
383
+ # @return [::Boolean]
384
+ # If set to true, all snapshots of the instance will also be deleted.
385
+ # (Otherwise, the request will only work if the instance has no snapshots.)
323
386
  class DeleteInstanceRequest
324
387
  include ::Google::Protobuf::MessageExts
325
388
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -330,8 +393,9 @@ module Google
330
393
  # @return [::String]
331
394
  # Required. The project and location for which to retrieve instance
332
395
  # information, in the format `projects/{project_id}/locations/{location}`. In
333
- # Cloud Filestore, locations map to GCP zones, for example **us-west1-b**. To
334
- # retrieve instance information for all locations, use "-" for the
396
+ # Cloud Filestore, locations map to Google Cloud zones, for example
397
+ # **us-west1-b**. To retrieve instance information for all locations, use "-"
398
+ # for the
335
399
  # `{location}` value.
336
400
  # @!attribute [rw] page_size
337
401
  # @return [::Integer]
@@ -372,7 +436,148 @@ module Google
372
436
  extend ::Google::Protobuf::MessageExts::ClassMethods
373
437
  end
374
438
 
375
- # A Cloud Filestore backup.
439
+ # A Filestore snapshot.
440
+ # @!attribute [r] name
441
+ # @return [::String]
442
+ # Output only. The resource name of the snapshot, in the format
443
+ # `projects/{project_id}/locations/{location_id}/instances/{instance_id}/snapshots/{snapshot_id}`.
444
+ # @!attribute [rw] description
445
+ # @return [::String]
446
+ # A description of the snapshot with 2048 characters or less.
447
+ # Requests with longer descriptions will be rejected.
448
+ # @!attribute [r] state
449
+ # @return [::Google::Cloud::Filestore::V1::Snapshot::State]
450
+ # Output only. The snapshot state.
451
+ # @!attribute [r] create_time
452
+ # @return [::Google::Protobuf::Timestamp]
453
+ # Output only. The time when the snapshot was created.
454
+ # @!attribute [rw] labels
455
+ # @return [::Google::Protobuf::Map{::String => ::String}]
456
+ # Resource labels to represent user provided metadata.
457
+ # @!attribute [r] filesystem_used_bytes
458
+ # @return [::Integer]
459
+ # Output only. The amount of bytes needed to allocate a full copy of the
460
+ # snapshot content
461
+ class Snapshot
462
+ include ::Google::Protobuf::MessageExts
463
+ extend ::Google::Protobuf::MessageExts::ClassMethods
464
+
465
+ # @!attribute [rw] key
466
+ # @return [::String]
467
+ # @!attribute [rw] value
468
+ # @return [::String]
469
+ class LabelsEntry
470
+ include ::Google::Protobuf::MessageExts
471
+ extend ::Google::Protobuf::MessageExts::ClassMethods
472
+ end
473
+
474
+ # The snapshot state.
475
+ module State
476
+ # State not set.
477
+ STATE_UNSPECIFIED = 0
478
+
479
+ # Snapshot is being created.
480
+ CREATING = 1
481
+
482
+ # Snapshot is available for use.
483
+ READY = 2
484
+
485
+ # Snapshot is being deleted.
486
+ DELETING = 3
487
+ end
488
+ end
489
+
490
+ # CreateSnapshotRequest creates a snapshot.
491
+ # @!attribute [rw] parent
492
+ # @return [::String]
493
+ # Required. The Filestore Instance to create the snapshots of, in the format
494
+ # `projects/{project_id}/locations/{location}/instances/{instance_id}`
495
+ # @!attribute [rw] snapshot_id
496
+ # @return [::String]
497
+ # Required. The ID to use for the snapshot.
498
+ # The ID must be unique within the specified instance.
499
+ #
500
+ # This value must start with a lowercase letter followed by up to 62
501
+ # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
502
+ # @!attribute [rw] snapshot
503
+ # @return [::Google::Cloud::Filestore::V1::Snapshot]
504
+ # Required. A snapshot resource.
505
+ class CreateSnapshotRequest
506
+ include ::Google::Protobuf::MessageExts
507
+ extend ::Google::Protobuf::MessageExts::ClassMethods
508
+ end
509
+
510
+ # GetSnapshotRequest gets the state of a snapshot.
511
+ # @!attribute [rw] name
512
+ # @return [::String]
513
+ # Required. The snapshot resource name, in the format
514
+ # `projects/{project_id}/locations/{location}/instances/{instance_id}/snapshots/{snapshot_id}`
515
+ class GetSnapshotRequest
516
+ include ::Google::Protobuf::MessageExts
517
+ extend ::Google::Protobuf::MessageExts::ClassMethods
518
+ end
519
+
520
+ # DeleteSnapshotRequest deletes a snapshot.
521
+ # @!attribute [rw] name
522
+ # @return [::String]
523
+ # Required. The snapshot resource name, in the format
524
+ # `projects/{project_id}/locations/{location}/instances/{instance_id}/snapshots/{snapshot_id}`
525
+ class DeleteSnapshotRequest
526
+ include ::Google::Protobuf::MessageExts
527
+ extend ::Google::Protobuf::MessageExts::ClassMethods
528
+ end
529
+
530
+ # UpdateSnapshotRequest updates description and/or labels for a snapshot.
531
+ # @!attribute [rw] update_mask
532
+ # @return [::Google::Protobuf::FieldMask]
533
+ # Required. Mask of fields to update. At least one path must be supplied in
534
+ # this field.
535
+ # @!attribute [rw] snapshot
536
+ # @return [::Google::Cloud::Filestore::V1::Snapshot]
537
+ # Required. A snapshot resource.
538
+ class UpdateSnapshotRequest
539
+ include ::Google::Protobuf::MessageExts
540
+ extend ::Google::Protobuf::MessageExts::ClassMethods
541
+ end
542
+
543
+ # ListSnapshotsRequest lists snapshots.
544
+ # @!attribute [rw] parent
545
+ # @return [::String]
546
+ # Required. The instance for which to retrieve snapshot information,
547
+ # in the format
548
+ # `projects/{project_id}/locations/{location}/instances/{instance_id}`.
549
+ # @!attribute [rw] page_size
550
+ # @return [::Integer]
551
+ # The maximum number of items to return.
552
+ # @!attribute [rw] page_token
553
+ # @return [::String]
554
+ # The next_page_token value to use if there are additional
555
+ # results to retrieve for this list request.
556
+ # @!attribute [rw] order_by
557
+ # @return [::String]
558
+ # Sort results. Supported values are "name", "name desc" or "" (unsorted).
559
+ # @!attribute [rw] filter
560
+ # @return [::String]
561
+ # List filter.
562
+ class ListSnapshotsRequest
563
+ include ::Google::Protobuf::MessageExts
564
+ extend ::Google::Protobuf::MessageExts::ClassMethods
565
+ end
566
+
567
+ # ListSnapshotsResponse is the result of ListSnapshotsRequest.
568
+ # @!attribute [rw] snapshots
569
+ # @return [::Array<::Google::Cloud::Filestore::V1::Snapshot>]
570
+ # A list of snapshots in the project for the specified instance.
571
+ # @!attribute [rw] next_page_token
572
+ # @return [::String]
573
+ # The token you can use to retrieve the next page of results. Not returned
574
+ # if there are no more results in the list.
575
+ class ListSnapshotsResponse
576
+ include ::Google::Protobuf::MessageExts
577
+ extend ::Google::Protobuf::MessageExts::ClassMethods
578
+ end
579
+
580
+ # A Filestore backup.
376
581
  # @!attribute [r] name
377
582
  # @return [::String]
378
583
  # Output only. The resource name of the backup, in the format
@@ -399,17 +604,17 @@ module Google
399
604
  # storage, this number is expected to change with backup creation/deletion.
400
605
  # @!attribute [rw] source_instance
401
606
  # @return [::String]
402
- # The resource name of the source Cloud Filestore instance, in the format
607
+ # The resource name of the source Filestore instance, in the format
403
608
  # `projects/{project_number}/locations/{location_id}/instances/{instance_id}`,
404
609
  # used to create this backup.
405
610
  # @!attribute [rw] source_file_share
406
611
  # @return [::String]
407
- # Name of the file share in the source Cloud Filestore instance that the
612
+ # Name of the file share in the source Filestore instance that the
408
613
  # backup is created from.
409
614
  # @!attribute [r] source_instance_tier
410
615
  # @return [::Google::Cloud::Filestore::V1::Instance::Tier]
411
- # Output only. The service tier of the source Cloud Filestore instance that
412
- # this backup is created from.
616
+ # Output only. The service tier of the source Filestore instance that this
617
+ # backup is created from.
413
618
  # @!attribute [r] download_bytes
414
619
  # @return [::Integer]
415
620
  # Output only. Amount of bytes that will be downloaded if the backup is
@@ -418,6 +623,9 @@ module Google
418
623
  # @!attribute [r] satisfies_pzs
419
624
  # @return [::Google::Protobuf::BoolValue]
420
625
  # Output only. Reserved for future use.
626
+ # @!attribute [rw] kms_key
627
+ # @return [::String]
628
+ # Immutable. KMS key name used for data encryption.
421
629
  class Backup
422
630
  include ::Google::Protobuf::MessageExts
423
631
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -455,8 +663,8 @@ module Google
455
663
  # @!attribute [rw] parent
456
664
  # @return [::String]
457
665
  # Required. The backup's project and location, in the format
458
- # `projects/{project_number}/locations/{location}`. In Cloud Filestore,
459
- # backup locations map to GCP regions, for example **us-west1**.
666
+ # `projects/{project_number}/locations/{location}`. In Filestore,
667
+ # backup locations map to Google Cloud regions, for example **us-west1**.
460
668
  # @!attribute [rw] backup
461
669
  # @return [::Google::Cloud::Filestore::V1::Backup]
462
670
  # Required. A {::Google::Cloud::Filestore::V1::Backup backup resource}
@@ -512,9 +720,9 @@ module Google
512
720
  # @return [::String]
513
721
  # Required. The project and location for which to retrieve backup
514
722
  # information, in the format
515
- # `projects/{project_number}/locations/{location}`. In Cloud Filestore,
516
- # backup locations map to GCP regions, for example **us-west1**. To retrieve
517
- # backup information for all locations, use "-" for the
723
+ # `projects/{project_number}/locations/{location}`. In Filestore, backup
724
+ # locations map to Google Cloud regions, for example **us-west1**. To
725
+ # retrieve backup information for all locations, use "-" for the
518
726
  # `{location}` value.
519
727
  # @!attribute [rw] page_size
520
728
  # @return [::Integer]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-filestore-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-08 00:00:00.000000000 Z
11
+ date: 2023-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common