google-apis-compute_v1 0.2.0 → 0.3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 683bbfb2a2e68971229566c711bec6132a4c202f90dc10338505a5ce839b4e7c
4
- data.tar.gz: 58f56cd15cbcc79c8b28805c950e18f237731a2d11c54a5a4183159926239b2f
3
+ metadata.gz: 4190f78dc6adbd7cb2f4b21199989ce823a9aa1e9e46d4a22e543204ffe6986d
4
+ data.tar.gz: 6395a30be1d2d881fd867fd1f416b0997130a8819bf86bfd1e5dd2f982fba3af
5
5
  SHA512:
6
- metadata.gz: 13e54f6d901ce721e276e8bd540d3493542c72465e7278427b77859add8c52bde7f2a6849dc18fba2c4cea54ac738055078782d70a8a3c9a8c47da930364de19
7
- data.tar.gz: f934e33b4f6b2961fe492aa4962481079172273af542eec92813397d86a41b10ff9c3f59d1aab553a764e06cddd047848a769dd03ade4dc1ca1a95d386f68ae7
6
+ metadata.gz: 1e95ff2900b99825b50ff0e3754842f95c730c0ed786cd629a42bd995c831bda0359e2dd6bfa63a559449bd10bf58c9a54b40d72b33a8313baa6f4304c911e21
7
+ data.tar.gz: d4101023794eeb65980e91ecbedf6650f486b136743a42f8fe607f60828544d83dc19c7c3d3c910a6a74235e872e9309b6863cac73532587f426d72bf99d9d60
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-compute_v1
2
2
 
3
+ ### v0.3.0 (2021-02-16)
4
+
5
+ * Regenerated from discovery document revision 20210129
6
+
3
7
  ### v0.2.0 (2021-01-29)
4
8
 
5
9
  * Regenerated from discovery document revision 20210111
@@ -636,9 +636,9 @@ module Google
636
636
  # @return [String]
637
637
  attr_accessor :purpose
638
638
 
639
- # [Output Only] The URL of the region where the regional address resides. This
640
- # field is not applicable to global addresses. You must specify this field as
641
- # part of the HTTP request URL.
639
+ # [Output Only] The URL of the region where a regional address resides. For
640
+ # regional addresses, you must specify the region as a path parameter in the
641
+ # HTTP request URL. This field is not applicable to global addresses.
642
642
  # Corresponds to the JSON property `region`
643
643
  # @return [String]
644
644
  attr_accessor :region
@@ -1124,6 +1124,12 @@ module Google
1124
1124
  # @return [Array<Google::Apis::ComputeV1::AllocationSpecificSkuAllocationAllocatedInstancePropertiesReservedDisk>]
1125
1125
  attr_accessor :local_ssds
1126
1126
 
1127
+ # An opaque location hint used to place the allocation close to other resources.
1128
+ # This field is for use by internal tools that use the public API.
1129
+ # Corresponds to the JSON property `locationHint`
1130
+ # @return [String]
1131
+ attr_accessor :location_hint
1132
+
1127
1133
  # Specifies type of machine (name only) which has fixed number of vCPUs and
1128
1134
  # fixed amount of memory. This also includes specifying custom machine type
1129
1135
  # following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
@@ -1144,6 +1150,7 @@ module Google
1144
1150
  def update!(**args)
1145
1151
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
1146
1152
  @local_ssds = args[:local_ssds] if args.key?(:local_ssds)
1153
+ @location_hint = args[:location_hint] if args.key?(:location_hint)
1147
1154
  @machine_type = args[:machine_type] if args.key?(:machine_type)
1148
1155
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
1149
1156
  end
@@ -1386,6 +1393,11 @@ module Google
1386
1393
  # @return [String]
1387
1394
  attr_accessor :on_update_action
1388
1395
 
1396
+ # Indicates how many IOPS must be provisioned for the disk.
1397
+ # Corresponds to the JSON property `provisionedIops`
1398
+ # @return [Fixnum]
1399
+ attr_accessor :provisioned_iops
1400
+
1389
1401
  # Resource policies applied to this disk for automatic snapshot creations.
1390
1402
  # Specified using the full or partial URL. For instance template, specify only
1391
1403
  # the resource policy name.
@@ -1451,6 +1463,7 @@ module Google
1451
1463
  @disk_type = args[:disk_type] if args.key?(:disk_type)
1452
1464
  @labels = args[:labels] if args.key?(:labels)
1453
1465
  @on_update_action = args[:on_update_action] if args.key?(:on_update_action)
1466
+ @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
1454
1467
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
1455
1468
  @source_image = args[:source_image] if args.key?(:source_image)
1456
1469
  @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key)
@@ -2934,8 +2947,8 @@ module Google
2934
2947
 
2935
2948
  # Deprecated in favor of portName. The TCP port to connect on the backend. The
2936
2949
  # default value is 80.
2937
- # This cannot be used if the loadBalancingScheme is INTERNAL (Internal TCP/UDP
2938
- # Load Balancing).
2950
+ # Backend services for Internal TCP/UDP Load Balancing and Network Load
2951
+ # Balancing require you omit port.
2939
2952
  # Corresponds to the JSON property `port`
2940
2953
  # @return [Fixnum]
2941
2954
  attr_accessor :port
@@ -4809,6 +4822,11 @@ module Google
4809
4822
  # @return [Fixnum]
4810
4823
  attr_accessor :physical_block_size_bytes
4811
4824
 
4825
+ # Indicates how many IOPS must be provisioned for the disk.
4826
+ # Corresponds to the JSON property `provisionedIops`
4827
+ # @return [Fixnum]
4828
+ attr_accessor :provisioned_iops
4829
+
4812
4830
  # [Output Only] URL of the region where the disk resides. Only applicable for
4813
4831
  # regional resources. You must specify this field as part of the HTTP request
4814
4832
  # URL. It is not settable as a field in the request body.
@@ -4987,6 +5005,7 @@ module Google
4987
5005
  @name = args[:name] if args.key?(:name)
4988
5006
  @options = args[:options] if args.key?(:options)
4989
5007
  @physical_block_size_bytes = args[:physical_block_size_bytes] if args.key?(:physical_block_size_bytes)
5008
+ @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
4990
5009
  @region = args[:region] if args.key?(:region)
4991
5010
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
4992
5011
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
@@ -7210,8 +7229,7 @@ module Google
7210
7229
  # @return [String]
7211
7230
  attr_accessor :action
7212
7231
 
7213
- # An optional description of this resource. Provide this property when you
7214
- # create the resource.
7232
+ # An optional description for this resource.
7215
7233
  # Corresponds to the JSON property `description`
7216
7234
  # @return [String]
7217
7235
  attr_accessor :description
@@ -7674,6 +7692,11 @@ module Google
7674
7692
  # @return [Array<String>]
7675
7693
  attr_accessor :ports
7676
7694
 
7695
+ # [Output Only] The PSC connection id of the PSC Forwarding Rule.
7696
+ # Corresponds to the JSON property `pscConnectionId`
7697
+ # @return [Fixnum]
7698
+ attr_accessor :psc_connection_id
7699
+
7677
7700
  # [Output Only] URL of the region where the regional forwarding rule resides.
7678
7701
  # This field is not applicable to global forwarding rules. You must specify this
7679
7702
  # field as part of the HTTP request URL. It is not settable as a field in the
@@ -7687,6 +7710,14 @@ module Google
7687
7710
  # @return [String]
7688
7711
  attr_accessor :self_link
7689
7712
 
7713
+ # Service Directory resources to register this forwarding rule with. Currently,
7714
+ # only supports a single Service Directory resource.
7715
+ # It is only supported for Internal TCP/UDP Load Balancing and Internal HTTP(S)
7716
+ # Load Balancing.
7717
+ # Corresponds to the JSON property `serviceDirectoryRegistrations`
7718
+ # @return [Array<Google::Apis::ComputeV1::ForwardingRuleServiceDirectoryRegistration>]
7719
+ attr_accessor :service_directory_registrations
7720
+
7690
7721
  # An optional prefix to the service name for this Forwarding Rule. If specified,
7691
7722
  # the prefix is the first label of the fully qualified service name.
7692
7723
  # The label must be 1-63 characters long, and comply with RFC1035. Specifically,
@@ -7753,8 +7784,10 @@ module Google
7753
7784
  @network_tier = args[:network_tier] if args.key?(:network_tier)
7754
7785
  @port_range = args[:port_range] if args.key?(:port_range)
7755
7786
  @ports = args[:ports] if args.key?(:ports)
7787
+ @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
7756
7788
  @region = args[:region] if args.key?(:region)
7757
7789
  @self_link = args[:self_link] if args.key?(:self_link)
7790
+ @service_directory_registrations = args[:service_directory_registrations] if args.key?(:service_directory_registrations)
7758
7791
  @service_label = args[:service_label] if args.key?(:service_label)
7759
7792
  @service_name = args[:service_name] if args.key?(:service_name)
7760
7793
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
@@ -8022,6 +8055,42 @@ module Google
8022
8055
  end
8023
8056
  end
8024
8057
 
8058
+ # Describes the auto-registration of the Forwarding Rule to Service Directory.
8059
+ # The region and project of the Service Directory resource generated from this
8060
+ # registration will be the same as this Forwarding Rule.
8061
+ class ForwardingRuleServiceDirectoryRegistration
8062
+ include Google::Apis::Core::Hashable
8063
+
8064
+ # Service Directory namespace to register the forwarding rule under.
8065
+ # Corresponds to the JSON property `namespace`
8066
+ # @return [String]
8067
+ attr_accessor :namespace
8068
+
8069
+ # Service Directory service to register the forwarding rule under.
8070
+ # Corresponds to the JSON property `service`
8071
+ # @return [String]
8072
+ attr_accessor :service
8073
+
8074
+ # [Optional] Service Directory region to register this global forwarding rule
8075
+ # under. Default to "us-central1". Only used for PSC for Google APIs. All PSC
8076
+ # for Google APIs Forwarding Rules on the same network should use the same
8077
+ # Service Directory region.
8078
+ # Corresponds to the JSON property `serviceDirectoryRegion`
8079
+ # @return [String]
8080
+ attr_accessor :service_directory_region
8081
+
8082
+ def initialize(**args)
8083
+ update!(**args)
8084
+ end
8085
+
8086
+ # Update properties of this object
8087
+ def update!(**args)
8088
+ @namespace = args[:namespace] if args.key?(:namespace)
8089
+ @service = args[:service] if args.key?(:service)
8090
+ @service_directory_region = args[:service_directory_region] if args.key?(:service_directory_region)
8091
+ end
8092
+ end
8093
+
8025
8094
  #
8026
8095
  class ForwardingRulesScopedList
8027
8096
  include Google::Apis::Core::Hashable
@@ -9514,7 +9583,9 @@ module Google
9514
9583
  # @return [String]
9515
9584
  attr_accessor :instance
9516
9585
 
9517
- # A forwarding rule IP address assigned to this instance.
9586
+ # For target pool based Network Load Balancing, it indicates the forwarding rule'
9587
+ # s IP address assigned to this instance. For other types of load balancing, the
9588
+ # field indicates VM internal ip.
9518
9589
  # Corresponds to the JSON property `ipAddress`
9519
9590
  # @return [String]
9520
9591
  attr_accessor :ip_address
@@ -10911,6 +10982,12 @@ module Google
10911
10982
  # @return [Google::Apis::ComputeV1::Image::RawDisk]
10912
10983
  attr_accessor :raw_disk
10913
10984
 
10985
+ # [Output Only] Reserved for future use.
10986
+ # Corresponds to the JSON property `satisfiesPzs`
10987
+ # @return [Boolean]
10988
+ attr_accessor :satisfies_pzs
10989
+ alias_method :satisfies_pzs?, :satisfies_pzs
10990
+
10914
10991
  # [Output Only] Server-defined URL for the resource.
10915
10992
  # Corresponds to the JSON property `selfLink`
10916
10993
  # @return [String]
@@ -11037,6 +11114,7 @@ module Google
11037
11114
  @licenses = args[:licenses] if args.key?(:licenses)
11038
11115
  @name = args[:name] if args.key?(:name)
11039
11116
  @raw_disk = args[:raw_disk] if args.key?(:raw_disk)
11117
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
11040
11118
  @self_link = args[:self_link] if args.key?(:self_link)
11041
11119
  @shielded_instance_initial_state = args[:shielded_instance_initial_state] if args.key?(:shielded_instance_initial_state)
11042
11120
  @source_disk = args[:source_disk] if args.key?(:source_disk)
@@ -11442,7 +11520,7 @@ module Google
11442
11520
  attr_accessor :satisfies_pzs
11443
11521
  alias_method :satisfies_pzs?, :satisfies_pzs
11444
11522
 
11445
- # Sets the scheduling options for an Instance. NextID: 13
11523
+ # Sets the scheduling options for an Instance. NextID: 17
11446
11524
  # Corresponds to the JSON property `scheduling`
11447
11525
  # @return [Google::Apis::ComputeV1::Scheduling]
11448
11526
  attr_accessor :scheduling
@@ -14063,7 +14141,7 @@ module Google
14063
14141
  # @return [Array<String>]
14064
14142
  attr_accessor :resource_policies
14065
14143
 
14066
- # Sets the scheduling options for an Instance. NextID: 13
14144
+ # Sets the scheduling options for an Instance. NextID: 17
14067
14145
  # Corresponds to the JSON property `scheduling`
14068
14146
  # @return [Google::Apis::ComputeV1::Scheduling]
14069
14147
  attr_accessor :scheduling
@@ -14385,6 +14463,68 @@ module Google
14385
14463
  end
14386
14464
  end
14387
14465
 
14466
+ #
14467
+ class InstancesGetEffectiveFirewallsResponse
14468
+ include Google::Apis::Core::Hashable
14469
+
14470
+ # Effective firewalls from firewall policies.
14471
+ # Corresponds to the JSON property `firewallPolicys`
14472
+ # @return [Array<Google::Apis::ComputeV1::InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy>]
14473
+ attr_accessor :firewall_policys
14474
+
14475
+ # Effective firewalls on the instance.
14476
+ # Corresponds to the JSON property `firewalls`
14477
+ # @return [Array<Google::Apis::ComputeV1::Firewall>]
14478
+ attr_accessor :firewalls
14479
+
14480
+ def initialize(**args)
14481
+ update!(**args)
14482
+ end
14483
+
14484
+ # Update properties of this object
14485
+ def update!(**args)
14486
+ @firewall_policys = args[:firewall_policys] if args.key?(:firewall_policys)
14487
+ @firewalls = args[:firewalls] if args.key?(:firewalls)
14488
+ end
14489
+ end
14490
+
14491
+ #
14492
+ class InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy
14493
+ include Google::Apis::Core::Hashable
14494
+
14495
+ # [Output Only] The display name of the firewall policy.
14496
+ # Corresponds to the JSON property `displayName`
14497
+ # @return [String]
14498
+ attr_accessor :display_name
14499
+
14500
+ # [Output Only] The name of the firewall policy.
14501
+ # Corresponds to the JSON property `name`
14502
+ # @return [String]
14503
+ attr_accessor :name
14504
+
14505
+ # The rules that apply to the network.
14506
+ # Corresponds to the JSON property `rules`
14507
+ # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRule>]
14508
+ attr_accessor :rules
14509
+
14510
+ # [Output Only] The type of the firewall policy.
14511
+ # Corresponds to the JSON property `type`
14512
+ # @return [String]
14513
+ attr_accessor :type
14514
+
14515
+ def initialize(**args)
14516
+ update!(**args)
14517
+ end
14518
+
14519
+ # Update properties of this object
14520
+ def update!(**args)
14521
+ @display_name = args[:display_name] if args.key?(:display_name)
14522
+ @name = args[:name] if args.key?(:name)
14523
+ @rules = args[:rules] if args.key?(:rules)
14524
+ @type = args[:type] if args.key?(:type)
14525
+ end
14526
+ end
14527
+
14388
14528
  #
14389
14529
  class InstancesRemoveResourcePoliciesRequest
14390
14530
  include Google::Apis::Core::Hashable
@@ -19015,6 +19155,68 @@ module Google
19015
19155
  end
19016
19156
  end
19017
19157
 
19158
+ #
19159
+ class NetworksGetEffectiveFirewallsResponse
19160
+ include Google::Apis::Core::Hashable
19161
+
19162
+ # Effective firewalls from firewall policy.
19163
+ # Corresponds to the JSON property `firewallPolicys`
19164
+ # @return [Array<Google::Apis::ComputeV1::NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy>]
19165
+ attr_accessor :firewall_policys
19166
+
19167
+ # Effective firewalls on the network.
19168
+ # Corresponds to the JSON property `firewalls`
19169
+ # @return [Array<Google::Apis::ComputeV1::Firewall>]
19170
+ attr_accessor :firewalls
19171
+
19172
+ def initialize(**args)
19173
+ update!(**args)
19174
+ end
19175
+
19176
+ # Update properties of this object
19177
+ def update!(**args)
19178
+ @firewall_policys = args[:firewall_policys] if args.key?(:firewall_policys)
19179
+ @firewalls = args[:firewalls] if args.key?(:firewalls)
19180
+ end
19181
+ end
19182
+
19183
+ #
19184
+ class NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy
19185
+ include Google::Apis::Core::Hashable
19186
+
19187
+ # [Output Only] The display name of the firewall policy.
19188
+ # Corresponds to the JSON property `displayName`
19189
+ # @return [String]
19190
+ attr_accessor :display_name
19191
+
19192
+ # [Output Only] The name of the firewall policy.
19193
+ # Corresponds to the JSON property `name`
19194
+ # @return [String]
19195
+ attr_accessor :name
19196
+
19197
+ # The rules that apply to the network.
19198
+ # Corresponds to the JSON property `rules`
19199
+ # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRule>]
19200
+ attr_accessor :rules
19201
+
19202
+ # [Output Only] The type of the firewall policy.
19203
+ # Corresponds to the JSON property `type`
19204
+ # @return [String]
19205
+ attr_accessor :type
19206
+
19207
+ def initialize(**args)
19208
+ update!(**args)
19209
+ end
19210
+
19211
+ # Update properties of this object
19212
+ def update!(**args)
19213
+ @display_name = args[:display_name] if args.key?(:display_name)
19214
+ @name = args[:name] if args.key?(:name)
19215
+ @rules = args[:rules] if args.key?(:rules)
19216
+ @type = args[:type] if args.key?(:type)
19217
+ end
19218
+ end
19219
+
19018
19220
  #
19019
19221
  class NetworksRemovePeeringRequest
19020
19222
  include Google::Apis::Core::Hashable
@@ -19098,6 +19300,13 @@ module Google
19098
19300
  # @return [String]
19099
19301
  attr_accessor :kind
19100
19302
 
19303
+ # An opaque location hint used to place the Node close to other resources. This
19304
+ # field is for use by internal tools that use the public API. The location hint
19305
+ # here on the NodeGroup overrides any location_hint present in the NodeTemplate.
19306
+ # Corresponds to the JSON property `locationHint`
19307
+ # @return [String]
19308
+ attr_accessor :location_hint
19309
+
19101
19310
  # Specifies how to handle instances when a node in the group undergoes
19102
19311
  # maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or
19103
19312
  # MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information,
@@ -19161,6 +19370,7 @@ module Google
19161
19370
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
19162
19371
  @id = args[:id] if args.key?(:id)
19163
19372
  @kind = args[:kind] if args.key?(:kind)
19373
+ @location_hint = args[:location_hint] if args.key?(:location_hint)
19164
19374
  @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy)
19165
19375
  @maintenance_window = args[:maintenance_window] if args.key?(:maintenance_window)
19166
19376
  @name = args[:name] if args.key?(:name)
@@ -19512,6 +19722,12 @@ module Google
19512
19722
  # @return [String]
19513
19723
  attr_accessor :node_type
19514
19724
 
19725
+ # [Output Only] Reserved for future use.
19726
+ # Corresponds to the JSON property `satisfiesPzs`
19727
+ # @return [Boolean]
19728
+ attr_accessor :satisfies_pzs
19729
+ alias_method :satisfies_pzs?, :satisfies_pzs
19730
+
19515
19731
  # Binding properties for the physical server.
19516
19732
  # Corresponds to the JSON property `serverBinding`
19517
19733
  # @return [Google::Apis::ComputeV1::ServerBinding]
@@ -19539,6 +19755,7 @@ module Google
19539
19755
  @instances = args[:instances] if args.key?(:instances)
19540
19756
  @name = args[:name] if args.key?(:name)
19541
19757
  @node_type = args[:node_type] if args.key?(:node_type)
19758
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
19542
19759
  @server_binding = args[:server_binding] if args.key?(:server_binding)
19543
19760
  @server_id = args[:server_id] if args.key?(:server_id)
19544
19761
  @status = args[:status] if args.key?(:status)
@@ -24573,6 +24790,12 @@ module Google
24573
24790
  # @return [String]
24574
24791
  attr_accessor :name
24575
24792
 
24793
+ # [Output Only] Reserved for future use.
24794
+ # Corresponds to the JSON property `satisfiesPzs`
24795
+ # @return [Boolean]
24796
+ attr_accessor :satisfies_pzs
24797
+ alias_method :satisfies_pzs?, :satisfies_pzs
24798
+
24576
24799
  # [Output Only] Server-defined fully-qualified URL for this resource.
24577
24800
  # Corresponds to the JSON property `selfLink`
24578
24801
  # @return [String]
@@ -24614,6 +24837,7 @@ module Google
24614
24837
  @id = args[:id] if args.key?(:id)
24615
24838
  @kind = args[:kind] if args.key?(:kind)
24616
24839
  @name = args[:name] if args.key?(:name)
24840
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
24617
24841
  @self_link = args[:self_link] if args.key?(:self_link)
24618
24842
  @specific_reservation = args[:specific_reservation] if args.key?(:specific_reservation)
24619
24843
  @specific_reservation_required = args[:specific_reservation_required] if args.key?(:specific_reservation_required)
@@ -25187,6 +25411,12 @@ module Google
25187
25411
  # @return [Fixnum]
25188
25412
  attr_accessor :id
25189
25413
 
25414
+ # An InstanceSchedulePolicy specifies when and how frequent certain operations
25415
+ # are performed on the instance.
25416
+ # Corresponds to the JSON property `instanceSchedulePolicy`
25417
+ # @return [Google::Apis::ComputeV1::ResourcePolicyInstanceSchedulePolicy]
25418
+ attr_accessor :instance_schedule_policy
25419
+
25190
25420
  # [Output Only] Type of the resource. Always compute#resource_policies for
25191
25421
  # resource policies.
25192
25422
  # Corresponds to the JSON property `kind`
@@ -25209,6 +25439,13 @@ module Google
25209
25439
  # @return [String]
25210
25440
  attr_accessor :region
25211
25441
 
25442
+ # Contains output only fields. Use this sub-message for all output fields set on
25443
+ # ResourcePolicy. The internal structure of this "status" field should mimic the
25444
+ # structure of ResourcePolicy proto specification.
25445
+ # Corresponds to the JSON property `resourceStatus`
25446
+ # @return [Google::Apis::ComputeV1::ResourcePolicyResourceStatus]
25447
+ attr_accessor :resource_status
25448
+
25212
25449
  # [Output Only] Server-defined fully-qualified URL for this resource.
25213
25450
  # Corresponds to the JSON property `selfLink`
25214
25451
  # @return [String]
@@ -25236,9 +25473,11 @@ module Google
25236
25473
  @description = args[:description] if args.key?(:description)
25237
25474
  @group_placement_policy = args[:group_placement_policy] if args.key?(:group_placement_policy)
25238
25475
  @id = args[:id] if args.key?(:id)
25476
+ @instance_schedule_policy = args[:instance_schedule_policy] if args.key?(:instance_schedule_policy)
25239
25477
  @kind = args[:kind] if args.key?(:kind)
25240
25478
  @name = args[:name] if args.key?(:name)
25241
25479
  @region = args[:region] if args.key?(:region)
25480
+ @resource_status = args[:resource_status] if args.key?(:resource_status)
25242
25481
  @self_link = args[:self_link] if args.key?(:self_link)
25243
25482
  @snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
25244
25483
  @status = args[:status] if args.key?(:status)
@@ -25477,6 +25716,71 @@ module Google
25477
25716
  end
25478
25717
  end
25479
25718
 
25719
+ # An InstanceSchedulePolicy specifies when and how frequent certain operations
25720
+ # are performed on the instance.
25721
+ class ResourcePolicyInstanceSchedulePolicy
25722
+ include Google::Apis::Core::Hashable
25723
+
25724
+ # The expiration time of the schedule. The timestamp is an RFC3339 string.
25725
+ # Corresponds to the JSON property `expirationTime`
25726
+ # @return [String]
25727
+ attr_accessor :expiration_time
25728
+
25729
+ # The start time of the schedule. The timestamp is an RFC3339 string.
25730
+ # Corresponds to the JSON property `startTime`
25731
+ # @return [String]
25732
+ attr_accessor :start_time
25733
+
25734
+ # Specifies the time zone to be used in interpreting Schedule.schedule. The
25735
+ # value of this field must be a time zone name from the tz database: http://en.
25736
+ # wikipedia.org/wiki/Tz_database.
25737
+ # Corresponds to the JSON property `timeZone`
25738
+ # @return [String]
25739
+ attr_accessor :time_zone
25740
+
25741
+ # Schedule for an instance operation.
25742
+ # Corresponds to the JSON property `vmStartSchedule`
25743
+ # @return [Google::Apis::ComputeV1::ResourcePolicyInstanceSchedulePolicySchedule]
25744
+ attr_accessor :vm_start_schedule
25745
+
25746
+ # Schedule for an instance operation.
25747
+ # Corresponds to the JSON property `vmStopSchedule`
25748
+ # @return [Google::Apis::ComputeV1::ResourcePolicyInstanceSchedulePolicySchedule]
25749
+ attr_accessor :vm_stop_schedule
25750
+
25751
+ def initialize(**args)
25752
+ update!(**args)
25753
+ end
25754
+
25755
+ # Update properties of this object
25756
+ def update!(**args)
25757
+ @expiration_time = args[:expiration_time] if args.key?(:expiration_time)
25758
+ @start_time = args[:start_time] if args.key?(:start_time)
25759
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
25760
+ @vm_start_schedule = args[:vm_start_schedule] if args.key?(:vm_start_schedule)
25761
+ @vm_stop_schedule = args[:vm_stop_schedule] if args.key?(:vm_stop_schedule)
25762
+ end
25763
+ end
25764
+
25765
+ # Schedule for an instance operation.
25766
+ class ResourcePolicyInstanceSchedulePolicySchedule
25767
+ include Google::Apis::Core::Hashable
25768
+
25769
+ # Specifies the frequency for the operation, using the unix-cron format.
25770
+ # Corresponds to the JSON property `schedule`
25771
+ # @return [String]
25772
+ attr_accessor :schedule
25773
+
25774
+ def initialize(**args)
25775
+ update!(**args)
25776
+ end
25777
+
25778
+ # Update properties of this object
25779
+ def update!(**args)
25780
+ @schedule = args[:schedule] if args.key?(:schedule)
25781
+ end
25782
+ end
25783
+
25480
25784
  #
25481
25785
  class ResourcePolicyList
25482
25786
  include Google::Apis::Core::Hashable
@@ -25602,6 +25906,56 @@ module Google
25602
25906
  end
25603
25907
  end
25604
25908
 
25909
+ # Contains output only fields. Use this sub-message for all output fields set on
25910
+ # ResourcePolicy. The internal structure of this "status" field should mimic the
25911
+ # structure of ResourcePolicy proto specification.
25912
+ class ResourcePolicyResourceStatus
25913
+ include Google::Apis::Core::Hashable
25914
+
25915
+ # [Output Only] Specifies a set of output values reffering to the
25916
+ # instance_schedule_policy system status. This field should have the same name
25917
+ # as corresponding policy field.
25918
+ # Corresponds to the JSON property `instanceSchedulePolicy`
25919
+ # @return [Google::Apis::ComputeV1::ResourcePolicyResourceStatusInstanceSchedulePolicyStatus]
25920
+ attr_accessor :instance_schedule_policy
25921
+
25922
+ def initialize(**args)
25923
+ update!(**args)
25924
+ end
25925
+
25926
+ # Update properties of this object
25927
+ def update!(**args)
25928
+ @instance_schedule_policy = args[:instance_schedule_policy] if args.key?(:instance_schedule_policy)
25929
+ end
25930
+ end
25931
+
25932
+ #
25933
+ class ResourcePolicyResourceStatusInstanceSchedulePolicyStatus
25934
+ include Google::Apis::Core::Hashable
25935
+
25936
+ # [Output Only] The last time the schedule successfully ran. The timestamp is an
25937
+ # RFC3339 string.
25938
+ # Corresponds to the JSON property `lastRunStartTime`
25939
+ # @return [String]
25940
+ attr_accessor :last_run_start_time
25941
+
25942
+ # [Output Only] The next time the schedule is planned to run. The actual time
25943
+ # might be slightly different. The timestamp is an RFC3339 string.
25944
+ # Corresponds to the JSON property `nextRunStartTime`
25945
+ # @return [String]
25946
+ attr_accessor :next_run_start_time
25947
+
25948
+ def initialize(**args)
25949
+ update!(**args)
25950
+ end
25951
+
25952
+ # Update properties of this object
25953
+ def update!(**args)
25954
+ @last_run_start_time = args[:last_run_start_time] if args.key?(:last_run_start_time)
25955
+ @next_run_start_time = args[:next_run_start_time] if args.key?(:next_run_start_time)
25956
+ end
25957
+ end
25958
+
25605
25959
  # A snapshot schedule policy specifies when and how frequently snapshots are to
25606
25960
  # be created for the target disk. Also specifies how many and how long these
25607
25961
  # scheduled snapshots should be retained.
@@ -27321,7 +27675,7 @@ module Google
27321
27675
  end
27322
27676
  end
27323
27677
 
27324
- # Sets the scheduling options for an Instance. NextID: 13
27678
+ # Sets the scheduling options for an Instance. NextID: 17
27325
27679
  class Scheduling
27326
27680
  include Google::Apis::Core::Hashable
27327
27681
 
@@ -32596,6 +32950,19 @@ module Google
32596
32950
  # @return [String]
32597
32951
  attr_accessor :name
32598
32952
 
32953
+ # This field only applies when the forwarding rule that references this target
32954
+ # proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.
32955
+ # When this field is set to true, Envoy proxies set up inbound traffic
32956
+ # interception and bind to the IP address and port specified in the forwarding
32957
+ # rule. This is generally useful when using Traffic Director to configure Envoy
32958
+ # as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy
32959
+ # proxy listens for inbound requests and handles requests when it receives them.
32960
+ # The default is false.
32961
+ # Corresponds to the JSON property `proxyBind`
32962
+ # @return [Boolean]
32963
+ attr_accessor :proxy_bind
32964
+ alias_method :proxy_bind?, :proxy_bind
32965
+
32599
32966
  # Specifies the type of proxy header to append before sending data to the
32600
32967
  # backend, either NONE or PROXY_V1. The default is NONE.
32601
32968
  # Corresponds to the JSON property `proxyHeader`
@@ -32623,6 +32990,7 @@ module Google
32623
32990
  @id = args[:id] if args.key?(:id)
32624
32991
  @kind = args[:kind] if args.key?(:kind)
32625
32992
  @name = args[:name] if args.key?(:name)
32993
+ @proxy_bind = args[:proxy_bind] if args.key?(:proxy_bind)
32626
32994
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
32627
32995
  @self_link = args[:self_link] if args.key?(:self_link)
32628
32996
  @service = args[:service] if args.key?(:service)