google-apis-compute_beta 0.80.0 → 0.82.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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