google-apis-compute_v1 0.6.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7c8803e03eb6fe8e78fc17bcf462b0c7b2fe9d63fc113426383be1035ef42989
4
- data.tar.gz: 2faad6d913bb2f418304d67a89dd36e327d688519e0dbb6dbe05b8242e8833f4
3
+ metadata.gz: 399c98b7064cdd4a62e98eb5a1e4a113958da8977c58e9a319c956c9295623b8
4
+ data.tar.gz: 87931d442e7fa46e3a9e2d0c13bfb1371daf10ace8da731a80d07bd1bfa051b8
5
5
  SHA512:
6
- metadata.gz: a20aaca7e41285d877cbb94465dcafc27106e1b86be50e0ca1475f4ba383d458417c44dfbf5fdf6c17e8066cf6d5e518f4faa91e05942851af034de5f9feb6b8
7
- data.tar.gz: 57e5f28ca15026042af873a95ae12f09a6d5aabc7438cf2f42f05951a0080fe384fadbe1f06d1b4fb917b29e18a263770484c6ba9b64d01fb6defe4678993e3a
6
+ metadata.gz: 6993281f113446c656b349f6ef40ce4da23f75b8f73deb4eae60fec1b6ee61baea94a628528d95aacc9c6b6d2d3e508da75ee44009bd0348bb1e453375122588
7
+ data.tar.gz: 14f625d987bb7c79fa7e4d199c0e8c2ad1caf1c43aed3a9d1b7844d582f3c522845c1726bbca1a50d366b241219ffc002f201ede7e8b5d81774a6dcb99b56031
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-compute_v1
2
2
 
3
+ ### v0.7.0 (2021-03-19)
4
+
5
+ * Regenerated from discovery document revision 20210310
6
+
3
7
  ### v0.6.0 (2021-03-10)
4
8
 
5
9
  * Regenerated from discovery document revision 20210301
@@ -29,7 +29,7 @@ module Google
29
29
  # This is NOT the gem version.
30
30
  VERSION = 'V1'
31
31
 
32
- # View and manage your data across Google Cloud Platform services
32
+ # See, edit, configure, and delete your Google Cloud Platform data
33
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
34
34
 
35
35
  # View and manage your Google Compute Engine resources
@@ -1643,6 +1643,11 @@ module Google
1643
1643
  # @return [String]
1644
1644
  attr_accessor :region
1645
1645
 
1646
+ # [Output Only] Status information of existing scaling schedules.
1647
+ # Corresponds to the JSON property `scalingScheduleStatus`
1648
+ # @return [Hash<String,Google::Apis::ComputeV1::ScalingScheduleStatus>]
1649
+ attr_accessor :scaling_schedule_status
1650
+
1646
1651
  # [Output Only] Server-defined URL for the resource.
1647
1652
  # Corresponds to the JSON property `selfLink`
1648
1653
  # @return [String]
@@ -1693,6 +1698,7 @@ module Google
1693
1698
  @name = args[:name] if args.key?(:name)
1694
1699
  @recommended_size = args[:recommended_size] if args.key?(:recommended_size)
1695
1700
  @region = args[:region] if args.key?(:region)
1701
+ @scaling_schedule_status = args[:scaling_schedule_status] if args.key?(:scaling_schedule_status)
1696
1702
  @self_link = args[:self_link] if args.key?(:self_link)
1697
1703
  @status = args[:status] if args.key?(:status)
1698
1704
  @status_details = args[:status_details] if args.key?(:status_details)
@@ -2153,6 +2159,14 @@ module Google
2153
2159
  # @return [Google::Apis::ComputeV1::AutoscalingPolicyScaleInControl]
2154
2160
  attr_accessor :scale_in_control
2155
2161
 
2162
+ # Scaling schedules defined for an autoscaler. Multiple schedules can be set on
2163
+ # an autoscaler, and they can overlap. During overlapping periods the greatest
2164
+ # min_required_replicas of all scaling schedules is applied. Up to 128 scaling
2165
+ # schedules are allowed.
2166
+ # Corresponds to the JSON property `scalingSchedules`
2167
+ # @return [Hash<String,Google::Apis::ComputeV1::AutoscalingPolicyScalingSchedule>]
2168
+ attr_accessor :scaling_schedules
2169
+
2156
2170
  def initialize(**args)
2157
2171
  update!(**args)
2158
2172
  end
@@ -2167,6 +2181,7 @@ module Google
2167
2181
  @min_num_replicas = args[:min_num_replicas] if args.key?(:min_num_replicas)
2168
2182
  @mode = args[:mode] if args.key?(:mode)
2169
2183
  @scale_in_control = args[:scale_in_control] if args.key?(:scale_in_control)
2184
+ @scaling_schedules = args[:scaling_schedules] if args.key?(:scaling_schedules)
2170
2185
  end
2171
2186
  end
2172
2187
 
@@ -2332,6 +2347,70 @@ module Google
2332
2347
  end
2333
2348
  end
2334
2349
 
2350
+ # Scaling based on user-defined schedule. The message describes a single scaling
2351
+ # schedule. A scaling schedule changes the minimum number of VM instances an
2352
+ # autoscaler can recommend, which can trigger scaling out.
2353
+ class AutoscalingPolicyScalingSchedule
2354
+ include Google::Apis::Core::Hashable
2355
+
2356
+ # A description of a scaling schedule.
2357
+ # Corresponds to the JSON property `description`
2358
+ # @return [String]
2359
+ attr_accessor :description
2360
+
2361
+ # A boolean value that specifies whether a scaling schedule can influence
2362
+ # autoscaler recommendations. If set to true, then a scaling schedule has no
2363
+ # effect. This field is optional, and its value is false by default.
2364
+ # Corresponds to the JSON property `disabled`
2365
+ # @return [Boolean]
2366
+ attr_accessor :disabled
2367
+ alias_method :disabled?, :disabled
2368
+
2369
+ # The duration of time intervals, in seconds, for which this scaling schedule is
2370
+ # to run. The minimum allowed value is 300. This field is required.
2371
+ # Corresponds to the JSON property `durationSec`
2372
+ # @return [Fixnum]
2373
+ attr_accessor :duration_sec
2374
+
2375
+ # The minimum number of VM instances that the autoscaler will recommend in time
2376
+ # intervals starting according to schedule. This field is required.
2377
+ # Corresponds to the JSON property `minRequiredReplicas`
2378
+ # @return [Fixnum]
2379
+ attr_accessor :min_required_replicas
2380
+
2381
+ # The start timestamps of time intervals when this scaling schedule is to
2382
+ # provide a scaling signal. This field uses the extended cron format (with an
2383
+ # optional year field). The expression can describe a single timestamp if the
2384
+ # optional year is set, in which case the scaling schedule runs once. The
2385
+ # schedule is interpreted with respect to time_zone. This field is required.
2386
+ # Note: These timestamps only describe when autoscaler starts providing the
2387
+ # scaling signal. The VMs need additional time to become serving.
2388
+ # Corresponds to the JSON property `schedule`
2389
+ # @return [String]
2390
+ attr_accessor :schedule
2391
+
2392
+ # The time zone to use when interpreting the schedule. The value of this field
2393
+ # must be a time zone name from the tz database: http://en.wikipedia.org/wiki/
2394
+ # Tz_database. This field is assigned a default value of ?UTC? if left empty.
2395
+ # Corresponds to the JSON property `timeZone`
2396
+ # @return [String]
2397
+ attr_accessor :time_zone
2398
+
2399
+ def initialize(**args)
2400
+ update!(**args)
2401
+ end
2402
+
2403
+ # Update properties of this object
2404
+ def update!(**args)
2405
+ @description = args[:description] if args.key?(:description)
2406
+ @disabled = args[:disabled] if args.key?(:disabled)
2407
+ @duration_sec = args[:duration_sec] if args.key?(:duration_sec)
2408
+ @min_required_replicas = args[:min_required_replicas] if args.key?(:min_required_replicas)
2409
+ @schedule = args[:schedule] if args.key?(:schedule)
2410
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
2411
+ end
2412
+ end
2413
+
2335
2414
  # Message containing information of one individual backend.
2336
2415
  class Backend
2337
2416
  include Google::Apis::Core::Hashable
@@ -2546,6 +2625,13 @@ module Google
2546
2625
  class BackendBucketCdnPolicy
2547
2626
  include Google::Apis::Core::Hashable
2548
2627
 
2628
+ # Bypass the cache when the specified request headers are matched - e.g. Pragma
2629
+ # or Authorization headers. Up to 5 headers can be specified. The cache is
2630
+ # bypassed for all cdnPolicy.cacheMode settings.
2631
+ # Corresponds to the JSON property `bypassCacheOnRequestHeaders`
2632
+ # @return [Array<Google::Apis::ComputeV1::BackendBucketCdnPolicyBypassCacheOnRequestHeader>]
2633
+ attr_accessor :bypass_cache_on_request_headers
2634
+
2549
2635
  # Specifies the cache setting for all responses from this backend. The possible
2550
2636
  # values are:
2551
2637
  # USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache
@@ -2600,6 +2686,46 @@ module Google
2600
2686
  # @return [Fixnum]
2601
2687
  attr_accessor :max_ttl
2602
2688
 
2689
+ # Negative caching allows per-status code TTLs to be set, in order to apply fine-
2690
+ # grained caching for common errors or redirects. This can reduce the load on
2691
+ # your origin and improve end-user experience by reducing response latency. When
2692
+ # the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, negative
2693
+ # caching applies to responses with the specified response code that lack any
2694
+ # Cache-Control, Expires, or Pragma: no-cache directives. When the cache mode is
2695
+ # set to FORCE_CACHE_ALL, negative caching applies to all responses with the
2696
+ # specified response code, and override any caching headers. By default, Cloud
2697
+ # CDN will apply the following default TTLs to these status codes: HTTP 300 (
2698
+ # Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not Found),
2699
+ # 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method Not
2700
+ # Found), 421 (Misdirected Request), 501 (Not Implemented): 60s. These defaults
2701
+ # can be overridden in negative_caching_policy.
2702
+ # Corresponds to the JSON property `negativeCaching`
2703
+ # @return [Boolean]
2704
+ attr_accessor :negative_caching
2705
+ alias_method :negative_caching?, :negative_caching
2706
+
2707
+ # Sets a cache TTL for the specified HTTP status code. negative_caching must be
2708
+ # enabled to configure negative_caching_policy. Omitting the policy and leaving
2709
+ # negative_caching enabled will use Cloud CDN's default cache TTLs. Note that
2710
+ # when specifying an explicit negative_caching_policy, you should take care to
2711
+ # specify a cache TTL for all response codes that you wish to cache. Cloud CDN
2712
+ # will not apply any default negative caching when a policy exists.
2713
+ # Corresponds to the JSON property `negativeCachingPolicy`
2714
+ # @return [Array<Google::Apis::ComputeV1::BackendBucketCdnPolicyNegativeCachingPolicy>]
2715
+ attr_accessor :negative_caching_policy
2716
+
2717
+ # Serve existing content from the cache (if available) when revalidating content
2718
+ # with the origin, or when an error is encountered when refreshing the cache.
2719
+ # This setting defines the default "max-stale" duration for any cached responses
2720
+ # that do not specify a max-stale directive. Stale responses that exceed the TTL
2721
+ # configured here will not be served. The default limit (max-stale) is 86400s (1
2722
+ # day), which will allow stale content to be served up to this limit beyond the
2723
+ # max-age (or s-max-age) of a cached response. The maximum allowed value is
2724
+ # 604800 (1 week). Set this to zero (0) to disable serve-while-stale.
2725
+ # Corresponds to the JSON property `serveWhileStale`
2726
+ # @return [Fixnum]
2727
+ attr_accessor :serve_while_stale
2728
+
2603
2729
  # Maximum number of seconds the response to a signed URL request will be
2604
2730
  # considered fresh. After this time period, the response will be revalidated
2605
2731
  # before being served. Defaults to 1hr (3600s). When serving responses to signed
@@ -2622,15 +2748,71 @@ module Google
2622
2748
 
2623
2749
  # Update properties of this object
2624
2750
  def update!(**args)
2751
+ @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
2625
2752
  @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
2626
2753
  @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
2627
2754
  @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
2628
2755
  @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
2756
+ @negative_caching = args[:negative_caching] if args.key?(:negative_caching)
2757
+ @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy)
2758
+ @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale)
2629
2759
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
2630
2760
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
2631
2761
  end
2632
2762
  end
2633
2763
 
2764
+ # Bypass the cache when the specified request headers are present, e.g. Pragma
2765
+ # or Authorization headers. Values are case insensitive. The presence of such a
2766
+ # header overrides the cache_mode setting.
2767
+ class BackendBucketCdnPolicyBypassCacheOnRequestHeader
2768
+ include Google::Apis::Core::Hashable
2769
+
2770
+ # The header field name to match on when bypassing cache. Values are case-
2771
+ # insensitive.
2772
+ # Corresponds to the JSON property `headerName`
2773
+ # @return [String]
2774
+ attr_accessor :header_name
2775
+
2776
+ def initialize(**args)
2777
+ update!(**args)
2778
+ end
2779
+
2780
+ # Update properties of this object
2781
+ def update!(**args)
2782
+ @header_name = args[:header_name] if args.key?(:header_name)
2783
+ end
2784
+ end
2785
+
2786
+ # Specify CDN TTLs for response error codes.
2787
+ class BackendBucketCdnPolicyNegativeCachingPolicy
2788
+ include Google::Apis::Core::Hashable
2789
+
2790
+ # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
2791
+ # 302, 307, 308, 404, 405, 410, 421, 451 and 501 are can be specified as values,
2792
+ # and you cannot specify a status code more than once.
2793
+ # Corresponds to the JSON property `code`
2794
+ # @return [Fixnum]
2795
+ attr_accessor :code
2796
+
2797
+ # The TTL (in seconds) for which to cache responses with the corresponding
2798
+ # status code. The maximum allowed value is 1800s (30 minutes), noting that
2799
+ # infrequently accessed objects may be evicted from the cache before the defined
2800
+ # TTL.
2801
+ # Corresponds to the JSON property `ttl`
2802
+ # @return [Fixnum]
2803
+ attr_accessor :ttl
2804
+
2805
+ def initialize(**args)
2806
+ update!(**args)
2807
+ end
2808
+
2809
+ # Update properties of this object
2810
+ def update!(**args)
2811
+ @code = args[:code] if args.key?(:code)
2812
+ @ttl = args[:ttl] if args.key?(:ttl)
2813
+ end
2814
+ end
2815
+
2634
2816
  # Contains a list of BackendBucket resources.
2635
2817
  class BackendBucketList
2636
2818
  include Google::Apis::Core::Hashable
@@ -2928,6 +3110,14 @@ module Google
2928
3110
  # @return [Google::Apis::ComputeV1::BackendServiceLogConfig]
2929
3111
  attr_accessor :log_config
2930
3112
 
3113
+ # A Duration represents a fixed-length span of time represented as a count of
3114
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
3115
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
3116
+ # 000 years.
3117
+ # Corresponds to the JSON property `maxStreamDuration`
3118
+ # @return [Google::Apis::ComputeV1::Duration]
3119
+ attr_accessor :max_stream_duration
3120
+
2931
3121
  # Name of the resource. Provided by the client when the resource is created. The
2932
3122
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
2933
3123
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -3056,6 +3246,7 @@ module Google
3056
3246
  @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme)
3057
3247
  @locality_lb_policy = args[:locality_lb_policy] if args.key?(:locality_lb_policy)
3058
3248
  @log_config = args[:log_config] if args.key?(:log_config)
3249
+ @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration)
3059
3250
  @name = args[:name] if args.key?(:name)
3060
3251
  @network = args[:network] if args.key?(:network)
3061
3252
  @outlier_detection = args[:outlier_detection] if args.key?(:outlier_detection)
@@ -3198,6 +3389,13 @@ module Google
3198
3389
  class BackendServiceCdnPolicy
3199
3390
  include Google::Apis::Core::Hashable
3200
3391
 
3392
+ # Bypass the cache when the specified request headers are matched - e.g. Pragma
3393
+ # or Authorization headers. Up to 5 headers can be specified. The cache is
3394
+ # bypassed for all cdnPolicy.cacheMode settings.
3395
+ # Corresponds to the JSON property `bypassCacheOnRequestHeaders`
3396
+ # @return [Array<Google::Apis::ComputeV1::BackendServiceCdnPolicyBypassCacheOnRequestHeader>]
3397
+ attr_accessor :bypass_cache_on_request_headers
3398
+
3201
3399
  # Message containing what to include in the cache key for a request for Cloud
3202
3400
  # CDN.
3203
3401
  # Corresponds to the JSON property `cacheKeyPolicy`
@@ -3258,6 +3456,46 @@ module Google
3258
3456
  # @return [Fixnum]
3259
3457
  attr_accessor :max_ttl
3260
3458
 
3459
+ # Negative caching allows per-status code TTLs to be set, in order to apply fine-
3460
+ # grained caching for common errors or redirects. This can reduce the load on
3461
+ # your origin and improve end-user experience by reducing response latency. When
3462
+ # the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, negative
3463
+ # caching applies to responses with the specified response code that lack any
3464
+ # Cache-Control, Expires, or Pragma: no-cache directives. When the cache mode is
3465
+ # set to FORCE_CACHE_ALL, negative caching applies to all responses with the
3466
+ # specified response code, and override any caching headers. By default, Cloud
3467
+ # CDN will apply the following default TTLs to these status codes: HTTP 300 (
3468
+ # Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not Found),
3469
+ # 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method Not
3470
+ # Found), 421 (Misdirected Request), 501 (Not Implemented): 60s. These defaults
3471
+ # can be overridden in negative_caching_policy.
3472
+ # Corresponds to the JSON property `negativeCaching`
3473
+ # @return [Boolean]
3474
+ attr_accessor :negative_caching
3475
+ alias_method :negative_caching?, :negative_caching
3476
+
3477
+ # Sets a cache TTL for the specified HTTP status code. negative_caching must be
3478
+ # enabled to configure negative_caching_policy. Omitting the policy and leaving
3479
+ # negative_caching enabled will use Cloud CDN's default cache TTLs. Note that
3480
+ # when specifying an explicit negative_caching_policy, you should take care to
3481
+ # specify a cache TTL for all response codes that you wish to cache. Cloud CDN
3482
+ # will not apply any default negative caching when a policy exists.
3483
+ # Corresponds to the JSON property `negativeCachingPolicy`
3484
+ # @return [Array<Google::Apis::ComputeV1::BackendServiceCdnPolicyNegativeCachingPolicy>]
3485
+ attr_accessor :negative_caching_policy
3486
+
3487
+ # Serve existing content from the cache (if available) when revalidating content
3488
+ # with the origin, or when an error is encountered when refreshing the cache.
3489
+ # This setting defines the default "max-stale" duration for any cached responses
3490
+ # that do not specify a max-stale directive. Stale responses that exceed the TTL
3491
+ # configured here will not be served. The default limit (max-stale) is 86400s (1
3492
+ # day), which will allow stale content to be served up to this limit beyond the
3493
+ # max-age (or s-max-age) of a cached response. The maximum allowed value is
3494
+ # 604800 (1 week). Set this to zero (0) to disable serve-while-stale.
3495
+ # Corresponds to the JSON property `serveWhileStale`
3496
+ # @return [Fixnum]
3497
+ attr_accessor :serve_while_stale
3498
+
3261
3499
  # Maximum number of seconds the response to a signed URL request will be
3262
3500
  # considered fresh. After this time period, the response will be revalidated
3263
3501
  # before being served. Defaults to 1hr (3600s). When serving responses to signed
@@ -3280,16 +3518,72 @@ module Google
3280
3518
 
3281
3519
  # Update properties of this object
3282
3520
  def update!(**args)
3521
+ @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
3283
3522
  @cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy)
3284
3523
  @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
3285
3524
  @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
3286
3525
  @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
3287
3526
  @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
3527
+ @negative_caching = args[:negative_caching] if args.key?(:negative_caching)
3528
+ @negative_caching_policy = args[:negative_caching_policy] if args.key?(:negative_caching_policy)
3529
+ @serve_while_stale = args[:serve_while_stale] if args.key?(:serve_while_stale)
3288
3530
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
3289
3531
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
3290
3532
  end
3291
3533
  end
3292
3534
 
3535
+ # Bypass the cache when the specified request headers are present, e.g. Pragma
3536
+ # or Authorization headers. Values are case insensitive. The presence of such a
3537
+ # header overrides the cache_mode setting.
3538
+ class BackendServiceCdnPolicyBypassCacheOnRequestHeader
3539
+ include Google::Apis::Core::Hashable
3540
+
3541
+ # The header field name to match on when bypassing cache. Values are case-
3542
+ # insensitive.
3543
+ # Corresponds to the JSON property `headerName`
3544
+ # @return [String]
3545
+ attr_accessor :header_name
3546
+
3547
+ def initialize(**args)
3548
+ update!(**args)
3549
+ end
3550
+
3551
+ # Update properties of this object
3552
+ def update!(**args)
3553
+ @header_name = args[:header_name] if args.key?(:header_name)
3554
+ end
3555
+ end
3556
+
3557
+ # Specify CDN TTLs for response error codes.
3558
+ class BackendServiceCdnPolicyNegativeCachingPolicy
3559
+ include Google::Apis::Core::Hashable
3560
+
3561
+ # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
3562
+ # 302, 307, 308, 404, 405, 410, 421, 451 and 501 are can be specified as values,
3563
+ # and you cannot specify a status code more than once.
3564
+ # Corresponds to the JSON property `code`
3565
+ # @return [Fixnum]
3566
+ attr_accessor :code
3567
+
3568
+ # The TTL (in seconds) for which to cache responses with the corresponding
3569
+ # status code. The maximum allowed value is 1800s (30 minutes), noting that
3570
+ # infrequently accessed objects may be evicted from the cache before the defined
3571
+ # TTL.
3572
+ # Corresponds to the JSON property `ttl`
3573
+ # @return [Fixnum]
3574
+ attr_accessor :ttl
3575
+
3576
+ def initialize(**args)
3577
+ update!(**args)
3578
+ end
3579
+
3580
+ # Update properties of this object
3581
+ def update!(**args)
3582
+ @code = args[:code] if args.key?(:code)
3583
+ @ttl = args[:ttl] if args.key?(:ttl)
3584
+ end
3585
+ end
3586
+
3293
3587
  # Applicable only to Failover for Internal TCP/UDP Load Balancing and Network
3294
3588
  # Load Balancing. On failover or failback, this field indicates whether
3295
3589
  # connection draining will be honored. GCP has a fixed connection draining
@@ -7090,13 +7384,14 @@ module Google
7090
7384
  # @return [String]
7091
7385
  attr_accessor :description
7092
7386
 
7093
- # User-provided name of the Organization firewall plicy. The name should be
7094
- # unique in the organization in which the firewall policy is created. The name
7095
- # must be 1-63 characters long, and comply with RFC1035. Specifically, the name
7096
- # must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*
7097
- # [a-z0-9])?` which means the first character must be a lowercase letter, and
7098
- # all following characters must be a dash, lowercase letter, or digit, except
7099
- # the last character, which cannot be a dash.
7387
+ # Depreacted, please use short name instead. User-provided name of the
7388
+ # Organization firewall plicy. The name should be unique in the organization in
7389
+ # which the firewall policy is created. The name must be 1-63 characters long,
7390
+ # and comply with RFC1035. Specifically, the name must be 1-63 characters long
7391
+ # and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the
7392
+ # first character must be a lowercase letter, and all following characters must
7393
+ # be a dash, lowercase letter, or digit, except the last character, which cannot
7394
+ # be a dash.
7100
7395
  # Corresponds to the JSON property `displayName`
7101
7396
  # @return [String]
7102
7397
  attr_accessor :display_name
@@ -7160,6 +7455,17 @@ module Google
7160
7455
  # @return [String]
7161
7456
  attr_accessor :self_link_with_id
7162
7457
 
7458
+ # User-provided name of the Organization firewall plicy. The name should be
7459
+ # unique in the organization in which the firewall policy is created. The name
7460
+ # must be 1-63 characters long, and comply with RFC1035. Specifically, the name
7461
+ # must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*
7462
+ # [a-z0-9])?` which means the first character must be a lowercase letter, and
7463
+ # all following characters must be a dash, lowercase letter, or digit, except
7464
+ # the last character, which cannot be a dash.
7465
+ # Corresponds to the JSON property `shortName`
7466
+ # @return [String]
7467
+ attr_accessor :short_name
7468
+
7163
7469
  def initialize(**args)
7164
7470
  update!(**args)
7165
7471
  end
@@ -7179,6 +7485,7 @@ module Google
7179
7485
  @rules = args[:rules] if args.key?(:rules)
7180
7486
  @self_link = args[:self_link] if args.key?(:self_link)
7181
7487
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
7488
+ @short_name = args[:short_name] if args.key?(:short_name)
7182
7489
  end
7183
7490
  end
7184
7491
 
@@ -7191,7 +7498,8 @@ module Google
7191
7498
  # @return [String]
7192
7499
  attr_accessor :attachment_target
7193
7500
 
7194
- # [Output Only] The display name of the firewall policy of the association.
7501
+ # [Output Only] Deprecated, please use short name instead. The display name of
7502
+ # the firewall policy of the association.
7195
7503
  # Corresponds to the JSON property `displayName`
7196
7504
  # @return [String]
7197
7505
  attr_accessor :display_name
@@ -7206,6 +7514,11 @@ module Google
7206
7514
  # @return [String]
7207
7515
  attr_accessor :name
7208
7516
 
7517
+ # [Output Only] The short name of the firewall policy of the association.
7518
+ # Corresponds to the JSON property `shortName`
7519
+ # @return [String]
7520
+ attr_accessor :short_name
7521
+
7209
7522
  def initialize(**args)
7210
7523
  update!(**args)
7211
7524
  end
@@ -7216,6 +7529,7 @@ module Google
7216
7529
  @display_name = args[:display_name] if args.key?(:display_name)
7217
7530
  @firewall_policy_id = args[:firewall_policy_id] if args.key?(:firewall_policy_id)
7218
7531
  @name = args[:name] if args.key?(:name)
7532
+ @short_name = args[:short_name] if args.key?(:short_name)
7219
7533
  end
7220
7534
  end
7221
7535
 
@@ -10524,6 +10838,14 @@ module Google
10524
10838
  # @return [Google::Apis::ComputeV1::HttpFaultInjection]
10525
10839
  attr_accessor :fault_injection_policy
10526
10840
 
10841
+ # A Duration represents a fixed-length span of time represented as a count of
10842
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
10843
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
10844
+ # 000 years.
10845
+ # Corresponds to the JSON property `maxStreamDuration`
10846
+ # @return [Google::Apis::ComputeV1::Duration]
10847
+ attr_accessor :max_stream_duration
10848
+
10527
10849
  # A policy that specifies how requests intended for the route's backends are
10528
10850
  # shadowed to a separate mirrored backend service. Loadbalancer does not wait
10529
10851
  # for responses from the shadow service. Prior to sending traffic to the shadow
@@ -10572,6 +10894,7 @@ module Google
10572
10894
  def update!(**args)
10573
10895
  @cors_policy = args[:cors_policy] if args.key?(:cors_policy)
10574
10896
  @fault_injection_policy = args[:fault_injection_policy] if args.key?(:fault_injection_policy)
10897
+ @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration)
10575
10898
  @request_mirror_policy = args[:request_mirror_policy] if args.key?(:request_mirror_policy)
10576
10899
  @retry_policy = args[:retry_policy] if args.key?(:retry_policy)
10577
10900
  @timeout = args[:timeout] if args.key?(:timeout)
@@ -11639,7 +11962,7 @@ module Google
11639
11962
  attr_accessor :satisfies_pzs
11640
11963
  alias_method :satisfies_pzs?, :satisfies_pzs
11641
11964
 
11642
- # Sets the scheduling options for an Instance. NextID: 17
11965
+ # Sets the scheduling options for an Instance. NextID: 20
11643
11966
  # Corresponds to the JSON property `scheduling`
11644
11967
  # @return [Google::Apis::ComputeV1::Scheduling]
11645
11968
  attr_accessor :scheduling
@@ -14266,7 +14589,7 @@ module Google
14266
14589
  # @return [Array<String>]
14267
14590
  attr_accessor :resource_policies
14268
14591
 
14269
- # Sets the scheduling options for an Instance. NextID: 17
14592
+ # Sets the scheduling options for an Instance. NextID: 20
14270
14593
  # Corresponds to the JSON property `scheduling`
14271
14594
  # @return [Google::Apis::ComputeV1::Scheduling]
14272
14595
  attr_accessor :scheduling
@@ -14618,7 +14941,8 @@ module Google
14618
14941
  class InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy
14619
14942
  include Google::Apis::Core::Hashable
14620
14943
 
14621
- # [Output Only] The display name of the firewall policy.
14944
+ # [Output Only] Deprecated, please use short name instead. The display name of
14945
+ # the firewall policy.
14622
14946
  # Corresponds to the JSON property `displayName`
14623
14947
  # @return [String]
14624
14948
  attr_accessor :display_name
@@ -14633,6 +14957,11 @@ module Google
14633
14957
  # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRule>]
14634
14958
  attr_accessor :rules
14635
14959
 
14960
+ # [Output Only] The short name of the firewall policy.
14961
+ # Corresponds to the JSON property `shortName`
14962
+ # @return [String]
14963
+ attr_accessor :short_name
14964
+
14636
14965
  # [Output Only] The type of the firewall policy.
14637
14966
  # Corresponds to the JSON property `type`
14638
14967
  # @return [String]
@@ -14647,6 +14976,7 @@ module Google
14647
14976
  @display_name = args[:display_name] if args.key?(:display_name)
14648
14977
  @name = args[:name] if args.key?(:name)
14649
14978
  @rules = args[:rules] if args.key?(:rules)
14979
+ @short_name = args[:short_name] if args.key?(:short_name)
14650
14980
  @type = args[:type] if args.key?(:type)
14651
14981
  end
14652
14982
  end
@@ -15204,6 +15534,18 @@ module Google
15204
15534
  # @return [String]
15205
15535
  attr_accessor :edge_availability_domain
15206
15536
 
15537
+ # Indicates the user-supplied encryption option of this interconnect attachment:
15538
+ # - NONE is the default value, which means that the attachment carries
15539
+ # unencrypted traffic. VMs can send traffic to, or receive traffic from, this
15540
+ # type of attachment.
15541
+ # - IPSEC indicates that the attachment carries only traffic encrypted by an
15542
+ # IPsec device such as an HA VPN gateway. VMs cannot directly send traffic to,
15543
+ # or receive traffic from, such an attachment. To use IPsec-encrypted Cloud
15544
+ # Interconnect, create the attachment using this option.
15545
+ # Corresponds to the JSON property `encryption`
15546
+ # @return [String]
15547
+ attr_accessor :encryption
15548
+
15207
15549
  # [Output Only] Google reference ID, to be used when raising support tickets
15208
15550
  # with Google or otherwise to debug backend connectivity issues. [Deprecated]
15209
15551
  # This field is not used.
@@ -15223,6 +15565,22 @@ module Google
15223
15565
  # @return [String]
15224
15566
  attr_accessor :interconnect
15225
15567
 
15568
+ # URL of addresses that have been reserved for the interconnect attachment, Used
15569
+ # only for interconnect attachment that has the encryption option as IPSEC. The
15570
+ # addresses must be RFC 1918 IP address ranges. When creating HA VPN gateway
15571
+ # over the interconnect attachment, if the attachment is configured to use an
15572
+ # RFC 1918 IP address, then the VPN gateway?s IP address will be allocated from
15573
+ # the IP address range specified here. For example, if the HA VPN gateway?s
15574
+ # interface 0 is paired to this interconnect attachment, then an RFC 1918 IP
15575
+ # address for the VPN gateway interface 0 will be allocated from the IP address
15576
+ # specified for this interconnect attachment. If this field is not specified for
15577
+ # interconnect attachment that has encryption option as IPSEC, later on when
15578
+ # creating HA VPN gateway on this interconnect attachment, the HA VPN gateway's
15579
+ # IP address will be allocated from regional external IP address pool.
15580
+ # Corresponds to the JSON property `ipsecInternalAddresses`
15581
+ # @return [Array<String>]
15582
+ attr_accessor :ipsec_internal_addresses
15583
+
15226
15584
  # [Output Only] Type of the resource. Always compute#interconnectAttachment for
15227
15585
  # interconnect attachments.
15228
15586
  # Corresponds to the JSON property `kind`
@@ -15357,9 +15715,11 @@ module Google
15357
15715
  @dataplane_version = args[:dataplane_version] if args.key?(:dataplane_version)
15358
15716
  @description = args[:description] if args.key?(:description)
15359
15717
  @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
15718
+ @encryption = args[:encryption] if args.key?(:encryption)
15360
15719
  @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id)
15361
15720
  @id = args[:id] if args.key?(:id)
15362
15721
  @interconnect = args[:interconnect] if args.key?(:interconnect)
15722
+ @ipsec_internal_addresses = args[:ipsec_internal_addresses] if args.key?(:ipsec_internal_addresses)
15363
15723
  @kind = args[:kind] if args.key?(:kind)
15364
15724
  @mtu = args[:mtu] if args.key?(:mtu)
15365
15725
  @name = args[:name] if args.key?(:name)
@@ -19352,7 +19712,8 @@ module Google
19352
19712
  class NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy
19353
19713
  include Google::Apis::Core::Hashable
19354
19714
 
19355
- # [Output Only] The display name of the firewall policy.
19715
+ # [Output Only] Deprecated, please use short name instead. The display name of
19716
+ # the firewall policy.
19356
19717
  # Corresponds to the JSON property `displayName`
19357
19718
  # @return [String]
19358
19719
  attr_accessor :display_name
@@ -19367,6 +19728,11 @@ module Google
19367
19728
  # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRule>]
19368
19729
  attr_accessor :rules
19369
19730
 
19731
+ # [Output Only] The short name of the firewall policy.
19732
+ # Corresponds to the JSON property `shortName`
19733
+ # @return [String]
19734
+ attr_accessor :short_name
19735
+
19370
19736
  # [Output Only] The type of the firewall policy.
19371
19737
  # Corresponds to the JSON property `type`
19372
19738
  # @return [String]
@@ -19381,6 +19747,7 @@ module Google
19381
19747
  @display_name = args[:display_name] if args.key?(:display_name)
19382
19748
  @name = args[:name] if args.key?(:name)
19383
19749
  @rules = args[:rules] if args.key?(:rules)
19750
+ @short_name = args[:short_name] if args.key?(:short_name)
19384
19751
  @type = args[:type] if args.key?(:type)
19385
19752
  end
19386
19753
  end
@@ -23363,88 +23730,10 @@ module Google
23363
23730
  end
23364
23731
  end
23365
23732
 
23366
- # A quotas entry.
23367
- class Quota
23368
- include Google::Apis::Core::Hashable
23369
-
23370
- # [Output Only] Quota limit for this metric.
23371
- # Corresponds to the JSON property `limit`
23372
- # @return [Float]
23373
- attr_accessor :limit
23374
-
23375
- # [Output Only] Name of the quota metric.
23376
- # Corresponds to the JSON property `metric`
23377
- # @return [String]
23378
- attr_accessor :metric
23379
-
23380
- # [Output Only] Owning resource. This is the resource on which this quota is
23381
- # applied.
23382
- # Corresponds to the JSON property `owner`
23383
- # @return [String]
23384
- attr_accessor :owner
23385
-
23386
- # [Output Only] Current usage of this metric.
23387
- # Corresponds to the JSON property `usage`
23388
- # @return [Float]
23389
- attr_accessor :usage
23390
-
23391
- def initialize(**args)
23392
- update!(**args)
23393
- end
23394
-
23395
- # Update properties of this object
23396
- def update!(**args)
23397
- @limit = args[:limit] if args.key?(:limit)
23398
- @metric = args[:metric] if args.key?(:metric)
23399
- @owner = args[:owner] if args.key?(:owner)
23400
- @usage = args[:usage] if args.key?(:usage)
23401
- end
23402
- end
23403
-
23404
- # Represents a reference to a resource.
23405
- class Reference
23406
- include Google::Apis::Core::Hashable
23407
-
23408
- # [Output Only] Type of the resource. Always compute#reference for references.
23409
- # Corresponds to the JSON property `kind`
23410
- # @return [String]
23411
- attr_accessor :kind
23412
-
23413
- # A description of the reference type with no implied semantics. Possible values
23414
- # include:
23415
- # - MEMBER_OF
23416
- # Corresponds to the JSON property `referenceType`
23417
- # @return [String]
23418
- attr_accessor :reference_type
23419
-
23420
- # URL of the resource which refers to the target.
23421
- # Corresponds to the JSON property `referrer`
23422
- # @return [String]
23423
- attr_accessor :referrer
23424
-
23425
- # URL of the resource to which this reference points.
23426
- # Corresponds to the JSON property `target`
23427
- # @return [String]
23428
- attr_accessor :target
23429
-
23430
- def initialize(**args)
23431
- update!(**args)
23432
- end
23433
-
23434
- # Update properties of this object
23435
- def update!(**args)
23436
- @kind = args[:kind] if args.key?(:kind)
23437
- @reference_type = args[:reference_type] if args.key?(:reference_type)
23438
- @referrer = args[:referrer] if args.key?(:referrer)
23439
- @target = args[:target] if args.key?(:target)
23440
- end
23441
- end
23442
-
23443
- # Represents a Region resource.
23444
- # A region is a geographical area where a resource is located. For more
23445
- # information, read Regions and Zones. (== resource_for `$api_version`.regions ==
23446
- # )
23447
- class Region
23733
+ # A public advertised prefix represents an aggregated IP prefix or netblock
23734
+ # which customers bring to cloud. The IP prefix is a single unit of route
23735
+ # advertisement and is announced globally to the internet.
23736
+ class PublicAdvertisedPrefix
23448
23737
  include Google::Apis::Core::Hashable
23449
23738
 
23450
23739
  # [Output Only] Creation timestamp in RFC3339 text format.
@@ -23452,59 +23741,78 @@ module Google
23452
23741
  # @return [String]
23453
23742
  attr_accessor :creation_timestamp
23454
23743
 
23455
- # Deprecation status for a public resource.
23456
- # Corresponds to the JSON property `deprecated`
23457
- # @return [Google::Apis::ComputeV1::DeprecationStatus]
23458
- attr_accessor :deprecated
23459
-
23460
- # [Output Only] Textual description of the resource.
23744
+ # An optional description of this resource. Provide this property when you
23745
+ # create the resource.
23461
23746
  # Corresponds to the JSON property `description`
23462
23747
  # @return [String]
23463
23748
  attr_accessor :description
23464
23749
 
23465
- # [Output Only] The unique identifier for the resource. This identifier is
23466
- # defined by the server.
23750
+ # The IPv4 address to be used for reverse DNS verification.
23751
+ # Corresponds to the JSON property `dnsVerificationIp`
23752
+ # @return [String]
23753
+ attr_accessor :dns_verification_ip
23754
+
23755
+ # Fingerprint of this resource. A hash of the contents stored in this object.
23756
+ # This field is used in optimistic locking. This field will be ignored when
23757
+ # inserting a new PublicAdvertisedPrefix. An up-to-date fingerprint must be
23758
+ # provided in order to update the PublicAdvertisedPrefix, otherwise the request
23759
+ # will fail with error 412 conditionNotMet.
23760
+ # To see the latest fingerprint, make a get() request to retrieve a
23761
+ # PublicAdvertisedPrefix.
23762
+ # Corresponds to the JSON property `fingerprint`
23763
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
23764
+ # @return [String]
23765
+ attr_accessor :fingerprint
23766
+
23767
+ # [Output Only] The unique identifier for the resource type. The server
23768
+ # generates this identifier.
23467
23769
  # Corresponds to the JSON property `id`
23468
23770
  # @return [Fixnum]
23469
23771
  attr_accessor :id
23470
23772
 
23471
- # [Output Only] Type of the resource. Always compute#region for regions.
23773
+ # The IPv4 address range, in CIDR format, represented by this public advertised
23774
+ # prefix.
23775
+ # Corresponds to the JSON property `ipCidrRange`
23776
+ # @return [String]
23777
+ attr_accessor :ip_cidr_range
23778
+
23779
+ # [Output Only] Type of the resource. Always compute#publicAdvertisedPrefix for
23780
+ # public advertised prefixes.
23472
23781
  # Corresponds to the JSON property `kind`
23473
23782
  # @return [String]
23474
23783
  attr_accessor :kind
23475
23784
 
23476
- # [Output Only] Name of the resource.
23785
+ # Name of the resource. Provided by the client when the resource is created. The
23786
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
23787
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
23788
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
23789
+ # and all following characters must be a dash, lowercase letter, or digit,
23790
+ # except the last character, which cannot be a dash.
23477
23791
  # Corresponds to the JSON property `name`
23478
23792
  # @return [String]
23479
23793
  attr_accessor :name
23480
23794
 
23481
- # [Output Only] Quotas assigned to this region.
23482
- # Corresponds to the JSON property `quotas`
23483
- # @return [Array<Google::Apis::ComputeV1::Quota>]
23484
- attr_accessor :quotas
23795
+ # [Output Only] The list of public delegated prefixes that exist for this public
23796
+ # advertised prefix.
23797
+ # Corresponds to the JSON property `publicDelegatedPrefixs`
23798
+ # @return [Array<Google::Apis::ComputeV1::PublicAdvertisedPrefixPublicDelegatedPrefix>]
23799
+ attr_accessor :public_delegated_prefixs
23485
23800
 
23486
23801
  # [Output Only] Server-defined URL for the resource.
23487
23802
  # Corresponds to the JSON property `selfLink`
23488
23803
  # @return [String]
23489
23804
  attr_accessor :self_link
23490
23805
 
23491
- # [Output Only] Status of the region, either UP or DOWN.
23806
+ # [Output Only] The shared secret to be used for reverse DNS verification.
23807
+ # Corresponds to the JSON property `sharedSecret`
23808
+ # @return [String]
23809
+ attr_accessor :shared_secret
23810
+
23811
+ # The status of the public advertised prefix.
23492
23812
  # Corresponds to the JSON property `status`
23493
23813
  # @return [String]
23494
23814
  attr_accessor :status
23495
23815
 
23496
- # [Output Only] Reserved for future use.
23497
- # Corresponds to the JSON property `supportsPzs`
23498
- # @return [Boolean]
23499
- attr_accessor :supports_pzs
23500
- alias_method :supports_pzs?, :supports_pzs
23501
-
23502
- # [Output Only] A list of zones available in this region, in the form of
23503
- # resource URLs.
23504
- # Corresponds to the JSON property `zones`
23505
- # @return [Array<String>]
23506
- attr_accessor :zones
23507
-
23508
23816
  def initialize(**args)
23509
23817
  update!(**args)
23510
23818
  end
@@ -23512,21 +23820,22 @@ module Google
23512
23820
  # Update properties of this object
23513
23821
  def update!(**args)
23514
23822
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
23515
- @deprecated = args[:deprecated] if args.key?(:deprecated)
23516
23823
  @description = args[:description] if args.key?(:description)
23824
+ @dns_verification_ip = args[:dns_verification_ip] if args.key?(:dns_verification_ip)
23825
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
23517
23826
  @id = args[:id] if args.key?(:id)
23827
+ @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
23518
23828
  @kind = args[:kind] if args.key?(:kind)
23519
23829
  @name = args[:name] if args.key?(:name)
23520
- @quotas = args[:quotas] if args.key?(:quotas)
23830
+ @public_delegated_prefixs = args[:public_delegated_prefixs] if args.key?(:public_delegated_prefixs)
23521
23831
  @self_link = args[:self_link] if args.key?(:self_link)
23832
+ @shared_secret = args[:shared_secret] if args.key?(:shared_secret)
23522
23833
  @status = args[:status] if args.key?(:status)
23523
- @supports_pzs = args[:supports_pzs] if args.key?(:supports_pzs)
23524
- @zones = args[:zones] if args.key?(:zones)
23525
23834
  end
23526
23835
  end
23527
23836
 
23528
- # Contains a list of autoscalers.
23529
- class RegionAutoscalerList
23837
+ #
23838
+ class PublicAdvertisedPrefixList
23530
23839
  include Google::Apis::Core::Hashable
23531
23840
 
23532
23841
  # [Output Only] Unique identifier for the resource; defined by the server.
@@ -23534,12 +23843,13 @@ module Google
23534
23843
  # @return [String]
23535
23844
  attr_accessor :id
23536
23845
 
23537
- # A list of Autoscaler resources.
23846
+ # A list of PublicAdvertisedPrefix resources.
23538
23847
  # Corresponds to the JSON property `items`
23539
- # @return [Array<Google::Apis::ComputeV1::Autoscaler>]
23848
+ # @return [Array<Google::Apis::ComputeV1::PublicAdvertisedPrefix>]
23540
23849
  attr_accessor :items
23541
23850
 
23542
- # Type of resource.
23851
+ # [Output Only] Type of the resource. Always compute#publicAdvertisedPrefix for
23852
+ # public advertised prefixes.
23543
23853
  # Corresponds to the JSON property `kind`
23544
23854
  # @return [String]
23545
23855
  attr_accessor :kind
@@ -23560,7 +23870,843 @@ module Google
23560
23870
 
23561
23871
  # [Output Only] Informational warning message.
23562
23872
  # Corresponds to the JSON property `warning`
23563
- # @return [Google::Apis::ComputeV1::RegionAutoscalerList::Warning]
23873
+ # @return [Google::Apis::ComputeV1::PublicAdvertisedPrefixList::Warning]
23874
+ attr_accessor :warning
23875
+
23876
+ def initialize(**args)
23877
+ update!(**args)
23878
+ end
23879
+
23880
+ # Update properties of this object
23881
+ def update!(**args)
23882
+ @id = args[:id] if args.key?(:id)
23883
+ @items = args[:items] if args.key?(:items)
23884
+ @kind = args[:kind] if args.key?(:kind)
23885
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
23886
+ @self_link = args[:self_link] if args.key?(:self_link)
23887
+ @warning = args[:warning] if args.key?(:warning)
23888
+ end
23889
+
23890
+ # [Output Only] Informational warning message.
23891
+ class Warning
23892
+ include Google::Apis::Core::Hashable
23893
+
23894
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
23895
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
23896
+ # Corresponds to the JSON property `code`
23897
+ # @return [String]
23898
+ attr_accessor :code
23899
+
23900
+ # [Output Only] Metadata about this warning in key: value format. For example:
23901
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
23902
+ # Corresponds to the JSON property `data`
23903
+ # @return [Array<Google::Apis::ComputeV1::PublicAdvertisedPrefixList::Warning::Datum>]
23904
+ attr_accessor :data
23905
+
23906
+ # [Output Only] A human-readable description of the warning code.
23907
+ # Corresponds to the JSON property `message`
23908
+ # @return [String]
23909
+ attr_accessor :message
23910
+
23911
+ def initialize(**args)
23912
+ update!(**args)
23913
+ end
23914
+
23915
+ # Update properties of this object
23916
+ def update!(**args)
23917
+ @code = args[:code] if args.key?(:code)
23918
+ @data = args[:data] if args.key?(:data)
23919
+ @message = args[:message] if args.key?(:message)
23920
+ end
23921
+
23922
+ #
23923
+ class Datum
23924
+ include Google::Apis::Core::Hashable
23925
+
23926
+ # [Output Only] A key that provides more detail on the warning being returned.
23927
+ # For example, for warnings where there are no results in a list request for a
23928
+ # particular zone, this key might be scope and the key value might be the zone
23929
+ # name. Other examples might be a key indicating a deprecated resource and a
23930
+ # suggested replacement, or a warning about invalid network settings (for
23931
+ # example, if an instance attempts to perform IP forwarding but is not enabled
23932
+ # for IP forwarding).
23933
+ # Corresponds to the JSON property `key`
23934
+ # @return [String]
23935
+ attr_accessor :key
23936
+
23937
+ # [Output Only] A warning data value corresponding to the key.
23938
+ # Corresponds to the JSON property `value`
23939
+ # @return [String]
23940
+ attr_accessor :value
23941
+
23942
+ def initialize(**args)
23943
+ update!(**args)
23944
+ end
23945
+
23946
+ # Update properties of this object
23947
+ def update!(**args)
23948
+ @key = args[:key] if args.key?(:key)
23949
+ @value = args[:value] if args.key?(:value)
23950
+ end
23951
+ end
23952
+ end
23953
+ end
23954
+
23955
+ # Represents a CIDR range which can be used to assign addresses.
23956
+ class PublicAdvertisedPrefixPublicDelegatedPrefix
23957
+ include Google::Apis::Core::Hashable
23958
+
23959
+ # The IP address range of the public delegated prefix
23960
+ # Corresponds to the JSON property `ipRange`
23961
+ # @return [String]
23962
+ attr_accessor :ip_range
23963
+
23964
+ # The name of the public delegated prefix
23965
+ # Corresponds to the JSON property `name`
23966
+ # @return [String]
23967
+ attr_accessor :name
23968
+
23969
+ # The project number of the public delegated prefix
23970
+ # Corresponds to the JSON property `project`
23971
+ # @return [String]
23972
+ attr_accessor :project
23973
+
23974
+ # The region of the public delegated prefix if it is regional. If absent, the
23975
+ # prefix is global.
23976
+ # Corresponds to the JSON property `region`
23977
+ # @return [String]
23978
+ attr_accessor :region
23979
+
23980
+ # The status of the public delegated prefix. Possible values are: INITIALIZING:
23981
+ # The public delegated prefix is being initialized and addresses cannot be
23982
+ # created yet. ANNOUNCED: The public delegated prefix is active.
23983
+ # Corresponds to the JSON property `status`
23984
+ # @return [String]
23985
+ attr_accessor :status
23986
+
23987
+ def initialize(**args)
23988
+ update!(**args)
23989
+ end
23990
+
23991
+ # Update properties of this object
23992
+ def update!(**args)
23993
+ @ip_range = args[:ip_range] if args.key?(:ip_range)
23994
+ @name = args[:name] if args.key?(:name)
23995
+ @project = args[:project] if args.key?(:project)
23996
+ @region = args[:region] if args.key?(:region)
23997
+ @status = args[:status] if args.key?(:status)
23998
+ end
23999
+ end
24000
+
24001
+ # A PublicDelegatedPrefix resource represents an IP block within a
24002
+ # PublicAdvertisedPrefix that is configured within a single cloud scope (global
24003
+ # or region). IPs in the block can be allocated to resources within that scope.
24004
+ # Public delegated prefixes may be further broken up into smaller IP blocks in
24005
+ # the same scope as the parent block.
24006
+ class PublicDelegatedPrefix
24007
+ include Google::Apis::Core::Hashable
24008
+
24009
+ # [Output Only] Creation timestamp in RFC3339 text format.
24010
+ # Corresponds to the JSON property `creationTimestamp`
24011
+ # @return [String]
24012
+ attr_accessor :creation_timestamp
24013
+
24014
+ # An optional description of this resource. Provide this property when you
24015
+ # create the resource.
24016
+ # Corresponds to the JSON property `description`
24017
+ # @return [String]
24018
+ attr_accessor :description
24019
+
24020
+ # Fingerprint of this resource. A hash of the contents stored in this object.
24021
+ # This field is used in optimistic locking. This field will be ignored when
24022
+ # inserting a new PublicDelegatedPrefix. An up-to-date fingerprint must be
24023
+ # provided in order to update the PublicDelegatedPrefix, otherwise the request
24024
+ # will fail with error 412 conditionNotMet.
24025
+ # To see the latest fingerprint, make a get() request to retrieve a
24026
+ # PublicDelegatedPrefix.
24027
+ # Corresponds to the JSON property `fingerprint`
24028
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
24029
+ # @return [String]
24030
+ attr_accessor :fingerprint
24031
+
24032
+ # [Output Only] The unique identifier for the resource type. The server
24033
+ # generates this identifier.
24034
+ # Corresponds to the JSON property `id`
24035
+ # @return [Fixnum]
24036
+ attr_accessor :id
24037
+
24038
+ # The IPv4 address range, in CIDR format, represented by this public delegated
24039
+ # prefix.
24040
+ # Corresponds to the JSON property `ipCidrRange`
24041
+ # @return [String]
24042
+ attr_accessor :ip_cidr_range
24043
+
24044
+ # If true, the prefix will be live migrated.
24045
+ # Corresponds to the JSON property `isLiveMigration`
24046
+ # @return [Boolean]
24047
+ attr_accessor :is_live_migration
24048
+ alias_method :is_live_migration?, :is_live_migration
24049
+
24050
+ # [Output Only] Type of the resource. Always compute#publicDelegatedPrefix for
24051
+ # public delegated prefixes.
24052
+ # Corresponds to the JSON property `kind`
24053
+ # @return [String]
24054
+ attr_accessor :kind
24055
+
24056
+ # Name of the resource. Provided by the client when the resource is created. The
24057
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
24058
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
24059
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
24060
+ # and all following characters must be a dash, lowercase letter, or digit,
24061
+ # except the last character, which cannot be a dash.
24062
+ # Corresponds to the JSON property `name`
24063
+ # @return [String]
24064
+ attr_accessor :name
24065
+
24066
+ # The URL of parent prefix. Either PublicAdvertisedPrefix or
24067
+ # PublicDelegatedPrefix.
24068
+ # Corresponds to the JSON property `parentPrefix`
24069
+ # @return [String]
24070
+ attr_accessor :parent_prefix
24071
+
24072
+ # The list of sub public delegated prefixes that exist for this public delegated
24073
+ # prefix.
24074
+ # Corresponds to the JSON property `publicDelegatedSubPrefixs`
24075
+ # @return [Array<Google::Apis::ComputeV1::PublicDelegatedPrefixPublicDelegatedSubPrefix>]
24076
+ attr_accessor :public_delegated_sub_prefixs
24077
+
24078
+ # [Output Only] URL of the region where the public delegated prefix resides.
24079
+ # This field applies only to the region resource. You must specify this field as
24080
+ # part of the HTTP request URL. It is not settable as a field in the request
24081
+ # body.
24082
+ # Corresponds to the JSON property `region`
24083
+ # @return [String]
24084
+ attr_accessor :region
24085
+
24086
+ # [Output Only] Server-defined URL for the resource.
24087
+ # Corresponds to the JSON property `selfLink`
24088
+ # @return [String]
24089
+ attr_accessor :self_link
24090
+
24091
+ # [Output Only] The status of the public delegated prefix.
24092
+ # Corresponds to the JSON property `status`
24093
+ # @return [String]
24094
+ attr_accessor :status
24095
+
24096
+ def initialize(**args)
24097
+ update!(**args)
24098
+ end
24099
+
24100
+ # Update properties of this object
24101
+ def update!(**args)
24102
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
24103
+ @description = args[:description] if args.key?(:description)
24104
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
24105
+ @id = args[:id] if args.key?(:id)
24106
+ @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
24107
+ @is_live_migration = args[:is_live_migration] if args.key?(:is_live_migration)
24108
+ @kind = args[:kind] if args.key?(:kind)
24109
+ @name = args[:name] if args.key?(:name)
24110
+ @parent_prefix = args[:parent_prefix] if args.key?(:parent_prefix)
24111
+ @public_delegated_sub_prefixs = args[:public_delegated_sub_prefixs] if args.key?(:public_delegated_sub_prefixs)
24112
+ @region = args[:region] if args.key?(:region)
24113
+ @self_link = args[:self_link] if args.key?(:self_link)
24114
+ @status = args[:status] if args.key?(:status)
24115
+ end
24116
+ end
24117
+
24118
+ #
24119
+ class PublicDelegatedPrefixAggregatedList
24120
+ include Google::Apis::Core::Hashable
24121
+
24122
+ # [Output Only] Unique identifier for the resource; defined by the server.
24123
+ # Corresponds to the JSON property `id`
24124
+ # @return [String]
24125
+ attr_accessor :id
24126
+
24127
+ # A list of PublicDelegatedPrefixesScopedList resources.
24128
+ # Corresponds to the JSON property `items`
24129
+ # @return [Hash<String,Google::Apis::ComputeV1::PublicDelegatedPrefixesScopedList>]
24130
+ attr_accessor :items
24131
+
24132
+ # [Output Only] Type of the resource. Always compute#
24133
+ # publicDelegatedPrefixAggregatedList for aggregated lists of public delegated
24134
+ # prefixes.
24135
+ # Corresponds to the JSON property `kind`
24136
+ # @return [String]
24137
+ attr_accessor :kind
24138
+
24139
+ # [Output Only] This token allows you to get the next page of results for list
24140
+ # requests. If the number of results is larger than maxResults, use the
24141
+ # nextPageToken as a value for the query parameter pageToken in the next list
24142
+ # request. Subsequent list requests will have their own nextPageToken to
24143
+ # continue paging through the results.
24144
+ # Corresponds to the JSON property `nextPageToken`
24145
+ # @return [String]
24146
+ attr_accessor :next_page_token
24147
+
24148
+ # [Output Only] Server-defined URL for this resource.
24149
+ # Corresponds to the JSON property `selfLink`
24150
+ # @return [String]
24151
+ attr_accessor :self_link
24152
+
24153
+ # [Output Only] Unreachable resources.
24154
+ # Corresponds to the JSON property `unreachables`
24155
+ # @return [Array<String>]
24156
+ attr_accessor :unreachables
24157
+
24158
+ # [Output Only] Informational warning message.
24159
+ # Corresponds to the JSON property `warning`
24160
+ # @return [Google::Apis::ComputeV1::PublicDelegatedPrefixAggregatedList::Warning]
24161
+ attr_accessor :warning
24162
+
24163
+ def initialize(**args)
24164
+ update!(**args)
24165
+ end
24166
+
24167
+ # Update properties of this object
24168
+ def update!(**args)
24169
+ @id = args[:id] if args.key?(:id)
24170
+ @items = args[:items] if args.key?(:items)
24171
+ @kind = args[:kind] if args.key?(:kind)
24172
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
24173
+ @self_link = args[:self_link] if args.key?(:self_link)
24174
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
24175
+ @warning = args[:warning] if args.key?(:warning)
24176
+ end
24177
+
24178
+ # [Output Only] Informational warning message.
24179
+ class Warning
24180
+ include Google::Apis::Core::Hashable
24181
+
24182
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
24183
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
24184
+ # Corresponds to the JSON property `code`
24185
+ # @return [String]
24186
+ attr_accessor :code
24187
+
24188
+ # [Output Only] Metadata about this warning in key: value format. For example:
24189
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
24190
+ # Corresponds to the JSON property `data`
24191
+ # @return [Array<Google::Apis::ComputeV1::PublicDelegatedPrefixAggregatedList::Warning::Datum>]
24192
+ attr_accessor :data
24193
+
24194
+ # [Output Only] A human-readable description of the warning code.
24195
+ # Corresponds to the JSON property `message`
24196
+ # @return [String]
24197
+ attr_accessor :message
24198
+
24199
+ def initialize(**args)
24200
+ update!(**args)
24201
+ end
24202
+
24203
+ # Update properties of this object
24204
+ def update!(**args)
24205
+ @code = args[:code] if args.key?(:code)
24206
+ @data = args[:data] if args.key?(:data)
24207
+ @message = args[:message] if args.key?(:message)
24208
+ end
24209
+
24210
+ #
24211
+ class Datum
24212
+ include Google::Apis::Core::Hashable
24213
+
24214
+ # [Output Only] A key that provides more detail on the warning being returned.
24215
+ # For example, for warnings where there are no results in a list request for a
24216
+ # particular zone, this key might be scope and the key value might be the zone
24217
+ # name. Other examples might be a key indicating a deprecated resource and a
24218
+ # suggested replacement, or a warning about invalid network settings (for
24219
+ # example, if an instance attempts to perform IP forwarding but is not enabled
24220
+ # for IP forwarding).
24221
+ # Corresponds to the JSON property `key`
24222
+ # @return [String]
24223
+ attr_accessor :key
24224
+
24225
+ # [Output Only] A warning data value corresponding to the key.
24226
+ # Corresponds to the JSON property `value`
24227
+ # @return [String]
24228
+ attr_accessor :value
24229
+
24230
+ def initialize(**args)
24231
+ update!(**args)
24232
+ end
24233
+
24234
+ # Update properties of this object
24235
+ def update!(**args)
24236
+ @key = args[:key] if args.key?(:key)
24237
+ @value = args[:value] if args.key?(:value)
24238
+ end
24239
+ end
24240
+ end
24241
+ end
24242
+
24243
+ #
24244
+ class PublicDelegatedPrefixList
24245
+ include Google::Apis::Core::Hashable
24246
+
24247
+ # [Output Only] Unique identifier for the resource; defined by the server.
24248
+ # Corresponds to the JSON property `id`
24249
+ # @return [String]
24250
+ attr_accessor :id
24251
+
24252
+ # A list of PublicDelegatedPrefix resources.
24253
+ # Corresponds to the JSON property `items`
24254
+ # @return [Array<Google::Apis::ComputeV1::PublicDelegatedPrefix>]
24255
+ attr_accessor :items
24256
+
24257
+ # [Output Only] Type of the resource. Always compute#publicDelegatedPrefixList
24258
+ # for public delegated prefixes.
24259
+ # Corresponds to the JSON property `kind`
24260
+ # @return [String]
24261
+ attr_accessor :kind
24262
+
24263
+ # [Output Only] This token allows you to get the next page of results for list
24264
+ # requests. If the number of results is larger than maxResults, use the
24265
+ # nextPageToken as a value for the query parameter pageToken in the next list
24266
+ # request. Subsequent list requests will have their own nextPageToken to
24267
+ # continue paging through the results.
24268
+ # Corresponds to the JSON property `nextPageToken`
24269
+ # @return [String]
24270
+ attr_accessor :next_page_token
24271
+
24272
+ # [Output Only] Server-defined URL for this resource.
24273
+ # Corresponds to the JSON property `selfLink`
24274
+ # @return [String]
24275
+ attr_accessor :self_link
24276
+
24277
+ # [Output Only] Informational warning message.
24278
+ # Corresponds to the JSON property `warning`
24279
+ # @return [Google::Apis::ComputeV1::PublicDelegatedPrefixList::Warning]
24280
+ attr_accessor :warning
24281
+
24282
+ def initialize(**args)
24283
+ update!(**args)
24284
+ end
24285
+
24286
+ # Update properties of this object
24287
+ def update!(**args)
24288
+ @id = args[:id] if args.key?(:id)
24289
+ @items = args[:items] if args.key?(:items)
24290
+ @kind = args[:kind] if args.key?(:kind)
24291
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
24292
+ @self_link = args[:self_link] if args.key?(:self_link)
24293
+ @warning = args[:warning] if args.key?(:warning)
24294
+ end
24295
+
24296
+ # [Output Only] Informational warning message.
24297
+ class Warning
24298
+ include Google::Apis::Core::Hashable
24299
+
24300
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
24301
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
24302
+ # Corresponds to the JSON property `code`
24303
+ # @return [String]
24304
+ attr_accessor :code
24305
+
24306
+ # [Output Only] Metadata about this warning in key: value format. For example:
24307
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
24308
+ # Corresponds to the JSON property `data`
24309
+ # @return [Array<Google::Apis::ComputeV1::PublicDelegatedPrefixList::Warning::Datum>]
24310
+ attr_accessor :data
24311
+
24312
+ # [Output Only] A human-readable description of the warning code.
24313
+ # Corresponds to the JSON property `message`
24314
+ # @return [String]
24315
+ attr_accessor :message
24316
+
24317
+ def initialize(**args)
24318
+ update!(**args)
24319
+ end
24320
+
24321
+ # Update properties of this object
24322
+ def update!(**args)
24323
+ @code = args[:code] if args.key?(:code)
24324
+ @data = args[:data] if args.key?(:data)
24325
+ @message = args[:message] if args.key?(:message)
24326
+ end
24327
+
24328
+ #
24329
+ class Datum
24330
+ include Google::Apis::Core::Hashable
24331
+
24332
+ # [Output Only] A key that provides more detail on the warning being returned.
24333
+ # For example, for warnings where there are no results in a list request for a
24334
+ # particular zone, this key might be scope and the key value might be the zone
24335
+ # name. Other examples might be a key indicating a deprecated resource and a
24336
+ # suggested replacement, or a warning about invalid network settings (for
24337
+ # example, if an instance attempts to perform IP forwarding but is not enabled
24338
+ # for IP forwarding).
24339
+ # Corresponds to the JSON property `key`
24340
+ # @return [String]
24341
+ attr_accessor :key
24342
+
24343
+ # [Output Only] A warning data value corresponding to the key.
24344
+ # Corresponds to the JSON property `value`
24345
+ # @return [String]
24346
+ attr_accessor :value
24347
+
24348
+ def initialize(**args)
24349
+ update!(**args)
24350
+ end
24351
+
24352
+ # Update properties of this object
24353
+ def update!(**args)
24354
+ @key = args[:key] if args.key?(:key)
24355
+ @value = args[:value] if args.key?(:value)
24356
+ end
24357
+ end
24358
+ end
24359
+ end
24360
+
24361
+ # Represents a sub PublicDelegatedPrefix.
24362
+ class PublicDelegatedPrefixPublicDelegatedSubPrefix
24363
+ include Google::Apis::Core::Hashable
24364
+
24365
+ # Name of the project scoping this PublicDelegatedSubPrefix.
24366
+ # Corresponds to the JSON property `delegateeProject`
24367
+ # @return [String]
24368
+ attr_accessor :delegatee_project
24369
+
24370
+ # An optional description of this resource. Provide this property when you
24371
+ # create the resource.
24372
+ # Corresponds to the JSON property `description`
24373
+ # @return [String]
24374
+ attr_accessor :description
24375
+
24376
+ # The IPv4 address range, in CIDR format, represented by this sub public
24377
+ # delegated prefix.
24378
+ # Corresponds to the JSON property `ipCidrRange`
24379
+ # @return [String]
24380
+ attr_accessor :ip_cidr_range
24381
+
24382
+ # Whether the sub prefix is delegated to create Address resources in the
24383
+ # delegatee project.
24384
+ # Corresponds to the JSON property `isAddress`
24385
+ # @return [Boolean]
24386
+ attr_accessor :is_address
24387
+ alias_method :is_address?, :is_address
24388
+
24389
+ # The name of the sub public delegated prefix.
24390
+ # Corresponds to the JSON property `name`
24391
+ # @return [String]
24392
+ attr_accessor :name
24393
+
24394
+ # [Output Only] The region of the sub public delegated prefix if it is regional.
24395
+ # If absent, the sub prefix is global.
24396
+ # Corresponds to the JSON property `region`
24397
+ # @return [String]
24398
+ attr_accessor :region
24399
+
24400
+ # [Output Only] The status of the sub public delegated prefix.
24401
+ # Corresponds to the JSON property `status`
24402
+ # @return [String]
24403
+ attr_accessor :status
24404
+
24405
+ def initialize(**args)
24406
+ update!(**args)
24407
+ end
24408
+
24409
+ # Update properties of this object
24410
+ def update!(**args)
24411
+ @delegatee_project = args[:delegatee_project] if args.key?(:delegatee_project)
24412
+ @description = args[:description] if args.key?(:description)
24413
+ @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
24414
+ @is_address = args[:is_address] if args.key?(:is_address)
24415
+ @name = args[:name] if args.key?(:name)
24416
+ @region = args[:region] if args.key?(:region)
24417
+ @status = args[:status] if args.key?(:status)
24418
+ end
24419
+ end
24420
+
24421
+ #
24422
+ class PublicDelegatedPrefixesScopedList
24423
+ include Google::Apis::Core::Hashable
24424
+
24425
+ # [Output Only] A list of PublicDelegatedPrefixes contained in this scope.
24426
+ # Corresponds to the JSON property `publicDelegatedPrefixes`
24427
+ # @return [Array<Google::Apis::ComputeV1::PublicDelegatedPrefix>]
24428
+ attr_accessor :public_delegated_prefixes
24429
+
24430
+ # [Output Only] Informational warning which replaces the list of public
24431
+ # delegated prefixes when the list is empty.
24432
+ # Corresponds to the JSON property `warning`
24433
+ # @return [Google::Apis::ComputeV1::PublicDelegatedPrefixesScopedList::Warning]
24434
+ attr_accessor :warning
24435
+
24436
+ def initialize(**args)
24437
+ update!(**args)
24438
+ end
24439
+
24440
+ # Update properties of this object
24441
+ def update!(**args)
24442
+ @public_delegated_prefixes = args[:public_delegated_prefixes] if args.key?(:public_delegated_prefixes)
24443
+ @warning = args[:warning] if args.key?(:warning)
24444
+ end
24445
+
24446
+ # [Output Only] Informational warning which replaces the list of public
24447
+ # delegated prefixes when the list is empty.
24448
+ class Warning
24449
+ include Google::Apis::Core::Hashable
24450
+
24451
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
24452
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
24453
+ # Corresponds to the JSON property `code`
24454
+ # @return [String]
24455
+ attr_accessor :code
24456
+
24457
+ # [Output Only] Metadata about this warning in key: value format. For example:
24458
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
24459
+ # Corresponds to the JSON property `data`
24460
+ # @return [Array<Google::Apis::ComputeV1::PublicDelegatedPrefixesScopedList::Warning::Datum>]
24461
+ attr_accessor :data
24462
+
24463
+ # [Output Only] A human-readable description of the warning code.
24464
+ # Corresponds to the JSON property `message`
24465
+ # @return [String]
24466
+ attr_accessor :message
24467
+
24468
+ def initialize(**args)
24469
+ update!(**args)
24470
+ end
24471
+
24472
+ # Update properties of this object
24473
+ def update!(**args)
24474
+ @code = args[:code] if args.key?(:code)
24475
+ @data = args[:data] if args.key?(:data)
24476
+ @message = args[:message] if args.key?(:message)
24477
+ end
24478
+
24479
+ #
24480
+ class Datum
24481
+ include Google::Apis::Core::Hashable
24482
+
24483
+ # [Output Only] A key that provides more detail on the warning being returned.
24484
+ # For example, for warnings where there are no results in a list request for a
24485
+ # particular zone, this key might be scope and the key value might be the zone
24486
+ # name. Other examples might be a key indicating a deprecated resource and a
24487
+ # suggested replacement, or a warning about invalid network settings (for
24488
+ # example, if an instance attempts to perform IP forwarding but is not enabled
24489
+ # for IP forwarding).
24490
+ # Corresponds to the JSON property `key`
24491
+ # @return [String]
24492
+ attr_accessor :key
24493
+
24494
+ # [Output Only] A warning data value corresponding to the key.
24495
+ # Corresponds to the JSON property `value`
24496
+ # @return [String]
24497
+ attr_accessor :value
24498
+
24499
+ def initialize(**args)
24500
+ update!(**args)
24501
+ end
24502
+
24503
+ # Update properties of this object
24504
+ def update!(**args)
24505
+ @key = args[:key] if args.key?(:key)
24506
+ @value = args[:value] if args.key?(:value)
24507
+ end
24508
+ end
24509
+ end
24510
+ end
24511
+
24512
+ # A quotas entry.
24513
+ class Quota
24514
+ include Google::Apis::Core::Hashable
24515
+
24516
+ # [Output Only] Quota limit for this metric.
24517
+ # Corresponds to the JSON property `limit`
24518
+ # @return [Float]
24519
+ attr_accessor :limit
24520
+
24521
+ # [Output Only] Name of the quota metric.
24522
+ # Corresponds to the JSON property `metric`
24523
+ # @return [String]
24524
+ attr_accessor :metric
24525
+
24526
+ # [Output Only] Owning resource. This is the resource on which this quota is
24527
+ # applied.
24528
+ # Corresponds to the JSON property `owner`
24529
+ # @return [String]
24530
+ attr_accessor :owner
24531
+
24532
+ # [Output Only] Current usage of this metric.
24533
+ # Corresponds to the JSON property `usage`
24534
+ # @return [Float]
24535
+ attr_accessor :usage
24536
+
24537
+ def initialize(**args)
24538
+ update!(**args)
24539
+ end
24540
+
24541
+ # Update properties of this object
24542
+ def update!(**args)
24543
+ @limit = args[:limit] if args.key?(:limit)
24544
+ @metric = args[:metric] if args.key?(:metric)
24545
+ @owner = args[:owner] if args.key?(:owner)
24546
+ @usage = args[:usage] if args.key?(:usage)
24547
+ end
24548
+ end
24549
+
24550
+ # Represents a reference to a resource.
24551
+ class Reference
24552
+ include Google::Apis::Core::Hashable
24553
+
24554
+ # [Output Only] Type of the resource. Always compute#reference for references.
24555
+ # Corresponds to the JSON property `kind`
24556
+ # @return [String]
24557
+ attr_accessor :kind
24558
+
24559
+ # A description of the reference type with no implied semantics. Possible values
24560
+ # include:
24561
+ # - MEMBER_OF
24562
+ # Corresponds to the JSON property `referenceType`
24563
+ # @return [String]
24564
+ attr_accessor :reference_type
24565
+
24566
+ # URL of the resource which refers to the target.
24567
+ # Corresponds to the JSON property `referrer`
24568
+ # @return [String]
24569
+ attr_accessor :referrer
24570
+
24571
+ # URL of the resource to which this reference points.
24572
+ # Corresponds to the JSON property `target`
24573
+ # @return [String]
24574
+ attr_accessor :target
24575
+
24576
+ def initialize(**args)
24577
+ update!(**args)
24578
+ end
24579
+
24580
+ # Update properties of this object
24581
+ def update!(**args)
24582
+ @kind = args[:kind] if args.key?(:kind)
24583
+ @reference_type = args[:reference_type] if args.key?(:reference_type)
24584
+ @referrer = args[:referrer] if args.key?(:referrer)
24585
+ @target = args[:target] if args.key?(:target)
24586
+ end
24587
+ end
24588
+
24589
+ # Represents a Region resource.
24590
+ # A region is a geographical area where a resource is located. For more
24591
+ # information, read Regions and Zones. (== resource_for `$api_version`.regions ==
24592
+ # )
24593
+ class Region
24594
+ include Google::Apis::Core::Hashable
24595
+
24596
+ # [Output Only] Creation timestamp in RFC3339 text format.
24597
+ # Corresponds to the JSON property `creationTimestamp`
24598
+ # @return [String]
24599
+ attr_accessor :creation_timestamp
24600
+
24601
+ # Deprecation status for a public resource.
24602
+ # Corresponds to the JSON property `deprecated`
24603
+ # @return [Google::Apis::ComputeV1::DeprecationStatus]
24604
+ attr_accessor :deprecated
24605
+
24606
+ # [Output Only] Textual description of the resource.
24607
+ # Corresponds to the JSON property `description`
24608
+ # @return [String]
24609
+ attr_accessor :description
24610
+
24611
+ # [Output Only] The unique identifier for the resource. This identifier is
24612
+ # defined by the server.
24613
+ # Corresponds to the JSON property `id`
24614
+ # @return [Fixnum]
24615
+ attr_accessor :id
24616
+
24617
+ # [Output Only] Type of the resource. Always compute#region for regions.
24618
+ # Corresponds to the JSON property `kind`
24619
+ # @return [String]
24620
+ attr_accessor :kind
24621
+
24622
+ # [Output Only] Name of the resource.
24623
+ # Corresponds to the JSON property `name`
24624
+ # @return [String]
24625
+ attr_accessor :name
24626
+
24627
+ # [Output Only] Quotas assigned to this region.
24628
+ # Corresponds to the JSON property `quotas`
24629
+ # @return [Array<Google::Apis::ComputeV1::Quota>]
24630
+ attr_accessor :quotas
24631
+
24632
+ # [Output Only] Server-defined URL for the resource.
24633
+ # Corresponds to the JSON property `selfLink`
24634
+ # @return [String]
24635
+ attr_accessor :self_link
24636
+
24637
+ # [Output Only] Status of the region, either UP or DOWN.
24638
+ # Corresponds to the JSON property `status`
24639
+ # @return [String]
24640
+ attr_accessor :status
24641
+
24642
+ # [Output Only] Reserved for future use.
24643
+ # Corresponds to the JSON property `supportsPzs`
24644
+ # @return [Boolean]
24645
+ attr_accessor :supports_pzs
24646
+ alias_method :supports_pzs?, :supports_pzs
24647
+
24648
+ # [Output Only] A list of zones available in this region, in the form of
24649
+ # resource URLs.
24650
+ # Corresponds to the JSON property `zones`
24651
+ # @return [Array<String>]
24652
+ attr_accessor :zones
24653
+
24654
+ def initialize(**args)
24655
+ update!(**args)
24656
+ end
24657
+
24658
+ # Update properties of this object
24659
+ def update!(**args)
24660
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
24661
+ @deprecated = args[:deprecated] if args.key?(:deprecated)
24662
+ @description = args[:description] if args.key?(:description)
24663
+ @id = args[:id] if args.key?(:id)
24664
+ @kind = args[:kind] if args.key?(:kind)
24665
+ @name = args[:name] if args.key?(:name)
24666
+ @quotas = args[:quotas] if args.key?(:quotas)
24667
+ @self_link = args[:self_link] if args.key?(:self_link)
24668
+ @status = args[:status] if args.key?(:status)
24669
+ @supports_pzs = args[:supports_pzs] if args.key?(:supports_pzs)
24670
+ @zones = args[:zones] if args.key?(:zones)
24671
+ end
24672
+ end
24673
+
24674
+ # Contains a list of autoscalers.
24675
+ class RegionAutoscalerList
24676
+ include Google::Apis::Core::Hashable
24677
+
24678
+ # [Output Only] Unique identifier for the resource; defined by the server.
24679
+ # Corresponds to the JSON property `id`
24680
+ # @return [String]
24681
+ attr_accessor :id
24682
+
24683
+ # A list of Autoscaler resources.
24684
+ # Corresponds to the JSON property `items`
24685
+ # @return [Array<Google::Apis::ComputeV1::Autoscaler>]
24686
+ attr_accessor :items
24687
+
24688
+ # Type of resource.
24689
+ # Corresponds to the JSON property `kind`
24690
+ # @return [String]
24691
+ attr_accessor :kind
24692
+
24693
+ # [Output Only] This token allows you to get the next page of results for list
24694
+ # requests. If the number of results is larger than maxResults, use the
24695
+ # nextPageToken as a value for the query parameter pageToken in the next list
24696
+ # request. Subsequent list requests will have their own nextPageToken to
24697
+ # continue paging through the results.
24698
+ # Corresponds to the JSON property `nextPageToken`
24699
+ # @return [String]
24700
+ attr_accessor :next_page_token
24701
+
24702
+ # [Output Only] Server-defined URL for this resource.
24703
+ # Corresponds to the JSON property `selfLink`
24704
+ # @return [String]
24705
+ attr_accessor :self_link
24706
+
24707
+ # [Output Only] Informational warning message.
24708
+ # Corresponds to the JSON property `warning`
24709
+ # @return [Google::Apis::ComputeV1::RegionAutoscalerList::Warning]
23564
24710
  attr_accessor :warning
23565
24711
 
23566
24712
  def initialize(**args)
@@ -26674,6 +27820,13 @@ module Google
26674
27820
  # @return [String]
26675
27821
  attr_accessor :description
26676
27822
 
27823
+ # Field to indicate if a router is dedicated to use with encrypted Interconnect
27824
+ # Attachment (IPsec-encrypted Cloud Interconnect feature).
27825
+ # Corresponds to the JSON property `encryptedInterconnectRouter`
27826
+ # @return [Boolean]
27827
+ attr_accessor :encrypted_interconnect_router
27828
+ alias_method :encrypted_interconnect_router?, :encrypted_interconnect_router
27829
+
26677
27830
  # [Output Only] The unique identifier for the resource. This identifier is
26678
27831
  # defined by the server.
26679
27832
  # Corresponds to the JSON property `id`
@@ -26734,6 +27887,7 @@ module Google
26734
27887
  @bgp_peers = args[:bgp_peers] if args.key?(:bgp_peers)
26735
27888
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
26736
27889
  @description = args[:description] if args.key?(:description)
27890
+ @encrypted_interconnect_router = args[:encrypted_interconnect_router] if args.key?(:encrypted_interconnect_router)
26737
27891
  @id = args[:id] if args.key?(:id)
26738
27892
  @interfaces = args[:interfaces] if args.key?(:interfaces)
26739
27893
  @kind = args[:kind] if args.key?(:kind)
@@ -26951,12 +28105,11 @@ module Google
26951
28105
  # User-specified list of prefix groups to advertise in custom mode, which can
26952
28106
  # take one of the following options:
26953
28107
  # - ALL_SUBNETS: Advertises all available subnets, including peer VPC subnets.
26954
- # - ALL_VPC_SUBNETS: Advertises the router's own VPC subnets.
26955
- # - ALL_PEER_VPC_SUBNETS: Advertises peer subnets of the router's VPC network.
26956
- # Note that this field can only be populated if advertise_mode is CUSTOM and
26957
- # overrides the list defined for the router (in the "bgp" message). These groups
26958
- # are advertised in addition to any specified prefixes. Leave this field blank
26959
- # to advertise no custom groups.
28108
+ # - ALL_VPC_SUBNETS: Advertises the router's own VPC subnets. Note that this
28109
+ # field can only be populated if advertise_mode is CUSTOM and overrides the list
28110
+ # defined for the router (in the "bgp" message). These groups are advertised in
28111
+ # addition to any specified prefixes. Leave this field blank to advertise no
28112
+ # custom groups.
26960
28113
  # Corresponds to the JSON property `advertisedGroups`
26961
28114
  # @return [Array<String>]
26962
28115
  attr_accessor :advertised_groups
@@ -27850,7 +29003,42 @@ module Google
27850
29003
  end
27851
29004
  end
27852
29005
 
27853
- # Sets the scheduling options for an Instance. NextID: 17
29006
+ #
29007
+ class ScalingScheduleStatus
29008
+ include Google::Apis::Core::Hashable
29009
+
29010
+ # [Output Only] The last time the scaling schedule became active. Note: this is
29011
+ # a timestamp when a schedule actually became active, not when it was planned to
29012
+ # do so. The timestamp is in RFC3339 text format.
29013
+ # Corresponds to the JSON property `lastStartTime`
29014
+ # @return [String]
29015
+ attr_accessor :last_start_time
29016
+
29017
+ # [Output Only] The next time the scaling schedule is to become active. Note:
29018
+ # this is a timestamp when a schedule is planned to run, but the actual time
29019
+ # might be slightly different. The timestamp is in RFC3339 text format.
29020
+ # Corresponds to the JSON property `nextStartTime`
29021
+ # @return [String]
29022
+ attr_accessor :next_start_time
29023
+
29024
+ # [Output Only] The current state of a scaling schedule.
29025
+ # Corresponds to the JSON property `state`
29026
+ # @return [String]
29027
+ attr_accessor :state
29028
+
29029
+ def initialize(**args)
29030
+ update!(**args)
29031
+ end
29032
+
29033
+ # Update properties of this object
29034
+ def update!(**args)
29035
+ @last_start_time = args[:last_start_time] if args.key?(:last_start_time)
29036
+ @next_start_time = args[:next_start_time] if args.key?(:next_start_time)
29037
+ @state = args[:state] if args.key?(:state)
29038
+ end
29039
+ end
29040
+
29041
+ # Sets the scheduling options for an Instance. NextID: 20
27854
29042
  class Scheduling
27855
29043
  include Google::Apis::Core::Hashable
27856
29044
 
@@ -35468,6 +36656,14 @@ module Google
35468
36656
  # @return [Fixnum]
35469
36657
  attr_accessor :id
35470
36658
 
36659
+ # URL of the interconnect attachment resource. When the value of this field is
36660
+ # present, the VPN Gateway will be used for IPsec-encrypted Cloud Interconnect;
36661
+ # all Egress or Ingress traffic for this VPN Gateway interface will go through
36662
+ # the specified interconnect attachment resource.
36663
+ # Corresponds to the JSON property `interconnectAttachment`
36664
+ # @return [String]
36665
+ attr_accessor :interconnect_attachment
36666
+
35471
36667
  # [Output Only] The external IP address for this VPN gateway interface.
35472
36668
  # Corresponds to the JSON property `ipAddress`
35473
36669
  # @return [String]
@@ -35480,6 +36676,7 @@ module Google
35480
36676
  # Update properties of this object
35481
36677
  def update!(**args)
35482
36678
  @id = args[:id] if args.key?(:id)
36679
+ @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment)
35483
36680
  @ip_address = args[:ip_address] if args.key?(:ip_address)
35484
36681
  end
35485
36682
  end