google-cloud-filestore-v1 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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