google-apis-compute_beta 0.80.0 → 0.82.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.
@@ -2815,7 +2815,7 @@ module Google
2815
2815
 
2816
2816
  # The time zone to use when interpreting the schedule. The value of this field
2817
2817
  # must be a time zone name from the tz database: https://en.wikipedia.org/wiki/
2818
- # Tz_database. This field is assigned a default value of UTC if left empty.
2818
+ # Tz_database. This field is assigned a default value of "UTC" if left empty.
2819
2819
  # Corresponds to the JSON property `timeZone`
2820
2820
  # @return [String]
2821
2821
  attr_accessor :time_zone
@@ -3561,6 +3561,27 @@ module Google
3561
3561
  # @return [Fixnum]
3562
3562
  attr_accessor :id
3563
3563
 
3564
+ # Specifies preference of traffic to the backend (from the proxy and from the
3565
+ # client for proxyless gRPC). The possible values are: - IPV4_ONLY: Only send
3566
+ # IPv4 traffic to the backends of the Backend Service (Instance Group, Managed
3567
+ # Instance Group, Network Endpoint Group) regardless of traffic from the client
3568
+ # to the proxy. Only IPv4 health-checks are used to check the health of the
3569
+ # backends. This is the default setting. - PREFER_IPV6: Prioritize the
3570
+ # connection to the endpoints IPv6 address over its IPv4 address (provided there
3571
+ # is a healthy IPv6 address). - IPV6_ONLY: Only send IPv6 traffic to the
3572
+ # backends of the Backend Service (Instance Group, Managed Instance Group,
3573
+ # Network Endpoint Group) regardless of traffic from the client to the proxy.
3574
+ # Only IPv6 health-checks are used to check the health of the backends. This
3575
+ # field is applicable to either: - Advanced Global External HTTPS Load Balancing
3576
+ # (load balancing scheme EXTERNAL_MANAGED), - Regional External HTTPS Load
3577
+ # Balancing, - Internal TCP Proxy (load balancing scheme INTERNAL_MANAGED), -
3578
+ # Regional Internal HTTPS Load Balancing (load balancing scheme INTERNAL_MANAGED)
3579
+ # , - Traffic Director with Envoy proxies and proxyless gRPC (load balancing
3580
+ # scheme INTERNAL_SELF_MANAGED).
3581
+ # Corresponds to the JSON property `ipAddressSelectionPolicy`
3582
+ # @return [String]
3583
+ attr_accessor :ip_address_selection_policy
3584
+
3564
3585
  # [Output Only] Type of resource. Always compute#backendService for backend
3565
3586
  # services.
3566
3587
  # Corresponds to the JSON property `kind`
@@ -3604,11 +3625,11 @@ module Google
3604
3625
  # applicable to either: - A regional backend service with the service_protocol
3605
3626
  # set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to
3606
3627
  # INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme
3607
- # set to INTERNAL_SELF_MANAGED. If sessionAffinity is not NONE, and this field
3608
- # is not set to MAGLEV or RING_HASH, session affinity settings will not take
3609
- # effect. Only ROUND_ROBIN and RING_HASH are supported when the backend service
3610
- # is referenced by a URL map that is bound to target gRPC proxy that has
3611
- # validateForProxyless field set to true.
3628
+ # set to INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or EXTERNAL_MANAGED. If
3629
+ # sessionAffinity is not NONE, and this field is not set to MAGLEV or RING_HASH,
3630
+ # session affinity settings will not take effect. Only ROUND_ROBIN and RING_HASH
3631
+ # are supported when the backend service is referenced by a URL map that is
3632
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
3612
3633
  # Corresponds to the JSON property `localityLbPolicy`
3613
3634
  # @return [String]
3614
3635
  attr_accessor :locality_lb_policy
@@ -3778,6 +3799,7 @@ module Google
3778
3799
  @health_checks = args[:health_checks] if args.key?(:health_checks)
3779
3800
  @iap = args[:iap] if args.key?(:iap)
3780
3801
  @id = args[:id] if args.key?(:id)
3802
+ @ip_address_selection_policy = args[:ip_address_selection_policy] if args.key?(:ip_address_selection_policy)
3781
3803
  @kind = args[:kind] if args.key?(:kind)
3782
3804
  @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme)
3783
3805
  @locality_lb_policies = args[:locality_lb_policies] if args.key?(:locality_lb_policies)
@@ -10547,9 +10569,9 @@ module Google
10547
10569
  attr_accessor :auto_created_reservations_duration
10548
10570
 
10549
10571
  # Setting for enabling or disabling automatic deletion for auto-created
10550
- # reservation. If omitted or set to true, auto-created reservations will be
10551
- # deleted at Future Reservation's end time (default) or at user's defined
10552
- # timestamp if any of the [auto_created_reservations_delete_time,
10572
+ # reservation. If set to true, auto-created reservations will be deleted at
10573
+ # Future Reservation's end time (default) or at user's defined timestamp if any
10574
+ # of the [auto_created_reservations_delete_time,
10553
10575
  # auto_created_reservations_duration] values is specified. For keeping auto-
10554
10576
  # created reservation indefinitely, this value should be set to false.
10555
10577
  # Corresponds to the JSON property `autoDeleteAutoCreatedReservations`
@@ -11897,19 +11919,22 @@ module Google
11897
11919
  end
11898
11920
  end
11899
11921
 
11900
- # Represents a Health Check resource. Google Compute Engine has two Health Check
11901
- # resources: * [Global](/compute/docs/reference/rest/beta/healthChecks) * [
11902
- # Regional](/compute/docs/reference/rest/beta/regionHealthChecks) Internal HTTP(
11903
- # S) load balancers must use regional health checks (`compute.v1.
11904
- # regionHealthChecks`). Traffic Director must use global health checks (`compute.
11905
- # v1.healthChecks`). Internal TCP/UDP load balancers can use either regional or
11906
- # global health checks (`compute.v1.regionHealthChecks` or `compute.v1.
11907
- # healthChecks`). External HTTP(S), TCP proxy, and SSL proxy load balancers as
11908
- # well as managed instance group auto-healing must use global health checks (`
11909
- # compute.v1.healthChecks`). Backend service-based network load balancers must
11910
- # use regional health checks (`compute.v1.regionHealthChecks`). Target pool-
11911
- # based network load balancers must use legacy HTTP health checks (`compute.v1.
11912
- # httpHealthChecks`). For more information, see Health checks overview.
11922
+ # Represents a health check resource. Google Compute Engine has two health check
11923
+ # resources: * [Regional](/compute/docs/reference/rest/beta/regionHealthChecks) *
11924
+ # [Global](/compute/docs/reference/rest/beta/healthChecks) These health check
11925
+ # resources can be used for load balancing and for autohealing VMs in a managed
11926
+ # instance group (MIG). **Load balancing** The following load balancer can use
11927
+ # either regional or global health check: * Internal TCP/UDP load balancer The
11928
+ # following load balancers require regional health check: * Internal HTTP(S)
11929
+ # load balancer * Backend service-based network load balancer Traffic Director
11930
+ # and the following load balancers require global health check: * External HTTP(
11931
+ # S) load balancer * TCP proxy load balancer * SSL proxy load balancer The
11932
+ # following load balancer require [legacy HTTP health checks](/compute/docs/
11933
+ # reference/rest/v1/httpHealthChecks): * Target pool-based network load balancer
11934
+ # **Autohealing in MIGs** The health checks that you use for autohealing VMs in
11935
+ # a MIG can be either regional or global. For more information, see Set up an
11936
+ # application health check and autohealing. For more information, see Health
11937
+ # checks overview.
11913
11938
  class HealthCheck
11914
11939
  include Google::Apis::Core::Hashable
11915
11940
 
@@ -15736,6 +15761,11 @@ module Google
15736
15761
  # @return [String]
15737
15762
  attr_accessor :service_account
15738
15763
 
15764
+ # Standby policy for stopped and suspended instances.
15765
+ # Corresponds to the JSON property `standbyPolicy`
15766
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerStandbyPolicy]
15767
+ attr_accessor :standby_policy
15768
+
15739
15769
  # Stateful configuration for this Instanced Group Manager
15740
15770
  # Corresponds to the JSON property `statefulPolicy`
15741
15771
  # @return [Google::Apis::ComputeBeta::StatefulPolicy]
@@ -15760,6 +15790,22 @@ module Google
15760
15790
  # @return [Fixnum]
15761
15791
  attr_accessor :target_size
15762
15792
 
15793
+ # The target number of stopped instances for this managed instance group. This
15794
+ # number changes when you: - Stop instance using the stopInstances method or
15795
+ # start instances using the startInstances method. - Manually change the
15796
+ # targetStoppedSize using the update method.
15797
+ # Corresponds to the JSON property `targetStoppedSize`
15798
+ # @return [Fixnum]
15799
+ attr_accessor :target_stopped_size
15800
+
15801
+ # The target number of suspended instances for this managed instance group. This
15802
+ # number changes when you: - Suspend instance using the suspendInstances method
15803
+ # or resume instances using the resumeInstances method. - Manually change the
15804
+ # targetSuspendedSize using the update method.
15805
+ # Corresponds to the JSON property `targetSuspendedSize`
15806
+ # @return [Fixnum]
15807
+ attr_accessor :target_suspended_size
15808
+
15763
15809
  # The update policy for this managed instance group.
15764
15810
  # Corresponds to the JSON property `updatePolicy`
15765
15811
  # @return [Google::Apis::ComputeBeta::InstanceGroupManagerUpdatePolicy]
@@ -15809,10 +15855,13 @@ module Google
15809
15855
  @region = args[:region] if args.key?(:region)
15810
15856
  @self_link = args[:self_link] if args.key?(:self_link)
15811
15857
  @service_account = args[:service_account] if args.key?(:service_account)
15858
+ @standby_policy = args[:standby_policy] if args.key?(:standby_policy)
15812
15859
  @stateful_policy = args[:stateful_policy] if args.key?(:stateful_policy)
15813
15860
  @status = args[:status] if args.key?(:status)
15814
15861
  @target_pools = args[:target_pools] if args.key?(:target_pools)
15815
15862
  @target_size = args[:target_size] if args.key?(:target_size)
15863
+ @target_stopped_size = args[:target_stopped_size] if args.key?(:target_stopped_size)
15864
+ @target_suspended_size = args[:target_suspended_size] if args.key?(:target_suspended_size)
15816
15865
  @update_policy = args[:update_policy] if args.key?(:update_policy)
15817
15866
  @versions = args[:versions] if args.key?(:versions)
15818
15867
  @zone = args[:zone] if args.key?(:zone)
@@ -16641,6 +16690,31 @@ module Google
16641
16690
  end
16642
16691
  end
16643
16692
 
16693
+ #
16694
+ class InstanceGroupManagerStandbyPolicy
16695
+ include Google::Apis::Core::Hashable
16696
+
16697
+ #
16698
+ # Corresponds to the JSON property `initialDelaySec`
16699
+ # @return [Fixnum]
16700
+ attr_accessor :initial_delay_sec
16701
+
16702
+ # Defines behaviour of using instances from standby pool to resize MIG.
16703
+ # Corresponds to the JSON property `mode`
16704
+ # @return [String]
16705
+ attr_accessor :mode
16706
+
16707
+ def initialize(**args)
16708
+ update!(**args)
16709
+ end
16710
+
16711
+ # Update properties of this object
16712
+ def update!(**args)
16713
+ @initial_delay_sec = args[:initial_delay_sec] if args.key?(:initial_delay_sec)
16714
+ @mode = args[:mode] if args.key?(:mode)
16715
+ end
16716
+ end
16717
+
16644
16718
  #
16645
16719
  class InstanceGroupManagerStatus
16646
16720
  include Google::Apis::Core::Hashable
@@ -17313,6 +17387,26 @@ module Google
17313
17387
  end
17314
17388
  end
17315
17389
 
17390
+ #
17391
+ class InstanceGroupManagersResumeInstancesRequest
17392
+ include Google::Apis::Core::Hashable
17393
+
17394
+ # The URLs of one or more instances to resume. This can be a full URL or a
17395
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
17396
+ # Corresponds to the JSON property `instances`
17397
+ # @return [Array<String>]
17398
+ attr_accessor :instances
17399
+
17400
+ def initialize(**args)
17401
+ update!(**args)
17402
+ end
17403
+
17404
+ # Update properties of this object
17405
+ def update!(**args)
17406
+ @instances = args[:instances] if args.key?(:instances)
17407
+ end
17408
+ end
17409
+
17316
17410
  #
17317
17411
  class InstanceGroupManagersScopedList
17318
17412
  include Google::Apis::Core::Hashable
@@ -17480,6 +17574,82 @@ module Google
17480
17574
  end
17481
17575
  end
17482
17576
 
17577
+ #
17578
+ class InstanceGroupManagersStartInstancesRequest
17579
+ include Google::Apis::Core::Hashable
17580
+
17581
+ # The URLs of one or more instances to start. This can be a full URL or a
17582
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
17583
+ # Corresponds to the JSON property `instances`
17584
+ # @return [Array<String>]
17585
+ attr_accessor :instances
17586
+
17587
+ def initialize(**args)
17588
+ update!(**args)
17589
+ end
17590
+
17591
+ # Update properties of this object
17592
+ def update!(**args)
17593
+ @instances = args[:instances] if args.key?(:instances)
17594
+ end
17595
+ end
17596
+
17597
+ #
17598
+ class InstanceGroupManagersStopInstancesRequest
17599
+ include Google::Apis::Core::Hashable
17600
+
17601
+ # If this flag is set to true, the Instance Group Manager will proceed to stop
17602
+ # the instances, skipping initialization on them.
17603
+ # Corresponds to the JSON property `forceStop`
17604
+ # @return [Boolean]
17605
+ attr_accessor :force_stop
17606
+ alias_method :force_stop?, :force_stop
17607
+
17608
+ # The URLs of one or more instances to stop. This can be a full URL or a partial
17609
+ # URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
17610
+ # Corresponds to the JSON property `instances`
17611
+ # @return [Array<String>]
17612
+ attr_accessor :instances
17613
+
17614
+ def initialize(**args)
17615
+ update!(**args)
17616
+ end
17617
+
17618
+ # Update properties of this object
17619
+ def update!(**args)
17620
+ @force_stop = args[:force_stop] if args.key?(:force_stop)
17621
+ @instances = args[:instances] if args.key?(:instances)
17622
+ end
17623
+ end
17624
+
17625
+ #
17626
+ class InstanceGroupManagersSuspendInstancesRequest
17627
+ include Google::Apis::Core::Hashable
17628
+
17629
+ # If this flag is set to true, the Instance Group Manager will proceed to
17630
+ # suspend the instances, skipping initialization on them.
17631
+ # Corresponds to the JSON property `forceSuspend`
17632
+ # @return [Boolean]
17633
+ attr_accessor :force_suspend
17634
+ alias_method :force_suspend?, :force_suspend
17635
+
17636
+ # The URLs of one or more instances to suspend. This can be a full URL or a
17637
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
17638
+ # Corresponds to the JSON property `instances`
17639
+ # @return [Array<String>]
17640
+ attr_accessor :instances
17641
+
17642
+ def initialize(**args)
17643
+ update!(**args)
17644
+ end
17645
+
17646
+ # Update properties of this object
17647
+ def update!(**args)
17648
+ @force_suspend = args[:force_suspend] if args.key?(:force_suspend)
17649
+ @instances = args[:instances] if args.key?(:instances)
17650
+ end
17651
+ end
17652
+
17483
17653
  # InstanceGroupManagers.updatePerInstanceConfigs
17484
17654
  class InstanceGroupManagersUpdatePerInstanceConfigsReq
17485
17655
  include Google::Apis::Core::Hashable
@@ -18491,9 +18661,15 @@ module Google
18491
18661
  end
18492
18662
  end
18493
18663
 
18494
- # Represents an Instance Template resource. You can use instance templates to
18495
- # create VM instances and managed instance groups. For more information, read
18496
- # Instance Templates.
18664
+ # Represents an Instance Template resource. Google Compute Engine has two
18665
+ # Instance Template resources: * [Global](/compute/docs/reference/rest/beta/
18666
+ # instanceTemplates) * [Regional](/compute/docs/reference/rest/beta/
18667
+ # regionInstanceTemplates) You can reuse a global instance template in different
18668
+ # regions whereas you can use a regional instance template in a specified region
18669
+ # only. If you want to reduce cross-region dependency or achieve data residency,
18670
+ # use a regional instance template. To create VMs, managed instance groups, and
18671
+ # reservations, you can use either global or regional instance templates. For
18672
+ # more information, read Instance Templates.
18497
18673
  class InstanceTemplate
18498
18674
  include Google::Apis::Core::Hashable
18499
18675
 
@@ -19956,9 +20132,9 @@ module Google
19956
20132
 
19957
20133
  # [Output only] List of features available for this Interconnect connection,
19958
20134
  # which can take one of the following values: - MACSEC If present then the
19959
- # interconnect was created on MACsec capable hardware ports. If not present then
19960
- # the interconnect is provisioned on non-MACsec capable ports and MACsec
19961
- # enablement will fail.
20135
+ # Interconnect connection is provisioned on MACsec capable hardware ports. If
20136
+ # not present then the Interconnect connection is provisioned on non-MACsec
20137
+ # capable ports and MACsec isn't supported and enabling MACsec fails.
19962
20138
  # Corresponds to the JSON property `availableFeatures`
19963
20139
  # @return [Array<String>]
19964
20140
  attr_accessor :available_features
@@ -20064,7 +20240,8 @@ module Google
20064
20240
  attr_accessor :location
20065
20241
 
20066
20242
  # Configuration information for enabling Media Access Control security (MACsec)
20067
- # on this Interconnect connection between Google and your on-premises router.
20243
+ # on this Cloud Interconnect connection between Google and your on-premises
20244
+ # router.
20068
20245
  # Corresponds to the JSON property `macsec`
20069
20246
  # @return [Google::Apis::ComputeBeta::InterconnectMacsec]
20070
20247
  attr_accessor :macsec
@@ -20126,10 +20303,10 @@ module Google
20126
20303
 
20127
20304
  # Optional. List of features requested for this Interconnect connection, which
20128
20305
  # can take one of the following values: - MACSEC If specified then the
20129
- # interconnect will be created on MACsec capable hardware ports. If not
20130
- # specified, the default value is false, which will allocate non-MACsec capable
20131
- # ports first if available. This parameter can only be provided during
20132
- # interconnect INSERT and cannot be changed using interconnect PATCH.
20306
+ # connection is created on MACsec capable hardware ports. If not specified, the
20307
+ # default value is false, which allocates non-MACsec capable ports first if
20308
+ # available. This parameter can be provided only with Interconnect INSERT. It
20309
+ # isn't valid for Interconnect PATCH.
20133
20310
  # Corresponds to the JSON property `requestedFeatures`
20134
20311
  # @return [Array<String>]
20135
20312
  attr_accessor :requested_features
@@ -21709,7 +21886,8 @@ module Google
21709
21886
  end
21710
21887
 
21711
21888
  # Configuration information for enabling Media Access Control security (MACsec)
21712
- # on this Interconnect connection between Google and your on-premises router.
21889
+ # on this Cloud Interconnect connection between Google and your on-premises
21890
+ # router.
21713
21891
  class InterconnectMacsec
21714
21892
  include Google::Apis::Core::Hashable
21715
21893
 
@@ -21724,8 +21902,8 @@ module Google
21724
21902
  alias_method :fail_open?, :fail_open
21725
21903
 
21726
21904
  # Required. A keychain placeholder describing a set of named key objects along
21727
- # with their start times. A MACsec CKN/CAK will be generated for each key in the
21728
- # key chain. Google router will automatically pick the key with the most recent
21905
+ # with their start times. A MACsec CKN/CAK is generated for each key in the key
21906
+ # chain. Google router automatically picks the key with the most recent
21729
21907
  # startTime when establishing or re-establishing a MACsec secure link.
21730
21908
  # Corresponds to the JSON property `preSharedKeys`
21731
21909
  # @return [Array<Google::Apis::ComputeBeta::InterconnectMacsecPreSharedKey>]
@@ -23722,6 +23900,12 @@ module Google
23722
23900
  # @return [String]
23723
23901
  attr_accessor :instance
23724
23902
 
23903
+ # [Output Only] The overrides to instance properties resulting from
23904
+ # InstanceFlexibilityPolicy.
23905
+ # Corresponds to the JSON property `instanceFlexibilityOverride`
23906
+ # @return [Google::Apis::ComputeBeta::ManagedInstanceInstanceFlexibilityOverride]
23907
+ attr_accessor :instance_flexibility_override
23908
+
23725
23909
  # [Output Only] Health state of the instance per health-check.
23726
23910
  # Corresponds to the JSON property `instanceHealth`
23727
23911
  # @return [Array<Google::Apis::ComputeBeta::ManagedInstanceInstanceHealth>]
@@ -23770,6 +23954,7 @@ module Google
23770
23954
  @current_action = args[:current_action] if args.key?(:current_action)
23771
23955
  @id = args[:id] if args.key?(:id)
23772
23956
  @instance = args[:instance] if args.key?(:instance)
23957
+ @instance_flexibility_override = args[:instance_flexibility_override] if args.key?(:instance_flexibility_override)
23773
23958
  @instance_health = args[:instance_health] if args.key?(:instance_health)
23774
23959
  @instance_status = args[:instance_status] if args.key?(:instance_status)
23775
23960
  @last_attempt = args[:last_attempt] if args.key?(:last_attempt)
@@ -23800,6 +23985,25 @@ module Google
23800
23985
  end
23801
23986
  end
23802
23987
 
23988
+ #
23989
+ class ManagedInstanceInstanceFlexibilityOverride
23990
+ include Google::Apis::Core::Hashable
23991
+
23992
+ # The machine type to be used for this instance.
23993
+ # Corresponds to the JSON property `machineType`
23994
+ # @return [String]
23995
+ attr_accessor :machine_type
23996
+
23997
+ def initialize(**args)
23998
+ update!(**args)
23999
+ end
24000
+
24001
+ # Update properties of this object
24002
+ def update!(**args)
24003
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
24004
+ end
24005
+ end
24006
+
23803
24007
  #
23804
24008
  class ManagedInstanceInstanceHealth
23805
24009
  include Google::Apis::Core::Hashable
@@ -26878,6 +27082,12 @@ module Google
26878
27082
  # @return [String]
26879
27083
  attr_accessor :location_hint
26880
27084
 
27085
+ # Specifies the frequency of planned maintenance events. The accepted values are:
27086
+ # `AS_NEEDED` and `RECURRENT`.
27087
+ # Corresponds to the JSON property `maintenanceInterval`
27088
+ # @return [String]
27089
+ attr_accessor :maintenance_interval
27090
+
26881
27091
  # Specifies how to handle instances when a node in the group undergoes
26882
27092
  # maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or
26883
27093
  # MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information,
@@ -26947,6 +27157,7 @@ module Google
26947
27157
  @id = args[:id] if args.key?(:id)
26948
27158
  @kind = args[:kind] if args.key?(:kind)
26949
27159
  @location_hint = args[:location_hint] if args.key?(:location_hint)
27160
+ @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
26950
27161
  @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy)
26951
27162
  @maintenance_window = args[:maintenance_window] if args.key?(:maintenance_window)
26952
27163
  @name = args[:name] if args.key?(:name)
@@ -27335,6 +27546,11 @@ module Google
27335
27546
  # @return [Google::Apis::ComputeBeta::InstanceConsumptionInfo]
27336
27547
  attr_accessor :total_resources
27337
27548
 
27549
+ # Upcoming Maintenance notification information.
27550
+ # Corresponds to the JSON property `upcomingMaintenance`
27551
+ # @return [Google::Apis::ComputeBeta::UpcomingMaintenance]
27552
+ attr_accessor :upcoming_maintenance
27553
+
27338
27554
  def initialize(**args)
27339
27555
  update!(**args)
27340
27556
  end
@@ -27354,6 +27570,7 @@ module Google
27354
27570
  @server_id = args[:server_id] if args.key?(:server_id)
27355
27571
  @status = args[:status] if args.key?(:status)
27356
27572
  @total_resources = args[:total_resources] if args.key?(:total_resources)
27573
+ @upcoming_maintenance = args[:upcoming_maintenance] if args.key?(:upcoming_maintenance)
27357
27574
  end
27358
27575
  end
27359
27576
 
@@ -27513,6 +27730,31 @@ module Google
27513
27730
  end
27514
27731
  end
27515
27732
 
27733
+ #
27734
+ class NodeGroupsPerformMaintenanceRequest
27735
+ include Google::Apis::Core::Hashable
27736
+
27737
+ # [Required] List of nodes affected by the call.
27738
+ # Corresponds to the JSON property `nodes`
27739
+ # @return [Array<String>]
27740
+ attr_accessor :nodes
27741
+
27742
+ # The start time of the schedule. The timestamp is an RFC3339 string.
27743
+ # Corresponds to the JSON property `startTime`
27744
+ # @return [String]
27745
+ attr_accessor :start_time
27746
+
27747
+ def initialize(**args)
27748
+ update!(**args)
27749
+ end
27750
+
27751
+ # Update properties of this object
27752
+ def update!(**args)
27753
+ @nodes = args[:nodes] if args.key?(:nodes)
27754
+ @start_time = args[:start_time] if args.key?(:start_time)
27755
+ end
27756
+ end
27757
+
27516
27758
  #
27517
27759
  class NodeGroupsScopedList
27518
27760
  include Google::Apis::Core::Hashable
@@ -33042,6 +33284,26 @@ module Google
33042
33284
  end
33043
33285
  end
33044
33286
 
33287
+ #
33288
+ class RegionInstanceGroupManagersResumeInstancesRequest
33289
+ include Google::Apis::Core::Hashable
33290
+
33291
+ # The URLs of one or more instances to resume. This can be a full URL or a
33292
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
33293
+ # Corresponds to the JSON property `instances`
33294
+ # @return [Array<String>]
33295
+ attr_accessor :instances
33296
+
33297
+ def initialize(**args)
33298
+ update!(**args)
33299
+ end
33300
+
33301
+ # Update properties of this object
33302
+ def update!(**args)
33303
+ @instances = args[:instances] if args.key?(:instances)
33304
+ end
33305
+ end
33306
+
33045
33307
  #
33046
33308
  class RegionInstanceGroupManagersSetAutoHealingRequest
33047
33309
  include Google::Apis::Core::Hashable
@@ -33111,6 +33373,82 @@ module Google
33111
33373
  end
33112
33374
  end
33113
33375
 
33376
+ #
33377
+ class RegionInstanceGroupManagersStartInstancesRequest
33378
+ include Google::Apis::Core::Hashable
33379
+
33380
+ # The URLs of one or more instances to start. This can be a full URL or a
33381
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
33382
+ # Corresponds to the JSON property `instances`
33383
+ # @return [Array<String>]
33384
+ attr_accessor :instances
33385
+
33386
+ def initialize(**args)
33387
+ update!(**args)
33388
+ end
33389
+
33390
+ # Update properties of this object
33391
+ def update!(**args)
33392
+ @instances = args[:instances] if args.key?(:instances)
33393
+ end
33394
+ end
33395
+
33396
+ #
33397
+ class RegionInstanceGroupManagersStopInstancesRequest
33398
+ include Google::Apis::Core::Hashable
33399
+
33400
+ # If this flag is set to true, the Instance Group Manager will proceed to stop
33401
+ # the instances, skipping initialization on them.
33402
+ # Corresponds to the JSON property `forceStop`
33403
+ # @return [Boolean]
33404
+ attr_accessor :force_stop
33405
+ alias_method :force_stop?, :force_stop
33406
+
33407
+ # The URLs of one or more instances to stop. This can be a full URL or a partial
33408
+ # URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
33409
+ # Corresponds to the JSON property `instances`
33410
+ # @return [Array<String>]
33411
+ attr_accessor :instances
33412
+
33413
+ def initialize(**args)
33414
+ update!(**args)
33415
+ end
33416
+
33417
+ # Update properties of this object
33418
+ def update!(**args)
33419
+ @force_stop = args[:force_stop] if args.key?(:force_stop)
33420
+ @instances = args[:instances] if args.key?(:instances)
33421
+ end
33422
+ end
33423
+
33424
+ #
33425
+ class RegionInstanceGroupManagersSuspendInstancesRequest
33426
+ include Google::Apis::Core::Hashable
33427
+
33428
+ # If this flag is set to true, the Instance Group Manager will proceed to
33429
+ # suspend the instances, skipping initialization on them.
33430
+ # Corresponds to the JSON property `forceSuspend`
33431
+ # @return [Boolean]
33432
+ attr_accessor :force_suspend
33433
+ alias_method :force_suspend?, :force_suspend
33434
+
33435
+ # The URLs of one or more instances to suspend. This can be a full URL or a
33436
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
33437
+ # Corresponds to the JSON property `instances`
33438
+ # @return [Array<String>]
33439
+ attr_accessor :instances
33440
+
33441
+ def initialize(**args)
33442
+ update!(**args)
33443
+ end
33444
+
33445
+ # Update properties of this object
33446
+ def update!(**args)
33447
+ @force_suspend = args[:force_suspend] if args.key?(:force_suspend)
33448
+ @instances = args[:instances] if args.key?(:instances)
33449
+ end
33450
+ end
33451
+
33114
33452
  #
33115
33453
  class RegionInstanceGroupsListInstances
33116
33454
  include Google::Apis::Core::Hashable
@@ -39664,7 +40002,7 @@ module Google
39664
40002
  # affect both PENDING and ACCEPTED/REJECTED PSC endpoints. For example, an
39665
40003
  # ACCEPTED PSC endpoint will be moved to REJECTED if its project is added to the
39666
40004
  # reject list. For newly created service attachment, this boolean defaults to
39667
- # true.
40005
+ # false.
39668
40006
  # Corresponds to the JSON property `reconcileConnections`
39669
40007
  # @return [Boolean]
39670
40008
  attr_accessor :reconcile_connections
@@ -43564,14 +43902,14 @@ module Google
43564
43902
  # Represents a Target HTTP Proxy resource. Google Compute Engine has two Target
43565
43903
  # HTTP Proxy resources: * [Global](/compute/docs/reference/rest/beta/
43566
43904
  # targetHttpProxies) * [Regional](/compute/docs/reference/rest/beta/
43567
- # regionTargetHttpProxies) A target HTTP proxy is a component of GCP HTTP load
43568
- # balancers. * targetHttpProxies are used by global external Application Load
43569
- # Balancers, classic Application Load Balancers, cross-region internal
43570
- # Application Load Balancers, and Traffic Director. * regionTargetHttpProxies
43571
- # are used by regional internal Application Load Balancers and regional external
43572
- # Application Load Balancers. Forwarding rules reference a target HTTP proxy,
43573
- # and the target proxy then references a URL map. For more information, read
43574
- # Using Target Proxies and Forwarding rule concepts.
43905
+ # regionTargetHttpProxies) A target HTTP proxy is a component of Google Cloud
43906
+ # HTTP load balancers. * targetHttpProxies are used by global external
43907
+ # Application Load Balancers, classic Application Load Balancers, cross-region
43908
+ # internal Application Load Balancers, and Traffic Director. *
43909
+ # regionTargetHttpProxies are used by regional internal Application Load
43910
+ # Balancers and regional external Application Load Balancers. Forwarding rules
43911
+ # reference a target HTTP proxy, and the target proxy then references a URL map.
43912
+ # For more information, read Using Target Proxies and Forwarding rule concepts.
43575
43913
  class TargetHttpProxy
43576
43914
  include Google::Apis::Core::Hashable
43577
43915
 
@@ -46918,6 +47256,59 @@ module Google
46918
47256
  end
46919
47257
  end
46920
47258
 
47259
+ # Upcoming Maintenance notification information.
47260
+ class UpcomingMaintenance
47261
+ include Google::Apis::Core::Hashable
47262
+
47263
+ # Indicates if the maintenance can be customer triggered.
47264
+ # Corresponds to the JSON property `canReschedule`
47265
+ # @return [Boolean]
47266
+ attr_accessor :can_reschedule
47267
+ alias_method :can_reschedule?, :can_reschedule
47268
+
47269
+ # The latest time for the planned maintenance window to start. This timestamp
47270
+ # value is in RFC3339 text format.
47271
+ # Corresponds to the JSON property `latestWindowStartTime`
47272
+ # @return [String]
47273
+ attr_accessor :latest_window_start_time
47274
+
47275
+ #
47276
+ # Corresponds to the JSON property `maintenanceStatus`
47277
+ # @return [String]
47278
+ attr_accessor :maintenance_status
47279
+
47280
+ # Defines the type of maintenance.
47281
+ # Corresponds to the JSON property `type`
47282
+ # @return [String]
47283
+ attr_accessor :type
47284
+
47285
+ # The time by which the maintenance disruption will be completed. This timestamp
47286
+ # value is in RFC3339 text format.
47287
+ # Corresponds to the JSON property `windowEndTime`
47288
+ # @return [String]
47289
+ attr_accessor :window_end_time
47290
+
47291
+ # The current start time of the maintenance window. This timestamp value is in
47292
+ # RFC3339 text format.
47293
+ # Corresponds to the JSON property `windowStartTime`
47294
+ # @return [String]
47295
+ attr_accessor :window_start_time
47296
+
47297
+ def initialize(**args)
47298
+ update!(**args)
47299
+ end
47300
+
47301
+ # Update properties of this object
47302
+ def update!(**args)
47303
+ @can_reschedule = args[:can_reschedule] if args.key?(:can_reschedule)
47304
+ @latest_window_start_time = args[:latest_window_start_time] if args.key?(:latest_window_start_time)
47305
+ @maintenance_status = args[:maintenance_status] if args.key?(:maintenance_status)
47306
+ @type = args[:type] if args.key?(:type)
47307
+ @window_end_time = args[:window_end_time] if args.key?(:window_end_time)
47308
+ @window_start_time = args[:window_start_time] if args.key?(:window_start_time)
47309
+ end
47310
+ end
47311
+
46921
47312
  # Represents a URL Map resource. Compute Engine has two URL Map resources: * [
46922
47313
  # Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/docs/
46923
47314
  # reference/rest/beta/regionUrlMaps) A URL map resource is a component of