From a587ed8ee8be527d2f54f771d0e6234fb05b8c87 Mon Sep 17 00:00:00 2001 From: Google APIs Date: Fri, 1 Dec 2017 00:36:08 +0000 Subject: [PATCH] Autogenerated update (2017-12-01) Update: - compute_alpha - compute_v1 - monitoring_v3 - youtube_partner_v1 --- api_names_out.yaml | 138 ++++ generated/google/apis/compute_alpha.rb | 2 +- .../google/apis/compute_alpha/classes.rb | 771 ++++++++++++++++-- .../apis/compute_alpha/representations.rb | 284 ++++++- .../google/apis/compute_alpha/service.rb | 617 +++++++++++++- generated/google/apis/compute_v1.rb | 2 +- generated/google/apis/compute_v1/classes.rb | 91 ++- generated/google/apis/compute_v1/service.rb | 12 +- .../google/apis/container_v1beta1/classes.rb | 17 + .../apis/container_v1beta1/representations.rb | 1 + generated/google/apis/monitoring_v3.rb | 2 +- .../google/apis/monitoring_v3/classes.rb | 11 +- .../apis/monitoring_v3/representations.rb | 1 + generated/google/apis/youtube_partner_v1.rb | 2 +- 14 files changed, 1839 insertions(+), 112 deletions(-) diff --git a/api_names_out.yaml b/api_names_out.yaml index 3d119c951..e35f56743 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -15683,6 +15683,10 @@ "/compute:alpha/CustomerEncryptionKeyProtectedDisk": customer_encryption_key_protected_disk "/compute:alpha/CustomerEncryptionKeyProtectedDisk/diskEncryptionKey": disk_encryption_key "/compute:alpha/CustomerEncryptionKeyProtectedDisk/source": source +"/compute:alpha/DailyMaintenanceWindow": daily_maintenance_window +"/compute:alpha/DailyMaintenanceWindow/daysInCycle": days_in_cycle +"/compute:alpha/DailyMaintenanceWindow/duration": duration +"/compute:alpha/DailyMaintenanceWindow/startTime": start_time "/compute:alpha/DeprecationStatus": deprecation_status "/compute:alpha/DeprecationStatus/deleted": deleted "/compute:alpha/DeprecationStatus/deprecated": deprecated @@ -16140,6 +16144,10 @@ "/compute:alpha/HostsScopedList/warning/data/datum/key": key "/compute:alpha/HostsScopedList/warning/data/datum/value": value "/compute:alpha/HostsScopedList/warning/message": message +"/compute:alpha/HourlyMaintenanceWindow": hourly_maintenance_window +"/compute:alpha/HourlyMaintenanceWindow/duration": duration +"/compute:alpha/HourlyMaintenanceWindow/hoursInCycle": hours_in_cycle +"/compute:alpha/HourlyMaintenanceWindow/startTime": start_time "/compute:alpha/HttpHealthCheck": http_health_check "/compute:alpha/HttpHealthCheck/checkIntervalSec": check_interval_sec "/compute:alpha/HttpHealthCheck/creationTimestamp": creation_timestamp @@ -16227,6 +16235,9 @@ "/compute:alpha/Image/sourceImage": source_image "/compute:alpha/Image/sourceImageEncryptionKey": source_image_encryption_key "/compute:alpha/Image/sourceImageId": source_image_id +"/compute:alpha/Image/sourceSnapshot": source_snapshot +"/compute:alpha/Image/sourceSnapshotEncryptionKey": source_snapshot_encryption_key +"/compute:alpha/Image/sourceSnapshotId": source_snapshot_id "/compute:alpha/Image/sourceType": source_type "/compute:alpha/Image/status": status "/compute:alpha/ImageList": image_list @@ -16272,6 +16283,7 @@ "/compute:alpha/Instance/selfLink": self_link "/compute:alpha/Instance/serviceAccounts": service_accounts "/compute:alpha/Instance/serviceAccounts/service_account": service_account +"/compute:alpha/Instance/shieldedVmConfig": shielded_vm_config "/compute:alpha/Instance/startRestricted": start_restricted "/compute:alpha/Instance/status": status "/compute:alpha/Instance/statusMessage": status_message @@ -16400,6 +16412,7 @@ "/compute:alpha/InstanceGroupManagerAutoHealingPolicy/healthCheck": health_check "/compute:alpha/InstanceGroupManagerAutoHealingPolicy/initialDelaySec": initial_delay_sec "/compute:alpha/InstanceGroupManagerAutoHealingPolicy/maxUnavailable": max_unavailable +"/compute:alpha/InstanceGroupManagerAutoHealingPolicy/mode": mode "/compute:alpha/InstanceGroupManagerList": instance_group_manager_list "/compute:alpha/InstanceGroupManagerList/id": id "/compute:alpha/InstanceGroupManagerList/items": items @@ -16608,6 +16621,12 @@ "/compute:alpha/InstanceWithNamedPorts/namedPorts": named_ports "/compute:alpha/InstanceWithNamedPorts/namedPorts/named_port": named_port "/compute:alpha/InstanceWithNamedPorts/status": status +"/compute:alpha/InstancesAddMaintenancePoliciesRequest": instances_add_maintenance_policies_request +"/compute:alpha/InstancesAddMaintenancePoliciesRequest/maintenancePolicies": maintenance_policies +"/compute:alpha/InstancesAddMaintenancePoliciesRequest/maintenancePolicies/maintenance_policy": maintenance_policy +"/compute:alpha/InstancesRemoveMaintenancePoliciesRequest": instances_remove_maintenance_policies_request +"/compute:alpha/InstancesRemoveMaintenancePoliciesRequest/maintenancePolicies": maintenance_policies +"/compute:alpha/InstancesRemoveMaintenancePoliciesRequest/maintenancePolicies/maintenance_policy": maintenance_policy "/compute:alpha/InstancesScopedList": instances_scoped_list "/compute:alpha/InstancesScopedList/instances": instances "/compute:alpha/InstancesScopedList/instances/instance": instance @@ -16664,6 +16683,11 @@ "/compute:alpha/Interconnect/requestedLinkCount": requested_link_count "/compute:alpha/Interconnect/selfLink": self_link "/compute:alpha/InterconnectAttachment": interconnect_attachment +"/compute:alpha/InterconnectAttachment/adminEnabled": admin_enabled +"/compute:alpha/InterconnectAttachment/availabilityZone": availability_zone +"/compute:alpha/InterconnectAttachment/bandwidth": bandwidth +"/compute:alpha/InterconnectAttachment/candidateSubnets": candidate_subnets +"/compute:alpha/InterconnectAttachment/candidateSubnets/candidate_subnet": candidate_subnet "/compute:alpha/InterconnectAttachment/cloudRouterIpAddress": cloud_router_ip_address "/compute:alpha/InterconnectAttachment/creationTimestamp": creation_timestamp "/compute:alpha/InterconnectAttachment/customerRouterIpAddress": customer_router_ip_address @@ -16674,10 +16698,14 @@ "/compute:alpha/InterconnectAttachment/kind": kind "/compute:alpha/InterconnectAttachment/name": name "/compute:alpha/InterconnectAttachment/operationalStatus": operational_status +"/compute:alpha/InterconnectAttachment/pairingKey": pairing_key "/compute:alpha/InterconnectAttachment/privateInterconnectInfo": private_interconnect_info "/compute:alpha/InterconnectAttachment/region": region "/compute:alpha/InterconnectAttachment/router": router "/compute:alpha/InterconnectAttachment/selfLink": self_link +"/compute:alpha/InterconnectAttachment/state": state +"/compute:alpha/InterconnectAttachment/type": type +"/compute:alpha/InterconnectAttachment/vlanTag8021q": vlan_tag8021q "/compute:alpha/InterconnectAttachmentAggregatedList": interconnect_attachment_aggregated_list "/compute:alpha/InterconnectAttachmentAggregatedList/id": id "/compute:alpha/InterconnectAttachmentAggregatedList/items": items @@ -16905,6 +16933,56 @@ "/compute:alpha/MachineTypesScopedList/warning/data/datum/key": key "/compute:alpha/MachineTypesScopedList/warning/data/datum/value": value "/compute:alpha/MachineTypesScopedList/warning/message": message +"/compute:alpha/MaintenancePoliciesList": maintenance_policies_list +"/compute:alpha/MaintenancePoliciesList/id": id +"/compute:alpha/MaintenancePoliciesList/items": items +"/compute:alpha/MaintenancePoliciesList/items/item": item +"/compute:alpha/MaintenancePoliciesList/kind": kind +"/compute:alpha/MaintenancePoliciesList/nextPageToken": next_page_token +"/compute:alpha/MaintenancePoliciesList/selfLink": self_link +"/compute:alpha/MaintenancePoliciesList/warning": warning +"/compute:alpha/MaintenancePoliciesList/warning/code": code +"/compute:alpha/MaintenancePoliciesList/warning/data": data +"/compute:alpha/MaintenancePoliciesList/warning/data/datum": datum +"/compute:alpha/MaintenancePoliciesList/warning/data/datum/key": key +"/compute:alpha/MaintenancePoliciesList/warning/data/datum/value": value +"/compute:alpha/MaintenancePoliciesList/warning/message": message +"/compute:alpha/MaintenancePoliciesScopedList": maintenance_policies_scoped_list +"/compute:alpha/MaintenancePoliciesScopedList/maintenancePolicies": maintenance_policies +"/compute:alpha/MaintenancePoliciesScopedList/maintenancePolicies/maintenance_policy": maintenance_policy +"/compute:alpha/MaintenancePoliciesScopedList/warning": warning +"/compute:alpha/MaintenancePoliciesScopedList/warning/code": code +"/compute:alpha/MaintenancePoliciesScopedList/warning/data": data +"/compute:alpha/MaintenancePoliciesScopedList/warning/data/datum": datum +"/compute:alpha/MaintenancePoliciesScopedList/warning/data/datum/key": key +"/compute:alpha/MaintenancePoliciesScopedList/warning/data/datum/value": value +"/compute:alpha/MaintenancePoliciesScopedList/warning/message": message +"/compute:alpha/MaintenancePolicy": maintenance_policy +"/compute:alpha/MaintenancePolicy/creationTimestamp": creation_timestamp +"/compute:alpha/MaintenancePolicy/description": description +"/compute:alpha/MaintenancePolicy/id": id +"/compute:alpha/MaintenancePolicy/kind": kind +"/compute:alpha/MaintenancePolicy/name": name +"/compute:alpha/MaintenancePolicy/region": region +"/compute:alpha/MaintenancePolicy/selfLink": self_link +"/compute:alpha/MaintenancePolicy/vmMaintenancePolicy": vm_maintenance_policy +"/compute:alpha/MaintenancePolicyAggregatedList": maintenance_policy_aggregated_list +"/compute:alpha/MaintenancePolicyAggregatedList/id": id +"/compute:alpha/MaintenancePolicyAggregatedList/items": items +"/compute:alpha/MaintenancePolicyAggregatedList/items/item": item +"/compute:alpha/MaintenancePolicyAggregatedList/kind": kind +"/compute:alpha/MaintenancePolicyAggregatedList/nextPageToken": next_page_token +"/compute:alpha/MaintenancePolicyAggregatedList/selfLink": self_link +"/compute:alpha/MaintenancePolicyAggregatedList/warning": warning +"/compute:alpha/MaintenancePolicyAggregatedList/warning/code": code +"/compute:alpha/MaintenancePolicyAggregatedList/warning/data": data +"/compute:alpha/MaintenancePolicyAggregatedList/warning/data/datum": datum +"/compute:alpha/MaintenancePolicyAggregatedList/warning/data/datum/key": key +"/compute:alpha/MaintenancePolicyAggregatedList/warning/data/datum/value": value +"/compute:alpha/MaintenancePolicyAggregatedList/warning/message": message +"/compute:alpha/MaintenanceWindow": maintenance_window +"/compute:alpha/MaintenanceWindow/dailyMaintenanceWindow": daily_maintenance_window +"/compute:alpha/MaintenanceWindow/hourlyMaintenanceWindow": hourly_maintenance_window "/compute:alpha/ManagedInstance": managed_instance "/compute:alpha/ManagedInstance/currentAction": current_action "/compute:alpha/ManagedInstance/id": id @@ -17650,6 +17728,9 @@ "/compute:alpha/ServiceAccount/email": email "/compute:alpha/ServiceAccount/scopes": scopes "/compute:alpha/ServiceAccount/scopes/scope": scope +"/compute:alpha/ShieldedVmConfig": shielded_vm_config +"/compute:alpha/ShieldedVmConfig/enableSecureBoot": enable_secure_boot +"/compute:alpha/ShieldedVmConfig/enableVtpm": enable_vtpm "/compute:alpha/SignedUrlKey": signed_url_key "/compute:alpha/SignedUrlKey/keyName": key_name "/compute:alpha/SignedUrlKey/keyValue": key_value @@ -18210,6 +18291,8 @@ "/compute:alpha/UsageExportLocation": usage_export_location "/compute:alpha/UsageExportLocation/bucketName": bucket_name "/compute:alpha/UsageExportLocation/reportNamePrefix": report_name_prefix +"/compute:alpha/VmMaintenancePolicy": vm_maintenance_policy +"/compute:alpha/VmMaintenancePolicy/maintenanceWindow": maintenance_window "/compute:alpha/VpnTunnel": vpn_tunnel "/compute:alpha/VpnTunnel/creationTimestamp": creation_timestamp "/compute:alpha/VpnTunnel/description": description @@ -19078,6 +19161,11 @@ "/compute:alpha/compute.instances.addAccessConfig/project": project "/compute:alpha/compute.instances.addAccessConfig/requestId": request_id "/compute:alpha/compute.instances.addAccessConfig/zone": zone +"/compute:alpha/compute.instances.addMaintenancePolicies": add_instance_maintenance_policies +"/compute:alpha/compute.instances.addMaintenancePolicies/instance": instance +"/compute:alpha/compute.instances.addMaintenancePolicies/project": project +"/compute:alpha/compute.instances.addMaintenancePolicies/requestId": request_id +"/compute:alpha/compute.instances.addMaintenancePolicies/zone": zone "/compute:alpha/compute.instances.aggregatedList": aggregated_instance_list "/compute:alpha/compute.instances.aggregatedList/filter": filter "/compute:alpha/compute.instances.aggregatedList/maxResults": max_results @@ -19147,6 +19235,11 @@ "/compute:alpha/compute.instances.listReferrers/pageToken": page_token "/compute:alpha/compute.instances.listReferrers/project": project "/compute:alpha/compute.instances.listReferrers/zone": zone +"/compute:alpha/compute.instances.removeMaintenancePolicies": remove_instance_maintenance_policies +"/compute:alpha/compute.instances.removeMaintenancePolicies/instance": instance +"/compute:alpha/compute.instances.removeMaintenancePolicies/project": project +"/compute:alpha/compute.instances.removeMaintenancePolicies/requestId": request_id +"/compute:alpha/compute.instances.removeMaintenancePolicies/zone": zone "/compute:alpha/compute.instances.reset": reset_instance "/compute:alpha/compute.instances.reset/instance": instance "/compute:alpha/compute.instances.reset/project": project @@ -19251,6 +19344,11 @@ "/compute:alpha/compute.instances.updateNetworkInterface/project": project "/compute:alpha/compute.instances.updateNetworkInterface/requestId": request_id "/compute:alpha/compute.instances.updateNetworkInterface/zone": zone +"/compute:alpha/compute.instances.updateShieldedVmConfig": update_instance_shielded_vm_config +"/compute:alpha/compute.instances.updateShieldedVmConfig/instance": instance +"/compute:alpha/compute.instances.updateShieldedVmConfig/project": project +"/compute:alpha/compute.instances.updateShieldedVmConfig/requestId": request_id +"/compute:alpha/compute.instances.updateShieldedVmConfig/zone": zone "/compute:alpha/compute.interconnectAttachments.aggregatedList": aggregated_interconnect_attachment_list "/compute:alpha/compute.interconnectAttachments.aggregatedList/filter": filter "/compute:alpha/compute.interconnectAttachments.aggregatedList/maxResults": max_results @@ -19384,6 +19482,44 @@ "/compute:alpha/compute.machineTypes.list/pageToken": page_token "/compute:alpha/compute.machineTypes.list/project": project "/compute:alpha/compute.machineTypes.list/zone": zone +"/compute:alpha/compute.maintenancePolicies.aggregatedList": aggregated_maintenance_policy_list +"/compute:alpha/compute.maintenancePolicies.aggregatedList/filter": filter +"/compute:alpha/compute.maintenancePolicies.aggregatedList/maxResults": max_results +"/compute:alpha/compute.maintenancePolicies.aggregatedList/orderBy": order_by +"/compute:alpha/compute.maintenancePolicies.aggregatedList/pageToken": page_token +"/compute:alpha/compute.maintenancePolicies.aggregatedList/project": project +"/compute:alpha/compute.maintenancePolicies.delete": delete_maintenance_policy +"/compute:alpha/compute.maintenancePolicies.delete/maintenancePolicy": maintenance_policy +"/compute:alpha/compute.maintenancePolicies.delete/project": project +"/compute:alpha/compute.maintenancePolicies.delete/region": region +"/compute:alpha/compute.maintenancePolicies.delete/requestId": request_id +"/compute:alpha/compute.maintenancePolicies.get": get_maintenance_policy +"/compute:alpha/compute.maintenancePolicies.get/maintenancePolicy": maintenance_policy +"/compute:alpha/compute.maintenancePolicies.get/project": project +"/compute:alpha/compute.maintenancePolicies.get/region": region +"/compute:alpha/compute.maintenancePolicies.getIamPolicy": get_maintenance_policy_iam_policy +"/compute:alpha/compute.maintenancePolicies.getIamPolicy/project": project +"/compute:alpha/compute.maintenancePolicies.getIamPolicy/region": region +"/compute:alpha/compute.maintenancePolicies.getIamPolicy/resource": resource +"/compute:alpha/compute.maintenancePolicies.insert": insert_maintenance_policy +"/compute:alpha/compute.maintenancePolicies.insert/project": project +"/compute:alpha/compute.maintenancePolicies.insert/region": region +"/compute:alpha/compute.maintenancePolicies.insert/requestId": request_id +"/compute:alpha/compute.maintenancePolicies.list": list_maintenance_policies +"/compute:alpha/compute.maintenancePolicies.list/filter": filter +"/compute:alpha/compute.maintenancePolicies.list/maxResults": max_results +"/compute:alpha/compute.maintenancePolicies.list/orderBy": order_by +"/compute:alpha/compute.maintenancePolicies.list/pageToken": page_token +"/compute:alpha/compute.maintenancePolicies.list/project": project +"/compute:alpha/compute.maintenancePolicies.list/region": region +"/compute:alpha/compute.maintenancePolicies.setIamPolicy": set_maintenance_policy_iam_policy +"/compute:alpha/compute.maintenancePolicies.setIamPolicy/project": project +"/compute:alpha/compute.maintenancePolicies.setIamPolicy/region": region +"/compute:alpha/compute.maintenancePolicies.setIamPolicy/resource": resource +"/compute:alpha/compute.maintenancePolicies.testIamPermissions": test_maintenance_policy_iam_permissions +"/compute:alpha/compute.maintenancePolicies.testIamPermissions/project": project +"/compute:alpha/compute.maintenancePolicies.testIamPermissions/region": region +"/compute:alpha/compute.maintenancePolicies.testIamPermissions/resource": resource "/compute:alpha/compute.networkEndpointGroups.aggregatedList": aggregated_network_endpoint_group_list "/compute:alpha/compute.networkEndpointGroups.aggregatedList/filter": filter "/compute:alpha/compute.networkEndpointGroups.aggregatedList/maxResults": max_results @@ -28919,6 +29055,7 @@ "/container:v1beta1/HttpLoadBalancing": http_load_balancing "/container:v1beta1/HttpLoadBalancing/disabled": disabled "/container:v1beta1/IPAllocationPolicy": ip_allocation_policy +"/container:v1beta1/IPAllocationPolicy/allowRouteOverlap": allow_route_overlap "/container:v1beta1/IPAllocationPolicy/clusterIpv4Cidr": cluster_ipv4_cidr "/container:v1beta1/IPAllocationPolicy/clusterIpv4CidrBlock": cluster_ipv4_cidr_block "/container:v1beta1/IPAllocationPolicy/clusterSecondaryRangeName": cluster_secondary_range_name @@ -51764,6 +51901,7 @@ "/monitoring:v3/UptimeCheckConfig/httpCheck": http_check "/monitoring:v3/UptimeCheckConfig/internalCheckers": internal_checkers "/monitoring:v3/UptimeCheckConfig/internalCheckers/internal_checker": internal_checker +"/monitoring:v3/UptimeCheckConfig/isInternal": is_internal "/monitoring:v3/UptimeCheckConfig/monitoredResource": monitored_resource "/monitoring:v3/UptimeCheckConfig/name": name "/monitoring:v3/UptimeCheckConfig/period": period diff --git a/generated/google/apis/compute_alpha.rb b/generated/google/apis/compute_alpha.rb index 164721ad9..f91d7553f 100644 --- a/generated/google/apis/compute_alpha.rb +++ b/generated/google/apis/compute_alpha.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/compute/docs/reference/latest/ module ComputeAlpha VERSION = 'Alpha' - REVISION = '20171114' + REVISION = '20171127' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/compute_alpha/classes.rb b/generated/google/apis/compute_alpha/classes.rb index 828c850c9..c576c632d 100644 --- a/generated/google/apis/compute_alpha/classes.rb +++ b/generated/google/apis/compute_alpha/classes.rb @@ -541,7 +541,8 @@ module Google # @return [String] attr_accessor :address - # The type of address to reserve. If unspecified, defaults to EXTERNAL. + # The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, + # defaults to EXTERNAL. # Corresponds to the JSON property `addressType` # @return [String] attr_accessor :address_type @@ -1193,13 +1194,13 @@ module Google # projects/debian-cloud/global/images/family/debian-8 # Alternatively, use a specific version of a public operating system image: # projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD - # To create a disk with a private image that you created, specify the image name + # To create a disk with a custom image that you created, specify the image name # in the following format: - # global/images/my-private-image - # You can also specify a private image by its image family, which returns the + # global/images/my-custom-image + # You can also specify a custom image by its image family, which returns the # latest version of the image in that family. Replace the image name with family/ # family-name: - # global/images/family/my-private-family + # global/images/family/my-image-family # If the source image is deleted later, this field will not be set. # Corresponds to the JSON property `sourceImage` # @return [String] @@ -3874,6 +3875,39 @@ module Google end end + # Time window specified for daily maintenance operations. + class DailyMaintenanceWindow + include Google::Apis::Core::Hashable + + # Allows to define schedule that runs every nth day of the month. + # Corresponds to the JSON property `daysInCycle` + # @return [Fixnum] + attr_accessor :days_in_cycle + + # [Output only] Duration of the time window, automatically chosen to be smallest + # possible in the given scenario. + # Corresponds to the JSON property `duration` + # @return [String] + attr_accessor :duration + + # Time within the maintenance window to start the maintenance operations. It + # must be in format "HH:MM?, where HH : [00-23] and MM : [00-59] GMT. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @days_in_cycle = args[:days_in_cycle] if args.key?(:days_in_cycle) + @duration = args[:duration] if args.key?(:duration) + @start_time = args[:start_time] if args.key?(:start_time) + end + end + # Deprecation status for a public resource. class DeprecationStatus include Google::Apis::Core::Hashable @@ -4068,13 +4102,13 @@ module Google # projects/debian-cloud/global/images/family/debian-8 # Alternatively, use a specific version of a public operating system image: # projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD - # To create a disk with a private image that you created, specify the image name + # To create a disk with a custom image that you created, specify the image name # in the following format: - # global/images/my-private-image - # You can also specify a private image by its image family, which returns the + # global/images/my-custom-image + # You can also specify a custom image by its image family, which returns the # latest version of the image in that family. Replace the image name with family/ # family-name: - # global/images/family/my-private-family + # global/images/family/my-image-family # Corresponds to the JSON property `sourceImage` # @return [String] attr_accessor :source_image @@ -7664,6 +7698,39 @@ module Google end end + # Time window specified for hourly maintenance operations. + class HourlyMaintenanceWindow + include Google::Apis::Core::Hashable + + # [Output only] Duration of the time window, automatically chosen to be smallest + # possible in the given scenario. + # Corresponds to the JSON property `duration` + # @return [String] + attr_accessor :duration + + # Allows to define schedule that runs every nth hour. + # Corresponds to the JSON property `hoursInCycle` + # @return [Fixnum] + attr_accessor :hours_in_cycle + + # Time within the maintenance window to start the maintenance operations. It + # must be in format "HH:MM?, where HH : [00-23] and MM : [00-59] GMT. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @duration = args[:duration] if args.key?(:duration) + @hours_in_cycle = args[:hours_in_cycle] if args.key?(:hours_in_cycle) + @start_time = args[:start_time] if args.key?(:start_time) + end + end + # An HttpHealthCheck resource. This resource defines a template for how # individual instances should be checked for health, via HTTP. class HttpHealthCheck @@ -8267,6 +8334,28 @@ module Google # @return [String] attr_accessor :source_image_id + # URL of the source snapshot used to create this image. This can be a full or + # valid partial URL. You must provide exactly one of: + # - this property, or + # - the sourceImage property, or + # - the rawDisk.source property, or + # - the sourceDisk property in order to create an image. + # Corresponds to the JSON property `sourceSnapshot` + # @return [String] + attr_accessor :source_snapshot + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `sourceSnapshotEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :source_snapshot_encryption_key + + # [Output Only] The ID value of the snapshot used to create this image. This + # value may be used to determine whether the snapshot was taken from the current + # or a previous instance of a given snapshot name. + # Corresponds to the JSON property `sourceSnapshotId` + # @return [String] + attr_accessor :source_snapshot_id + # The type of the image used to create this disk. The default and only value is # RAW # Corresponds to the JSON property `sourceType` @@ -8310,6 +8399,9 @@ module Google @source_image = args[:source_image] if args.key?(:source_image) @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key) @source_image_id = args[:source_image_id] if args.key?(:source_image_id) + @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot) + @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key) + @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id) @source_type = args[:source_type] if args.key?(:source_type) @status = args[:status] if args.key?(:status) end @@ -8625,6 +8717,11 @@ module Google # @return [Array] attr_accessor :service_accounts + # A set of Shielded VM options. + # Corresponds to the JSON property `shieldedVmConfig` + # @return [Google::Apis::ComputeAlpha::ShieldedVmConfig] + attr_accessor :shielded_vm_config + # [Output Only] Whether a VM has been restricted for start because Compute # Engine has detected suspicious activity. # Corresponds to the JSON property `startRestricted` @@ -8682,6 +8779,7 @@ module Google @scheduling = args[:scheduling] if args.key?(:scheduling) @self_link = args[:self_link] if args.key?(:self_link) @service_accounts = args[:service_accounts] if args.key?(:service_accounts) + @shielded_vm_config = args[:shielded_vm_config] if args.key?(:shielded_vm_config) @start_restricted = args[:start_restricted] if args.key?(:start_restricted) @status = args[:status] if args.key?(:status) @status_message = args[:status_message] if args.key?(:status_message) @@ -9631,6 +9729,11 @@ module Google # @return [Google::Apis::ComputeAlpha::FixedOrPercent] attr_accessor :max_unavailable + # Defines operating mode for this policy. + # Corresponds to the JSON property `mode` + # @return [String] + attr_accessor :mode + def initialize(**args) update!(**args) end @@ -9640,6 +9743,7 @@ module Google @health_check = args[:health_check] if args.key?(:health_check) @initial_delay_sec = args[:initial_delay_sec] if args.key?(:initial_delay_sec) @max_unavailable = args[:max_unavailable] if args.key?(:max_unavailable) + @mode = args[:mode] if args.key?(:mode) end end @@ -11280,6 +11384,44 @@ module Google end end + # + class InstancesAddMaintenancePoliciesRequest + include Google::Apis::Core::Hashable + + # Maintenance policies to be added to this instance. + # Corresponds to the JSON property `maintenancePolicies` + # @return [Array] + attr_accessor :maintenance_policies + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @maintenance_policies = args[:maintenance_policies] if args.key?(:maintenance_policies) + end + end + + # + class InstancesRemoveMaintenancePoliciesRequest + include Google::Apis::Core::Hashable + + # Maintenance policies to be removed from this instance. + # Corresponds to the JSON property `maintenancePolicies` + # @return [Array] + attr_accessor :maintenance_policies + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @maintenance_policies = args[:maintenance_policies] if args.key?(:maintenance_policies) + end + end + # class InstancesScopedList include Google::Apis::Core::Hashable @@ -11513,16 +11655,16 @@ module Google end end - # Protocol definitions for Mixer API to support Interconnect. Next available tag: - # 25 + # Represents an Interconnects resource. The Interconnects resource is a + # dedicated connection between Google's network and your on-premises network. + # For more information, see the Dedicated overview page. class Interconnect include Google::Apis::Core::Hashable - # Administrative status of the interconnect. When this is set to ?true?, the - # Interconnect is functional and may carry traffic (assuming there are - # functional InterconnectAttachments and other requirements are satisfied). When - # set to ?false?, no packets will be carried over this Interconnect and no BGP - # routes will be exchanged over it. By default, it is set to ?true?. + # Administrative status of the interconnect. When this is set to true, the + # Interconnect is functional and can carry traffic. When set to false, no + # packets can be carried over the interconnect and no BGP routes are exchanged + # over it. By default, the status is set to true. # Corresponds to the JSON property `adminEnabled` # @return [Boolean] attr_accessor :admin_enabled @@ -11580,7 +11722,8 @@ module Google # @return [Array] attr_accessor :interconnect_attachments - # + # Type of interconnect. Note that "IT_PRIVATE" has been deprecated in favor of " + # DEDICATED" # Corresponds to the JSON property `interconnectType` # @return [String] attr_accessor :interconnect_type @@ -11591,7 +11734,9 @@ module Google # @return [String] attr_accessor :kind - # + # Type of link requested. This field indicates speed of each of the links in the + # bundle, not the entire bundle. Only 10G per link is allowed for a dedicated + # interconnect. Options: Ethernet_10G_LR # Corresponds to the JSON property `linkType` # @return [String] attr_accessor :link_type @@ -11679,11 +11824,39 @@ module Google end end - # Protocol definitions for Mixer API to support InterconnectAttachment. Next - # available tag: 23 + # Represents an InterconnectAttachment (VLAN attachment) resource. For more + # information, see Creating VLAN Attachments. class InterconnectAttachment include Google::Apis::Core::Hashable + # Determines whether this Attachment will carry packets. Not present for + # PARTNER_PROVIDER. + # Corresponds to the JSON property `adminEnabled` + # @return [Boolean] + attr_accessor :admin_enabled + alias_method :admin_enabled?, :admin_enabled + + # + # Corresponds to the JSON property `availabilityZone` + # @return [String] + attr_accessor :availability_zone + + # + # Corresponds to the JSON property `bandwidth` + # @return [String] + attr_accessor :bandwidth + + # Up to 16 candidate prefixes that can be used to restrict the allocation of + # cloudRouterIpAddress and customerRouterIpAddress for this attachment. All + # prefixes must be within link-local address space (169.254.0.0/16) and must be / + # 29 or shorter (/28, /27, etc). Google will attempt to select an unused /29 + # from the supplied candidate prefix(es). The request will fail if all possible / + # 29s are in use on Google?s edge. If not supplied, Google will randomly select + # an unused /29 from all of link-local space. + # Corresponds to the JSON property `candidateSubnets` + # @return [Array] + attr_accessor :candidate_subnets + # [Output Only] IPv4 address + prefix length to be configured on Cloud Router # Interface for this interconnect attachment. # Corresponds to the JSON property `cloudRouterIpAddress` @@ -11701,8 +11874,7 @@ module Google # @return [String] attr_accessor :customer_router_ip_address - # An optional description of this resource. Provide this property when you - # create the resource. + # An optional description of this resource. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description @@ -11747,8 +11919,15 @@ module Google # @return [String] attr_accessor :operational_status - # Private information for an interconnect attachment when this belongs to an - # interconnect of type IT_PRIVATE. + # [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present + # for DEDICATED]. Opaque string identifying an PARTNER attachment. Of the form ? + # cloud-region/XXXXXX?. + # Corresponds to the JSON property `pairingKey` + # @return [String] + attr_accessor :pairing_key + + # Information for an interconnect attachment when this belongs to an + # interconnect of type DEDICATED. # Corresponds to the JSON property `privateInterconnectInfo` # @return [Google::Apis::ComputeAlpha::InterconnectAttachmentPrivateInfo] attr_accessor :private_interconnect_info @@ -11772,12 +11951,34 @@ module Google # @return [String] attr_accessor :self_link + # [Output Only] The current state of whether or not this interconnect attachment + # is functional. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Available only for DEDICATED and PARTNER_PROVIDER New field: VLAN. Only + # specified at creation time. This field is mapped to ieee_802_1q_tag in the + # resource proto. + # Corresponds to the JSON property `vlanTag8021q` + # @return [Fixnum] + attr_accessor :vlan_tag8021q + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled) + @availability_zone = args[:availability_zone] if args.key?(:availability_zone) + @bandwidth = args[:bandwidth] if args.key?(:bandwidth) + @candidate_subnets = args[:candidate_subnets] if args.key?(:candidate_subnets) @cloud_router_ip_address = args[:cloud_router_ip_address] if args.key?(:cloud_router_ip_address) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address) @@ -11788,10 +11989,14 @@ module Google @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @operational_status = args[:operational_status] if args.key?(:operational_status) + @pairing_key = args[:pairing_key] if args.key?(:pairing_key) @private_interconnect_info = args[:private_interconnect_info] if args.key?(:private_interconnect_info) @region = args[:region] if args.key?(:region) @router = args[:router] if args.key?(:router) @self_link = args[:self_link] if args.key?(:self_link) + @state = args[:state] if args.key?(:state) + @type = args[:type] if args.key?(:type) + @vlan_tag8021q = args[:vlan_tag8021q] if args.key?(:vlan_tag8021q) end end @@ -12032,8 +12237,8 @@ module Google end end - # Private information for an interconnect attachment when this belongs to an - # interconnect of type IT_PRIVATE. + # Information for an interconnect attachment when this belongs to an + # interconnect of type DEDICATED. class InterconnectAttachmentPrivateInfo include Google::Apis::Core::Hashable @@ -12150,8 +12355,7 @@ module Google class InterconnectCircuitInfo include Google::Apis::Core::Hashable - # Customer-side demarc ID for this circuit. This will only be set if it was - # provided by the Customer to Google during circuit turn-up. + # Customer-side demarc ID for this circuit. # Corresponds to the JSON property `customerDemarcId` # @return [String] attr_accessor :customer_demarc_id @@ -12297,7 +12501,9 @@ module Google end end - # Protocol definitions for Mixer API to support InterconnectLocation. + # Represents an InterconnectLocations resource. The InterconnectLocations + # resource describes the locations where you can connect to Google's networks. + # For more information, see Colocation Facilities. class InterconnectLocation include Google::Apis::Core::Hashable @@ -12307,22 +12513,20 @@ module Google # @return [String] attr_accessor :address - # Availability zone for this location. Within a city, maintenance will not be - # simultaneously scheduled in more than one availability zone. Example: "zone1" - # or "zone2". + # [Output Only] Availability zone for this location. Within a metropolitan area ( + # metro), maintenance will not be simultaneously scheduled in more than one + # availability zone. Example: "zone1" or "zone2". # Corresponds to the JSON property `availabilityZone` # @return [String] attr_accessor :availability_zone - # City designator used by the Interconnect UI to locate this - # InterconnectLocation within the Continent. For example: "Chicago, IL", " - # Amsterdam, Netherlands". + # [Output Only] Metropolitan area designator that indicates which city an + # interconnect is located. For example: "Chicago, IL", "Amsterdam, Netherlands". # Corresponds to the JSON property `city` # @return [String] attr_accessor :city - # Continent for this location. Used by the location picker in the Interconnect - # UI. + # [Output Only] Continent for this location. # Corresponds to the JSON property `continent` # @return [String] attr_accessor :continent @@ -12567,17 +12771,18 @@ module Google # @return [Array] attr_accessor :affected_circuits - # Short user-visible description of the purpose of the outage. + # A description about the purpose of the outage. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description - # + # Scheduled end time for the outage (milliseconds since Unix epoch). # Corresponds to the JSON property `endTime` # @return [Fixnum] attr_accessor :end_time - # + # Form this outage is expected to take. Note that the "IT_" versions of this + # enum have been deprecated in favor of the unprefixed values. # Corresponds to the JSON property `issueType` # @return [String] attr_accessor :issue_type @@ -12587,17 +12792,19 @@ module Google # @return [String] attr_accessor :name - # + # The party that generated this notification. Note that "NSRC_GOOGLE" has been + # deprecated in favor of "GOOGLE" # Corresponds to the JSON property `source` # @return [String] attr_accessor :source - # Scheduled start and end times for the outage (milliseconds since Unix epoch). + # Scheduled start time for the outage (milliseconds since Unix epoch). # Corresponds to the JSON property `startTime` # @return [Fixnum] attr_accessor :start_time - # + # State of this notification. Note that the "NS_" versions of this enum have + # been deprecated in favor of the unprefixed values. # Corresponds to the JSON property `state` # @return [String] attr_accessor :state @@ -13638,6 +13845,429 @@ module Google end end + # + class MaintenancePoliciesList + include Google::Apis::Core::Hashable + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of MaintenancePolicy resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource.Always compute#maintenancePoliciesList for + # listsof maintenancePolicies + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::MaintenancePoliciesList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class MaintenancePoliciesScopedList + include Google::Apis::Core::Hashable + + # List of maintenancePolicies contained in this scope. + # Corresponds to the JSON property `maintenancePolicies` + # @return [Array] + attr_accessor :maintenance_policies + + # Informational warning which replaces the list of maintenancePolicies when the + # list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::MaintenancePoliciesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @maintenance_policies = args[:maintenance_policies] if args.key?(:maintenance_policies) + @warning = args[:warning] if args.key?(:warning) + end + + # Informational warning which replaces the list of maintenancePolicies when the + # list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A maintenance policy for an instance. This specifies what kind of maintenance + # operations our infrastructure may perform on this instance and when. + class MaintenancePolicy + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#maintenance_policies for + # maintenance policies. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of the resource, provided by the client when initially creating the + # resource. The resource name must be 1-63 characters long, and comply with + # RFC1035. Specifically, the name must be 1-63 characters long and match the + # regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character + # must be a lowercase letter, and all following characters must be a dash, + # lowercase letter, or digit, except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined fully-qualified URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # A Vm Maintenance Policy specifies what kind of infrastructure maintenance we + # are allowed to perform on this VM and when. + # Corresponds to the JSON property `vmMaintenancePolicy` + # @return [Google::Apis::ComputeAlpha::VmMaintenancePolicy] + attr_accessor :vm_maintenance_policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @vm_maintenance_policy = args[:vm_maintenance_policy] if args.key?(:vm_maintenance_policy) + end + end + + # Contains a list of maintenancePolicies. + class MaintenancePolicyAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of MaintenancePolicy resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A maintenance window for VMs and disks. When set, we restrict our maintenance + # operations to this window. + class MaintenanceWindow + include Google::Apis::Core::Hashable + + # Time window specified for daily maintenance operations. + # Corresponds to the JSON property `dailyMaintenanceWindow` + # @return [Google::Apis::ComputeAlpha::DailyMaintenanceWindow] + attr_accessor :daily_maintenance_window + + # Time window specified for hourly maintenance operations. + # Corresponds to the JSON property `hourlyMaintenanceWindow` + # @return [Google::Apis::ComputeAlpha::HourlyMaintenanceWindow] + attr_accessor :hourly_maintenance_window + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @daily_maintenance_window = args[:daily_maintenance_window] if args.key?(:daily_maintenance_window) + @hourly_maintenance_window = args[:hourly_maintenance_window] if args.key?(:hourly_maintenance_window) + end + end + # class ManagedInstance include Google::Apis::Core::Hashable @@ -19387,6 +20017,33 @@ module Google end end + # A set of Shielded VM options. + class ShieldedVmConfig + include Google::Apis::Core::Hashable + + # Defines whether the instance should have secure boot enabled. + # Corresponds to the JSON property `enableSecureBoot` + # @return [Boolean] + attr_accessor :enable_secure_boot + alias_method :enable_secure_boot?, :enable_secure_boot + + # Defines whether the instance should have the TPM enabled. + # Corresponds to the JSON property `enableVtpm` + # @return [Boolean] + attr_accessor :enable_vtpm + alias_method :enable_vtpm?, :enable_vtpm + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enable_secure_boot = args[:enable_secure_boot] if args.key?(:enable_secure_boot) + @enable_vtpm = args[:enable_vtpm] if args.key?(:enable_vtpm) + end + end + # Represents a customer-supplied Signing Key used by Cloud CDN Signed URLs class SignedUrlKey include Google::Apis::Core::Hashable @@ -20224,12 +20881,6 @@ module Google class StatefulPolicy include Google::Apis::Core::Hashable - # Disks created on the instances that will be preserved on instance delete, - # resize down, etc. DEPRECATED in favor of preservedResources.disks field. - # Corresponds to the JSON property `preservedDisks` - # @return [Array] - attr_accessor :preserved_disks - # Configuration of all preserved resources. # Corresponds to the JSON property `preservedResources` # @return [Google::Apis::ComputeAlpha::StatefulPolicyPreservedResources] @@ -20241,7 +20892,6 @@ module Google # Update properties of this object def update!(**args) - @preserved_disks = args[:preserved_disks] if args.key?(:preserved_disks) @preserved_resources = args[:preserved_resources] if args.key?(:preserved_resources) end end @@ -23934,6 +24584,27 @@ module Google end end + # A Vm Maintenance Policy specifies what kind of infrastructure maintenance we + # are allowed to perform on this VM and when. + class VmMaintenancePolicy + include Google::Apis::Core::Hashable + + # A maintenance window for VMs and disks. When set, we restrict our maintenance + # operations to this window. + # Corresponds to the JSON property `maintenanceWindow` + # @return [Google::Apis::ComputeAlpha::MaintenanceWindow] + attr_accessor :maintenance_window + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @maintenance_window = args[:maintenance_window] if args.key?(:maintenance_window) + end + end + # class VpnTunnel include Google::Apis::Core::Hashable diff --git a/generated/google/apis/compute_alpha/representations.rb b/generated/google/apis/compute_alpha/representations.rb index 6f11e4100..43e7cd944 100644 --- a/generated/google/apis/compute_alpha/representations.rb +++ b/generated/google/apis/compute_alpha/representations.rb @@ -532,6 +532,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class DailyMaintenanceWindow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class DeprecationStatus class Representation < Google::Apis::Core::JsonRepresentation; end @@ -1006,6 +1012,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class HourlyMaintenanceWindow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class HttpHealthCheck class Representation < Google::Apis::Core::JsonRepresentation; end @@ -1474,6 +1486,18 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class InstancesAddMaintenancePoliciesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesRemoveMaintenancePoliciesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class InstancesScopedList class Representation < Google::Apis::Core::JsonRepresentation; end @@ -1810,6 +1834,72 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class MaintenancePoliciesList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class MaintenancePoliciesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class MaintenancePolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MaintenancePolicyAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class MaintenanceWindow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ManagedInstance class Representation < Google::Apis::Core::JsonRepresentation; end @@ -2674,6 +2764,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class ShieldedVmConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class SignedUrlKey class Representation < Google::Apis::Core::JsonRepresentation; end @@ -3352,6 +3448,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class VmMaintenancePolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class VpnTunnel class Representation < Google::Apis::Core::JsonRepresentation; end @@ -4405,6 +4507,15 @@ module Google end end + class DailyMaintenanceWindow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :days_in_cycle, as: 'daysInCycle' + property :duration, as: 'duration' + property :start_time, as: 'startTime' + end + end + class DeprecationStatus # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -5305,6 +5416,15 @@ module Google end end + class HourlyMaintenanceWindow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :duration, as: 'duration' + property :hours_in_cycle, as: 'hoursInCycle' + property :start_time, as: 'startTime' + end + end + class HttpHealthCheck # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -5439,6 +5559,10 @@ module Google property :source_image_encryption_key, as: 'sourceImageEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation property :source_image_id, as: 'sourceImageId' + property :source_snapshot, as: 'sourceSnapshot' + property :source_snapshot_encryption_key, as: 'sourceSnapshotEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :source_snapshot_id, as: 'sourceSnapshotId' property :source_type, as: 'sourceType' property :status, as: 'status' end @@ -5517,6 +5641,8 @@ module Google property :self_link, as: 'selfLink' collection :service_accounts, as: 'serviceAccounts', class: Google::Apis::ComputeAlpha::ServiceAccount, decorator: Google::Apis::ComputeAlpha::ServiceAccount::Representation + property :shielded_vm_config, as: 'shieldedVmConfig', class: Google::Apis::ComputeAlpha::ShieldedVmConfig, decorator: Google::Apis::ComputeAlpha::ShieldedVmConfig::Representation + property :start_restricted, as: 'startRestricted' property :status, as: 'status' property :status_message, as: 'statusMessage' @@ -5749,6 +5875,7 @@ module Google property :initial_delay_sec, as: 'initialDelaySec' property :max_unavailable, as: 'maxUnavailable', class: Google::Apis::ComputeAlpha::FixedOrPercent, decorator: Google::Apis::ComputeAlpha::FixedOrPercent::Representation + property :mode, as: 'mode' end end @@ -6215,6 +6342,20 @@ module Google end end + class InstancesAddMaintenancePoliciesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :maintenance_policies, as: 'maintenancePolicies' + end + end + + class InstancesRemoveMaintenancePoliciesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :maintenance_policies, as: 'maintenancePolicies' + end + end + class InstancesScopedList # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -6323,6 +6464,10 @@ module Google class InterconnectAttachment # @private class Representation < Google::Apis::Core::JsonRepresentation + property :admin_enabled, as: 'adminEnabled' + property :availability_zone, as: 'availabilityZone' + property :bandwidth, as: 'bandwidth' + collection :candidate_subnets, as: 'candidateSubnets' property :cloud_router_ip_address, as: 'cloudRouterIpAddress' property :creation_timestamp, as: 'creationTimestamp' property :customer_router_ip_address, as: 'customerRouterIpAddress' @@ -6333,11 +6478,15 @@ module Google property :kind, as: 'kind' property :name, as: 'name' property :operational_status, as: 'operationalStatus' + property :pairing_key, as: 'pairingKey' property :private_interconnect_info, as: 'privateInterconnectInfo', class: Google::Apis::ComputeAlpha::InterconnectAttachmentPrivateInfo, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentPrivateInfo::Representation property :region, as: 'region' property :router, as: 'router' property :self_link, as: 'selfLink' + property :state, as: 'state' + property :type, as: 'type' + property :vlan_tag8021q, as: 'vlanTag8021q' end end @@ -6826,6 +6975,123 @@ module Google end end + class MaintenancePoliciesList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::MaintenancePolicy, decorator: Google::Apis::ComputeAlpha::MaintenancePolicy::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::MaintenancePoliciesList::Warning, decorator: Google::Apis::ComputeAlpha::MaintenancePoliciesList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::MaintenancePoliciesList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::MaintenancePoliciesList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class MaintenancePoliciesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :maintenance_policies, as: 'maintenancePolicies', class: Google::Apis::ComputeAlpha::MaintenancePolicy, decorator: Google::Apis::ComputeAlpha::MaintenancePolicy::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::MaintenancePoliciesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::MaintenancePoliciesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::MaintenancePoliciesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::MaintenancePoliciesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class MaintenancePolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :vm_maintenance_policy, as: 'vmMaintenancePolicy', class: Google::Apis::ComputeAlpha::VmMaintenancePolicy, decorator: Google::Apis::ComputeAlpha::VmMaintenancePolicy::Representation + + end + end + + class MaintenancePolicyAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::MaintenancePoliciesScopedList, decorator: Google::Apis::ComputeAlpha::MaintenancePoliciesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class MaintenanceWindow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :daily_maintenance_window, as: 'dailyMaintenanceWindow', class: Google::Apis::ComputeAlpha::DailyMaintenanceWindow, decorator: Google::Apis::ComputeAlpha::DailyMaintenanceWindow::Representation + + property :hourly_maintenance_window, as: 'hourlyMaintenanceWindow', class: Google::Apis::ComputeAlpha::HourlyMaintenanceWindow, decorator: Google::Apis::ComputeAlpha::HourlyMaintenanceWindow::Representation + + end + end + class ManagedInstance # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -8339,6 +8605,14 @@ module Google end end + class ShieldedVmConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enable_secure_boot, as: 'enableSecureBoot' + property :enable_vtpm, as: 'enableVtpm' + end + end + class SignedUrlKey # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -8545,8 +8819,6 @@ module Google class StatefulPolicy # @private class Representation < Google::Apis::Core::JsonRepresentation - collection :preserved_disks, as: 'preservedDisks', class: Google::Apis::ComputeAlpha::StatefulPolicyPreservedDisk, decorator: Google::Apis::ComputeAlpha::StatefulPolicyPreservedDisk::Representation - property :preserved_resources, as: 'preservedResources', class: Google::Apis::ComputeAlpha::StatefulPolicyPreservedResources, decorator: Google::Apis::ComputeAlpha::StatefulPolicyPreservedResources::Representation end @@ -9515,6 +9787,14 @@ module Google end end + class VmMaintenancePolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :maintenance_window, as: 'maintenanceWindow', class: Google::Apis::ComputeAlpha::MaintenanceWindow, decorator: Google::Apis::ComputeAlpha::MaintenanceWindow::Representation + + end + end + class VpnTunnel # @private class Representation < Google::Apis::Core::JsonRepresentation diff --git a/generated/google/apis/compute_alpha/service.rb b/generated/google/apis/compute_alpha/service.rb index 04057fb80..8e600e2d5 100644 --- a/generated/google/apis/compute_alpha/service.rb +++ b/generated/google/apis/compute_alpha/service.rb @@ -7003,12 +7003,12 @@ module Google execute_or_queue_command(command, &block) end - # Retrieves the list of private images available to the specified project. - # Private images are images you create that belong to your project. This method - # does not get any images that belong to other projects, including publicly- - # available images, like Debian 8. If you want to get a list of publicly- - # available images, use this method to make a request to the respective image - # project, such as debian-cloud or windows-cloud. + # Retrieves the list of custom images available to the specified project. Custom + # images are images you create that belong to your project. This method does not + # get any images that belong to other projects, including publicly-available + # images, like Debian 8. If you want to get a list of publicly-available images, + # use this method to make a request to the respective image project, such as + # debian-cloud or windows-cloud. # @param [String] project # Project ID for this request. # @param [String] filter @@ -9412,6 +9412,64 @@ module Google execute_or_queue_command(command, &block) end + # Adds existing maintenance policies to an instance. You can only add one policy + # right now which will be applied to this instance for scheduling live + # migrations. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # The instance name for this request. + # @param [Google::Apis::ComputeAlpha::InstancesAddMaintenancePoliciesRequest] instances_add_maintenance_policies_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_instance_maintenance_policies(project, zone, instance, instances_add_maintenance_policies_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/addMaintenancePolicies', options) + command.request_representation = Google::Apis::ComputeAlpha::InstancesAddMaintenancePoliciesRequest::Representation + command.request_object = instances_add_maintenance_policies_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Retrieves aggregated list of instances. # @param [String] project # Project ID for this request. @@ -10124,6 +10182,62 @@ module Google execute_or_queue_command(command, &block) end + # Removes maintenance policies from an instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # The instance name for this request. + # @param [Google::Apis::ComputeAlpha::InstancesRemoveMaintenancePoliciesRequest] instances_remove_maintenance_policies_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_instance_maintenance_policies(project, zone, instance, instances_remove_maintenance_policies_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/removeMaintenancePolicies', options) + command.request_representation = Google::Apis::ComputeAlpha::InstancesRemoveMaintenancePoliciesRequest::Representation + command.request_object = instances_remove_maintenance_policies_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Performs a reset on the instance. For more information, see Resetting an # instance. # @param [String] project @@ -11231,6 +11345,63 @@ module Google execute_or_queue_command(command, &block) end + # Updates the Shielded VM config for an instance. This method supports PATCH + # semantics and uses the JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeAlpha::ShieldedVmConfig] shielded_vm_config_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_instance_shielded_vm_config(project, zone, instance, shielded_vm_config_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/zones/{zone}/instances/{instance}/updateShieldedVmConfig', options) + command.request_representation = Google::Apis::ComputeAlpha::ShieldedVmConfig::Representation + command.request_object = shielded_vm_config_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Retrieves an aggregated list of interconnect attachments. # @param [String] project # Project ID for this request. @@ -12914,6 +13085,440 @@ module Google execute_or_queue_command(command, &block) end + # Retrieves an aggregated list of maintenance policies. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_maintenance_policy_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/maintenancePolicies', options) + command.response_representation = Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::MaintenancePolicyAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified maintenance policy. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] maintenance_policy + # Name of the maintenance policy to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_maintenance_policy(project, region, maintenance_policy, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/maintenancePolicies/{maintenancePolicy}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['maintenancePolicy'] = maintenance_policy unless maintenance_policy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves all information of the specified maintenance policy. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] maintenance_policy + # Name of the maintenance policy to retrieve. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::MaintenancePolicy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::MaintenancePolicy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_maintenance_policy(project, region, maintenance_policy, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/maintenancePolicies/{maintenancePolicy}', options) + command.response_representation = Google::Apis::ComputeAlpha::MaintenancePolicy::Representation + command.response_class = Google::Apis::ComputeAlpha::MaintenancePolicy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['maintenancePolicy'] = maintenance_policy unless maintenance_policy.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_maintenance_policy_iam_policy(project, region, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/maintenancePolicies/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new maintenance policy. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [Google::Apis::ComputeAlpha::MaintenancePolicy] maintenance_policy_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_maintenance_policy(project, region, maintenance_policy_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/maintenancePolicies', options) + command.request_representation = Google::Apis::ComputeAlpha::MaintenancePolicy::Representation + command.request_object = maintenance_policy_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all the maintenance policies that have been configured for the specified + # project in specified region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::MaintenancePoliciesList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::MaintenancePoliciesList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_maintenance_policies(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/maintenancePolicies', options) + command.response_representation = Google::Apis::ComputeAlpha::MaintenancePoliciesList::Representation + command.response_class = Google::Apis::ComputeAlpha::MaintenancePoliciesList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_maintenance_policy_iam_policy(project, region, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/maintenancePolicies/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_maintenance_policy_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/maintenancePolicies/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Retrieves the list of network endpoint groups and sorts them by zone. # @param [String] project # Project ID for this request. diff --git a/generated/google/apis/compute_v1.rb b/generated/google/apis/compute_v1.rb index ffac20a4a..974bb321d 100644 --- a/generated/google/apis/compute_v1.rb +++ b/generated/google/apis/compute_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/compute/docs/reference/latest/ module ComputeV1 VERSION = 'V1' - REVISION = '20171114' + REVISION = '20171127' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/compute_v1/classes.rb b/generated/google/apis/compute_v1/classes.rb index 73c3d1786..db969f103 100644 --- a/generated/google/apis/compute_v1/classes.rb +++ b/generated/google/apis/compute_v1/classes.rb @@ -500,7 +500,8 @@ module Google # @return [String] attr_accessor :address - # The type of address to reserve. If unspecified, defaults to EXTERNAL. + # The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, + # defaults to EXTERNAL. # Corresponds to the JSON property `addressType` # @return [String] attr_accessor :address_type @@ -1112,13 +1113,13 @@ module Google # projects/debian-cloud/global/images/family/debian-8 # Alternatively, use a specific version of a public operating system image: # projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD - # To create a disk with a private image that you created, specify the image name + # To create a disk with a custom image that you created, specify the image name # in the following format: - # global/images/my-private-image - # You can also specify a private image by its image family, which returns the + # global/images/my-custom-image + # You can also specify a custom image by its image family, which returns the # latest version of the image in that family. Replace the image name with family/ # family-name: - # global/images/family/my-private-family + # global/images/family/my-image-family # If the source image is deleted later, this field will not be set. # Corresponds to the JSON property `sourceImage` # @return [String] @@ -3366,13 +3367,13 @@ module Google # projects/debian-cloud/global/images/family/debian-8 # Alternatively, use a specific version of a public operating system image: # projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD - # To create a disk with a private image that you created, specify the image name + # To create a disk with a custom image that you created, specify the image name # in the following format: - # global/images/my-private-image - # You can also specify a private image by its image family, which returns the + # global/images/my-custom-image + # You can also specify a custom image by its image family, which returns the # latest version of the image in that family. Replace the image name with family/ # family-name: - # global/images/family/my-private-family + # global/images/family/my-image-family # Corresponds to the JSON property `sourceImage` # @return [String] attr_accessor :source_image @@ -8739,16 +8740,16 @@ module Google end end - # Protocol definitions for Mixer API to support Interconnect. Next available tag: - # 25 + # Represents an Interconnects resource. The Interconnects resource is a + # dedicated connection between Google's network and your on-premises network. + # For more information, see the Dedicated overview page. class Interconnect include Google::Apis::Core::Hashable - # Administrative status of the interconnect. When this is set to ?true?, the - # Interconnect is functional and may carry traffic (assuming there are - # functional InterconnectAttachments and other requirements are satisfied). When - # set to ?false?, no packets will be carried over this Interconnect and no BGP - # routes will be exchanged over it. By default, it is set to ?true?. + # Administrative status of the interconnect. When this is set to true, the + # Interconnect is functional and can carry traffic. When set to false, no + # packets can be carried over the interconnect and no BGP routes are exchanged + # over it. By default, the status is set to true. # Corresponds to the JSON property `adminEnabled` # @return [Boolean] attr_accessor :admin_enabled @@ -8806,7 +8807,8 @@ module Google # @return [Array] attr_accessor :interconnect_attachments - # + # Type of interconnect. Note that "IT_PRIVATE" has been deprecated in favor of " + # DEDICATED" # Corresponds to the JSON property `interconnectType` # @return [String] attr_accessor :interconnect_type @@ -8817,7 +8819,9 @@ module Google # @return [String] attr_accessor :kind - # + # Type of link requested. This field indicates speed of each of the links in the + # bundle, not the entire bundle. Only 10G per link is allowed for a dedicated + # interconnect. Options: Ethernet_10G_LR # Corresponds to the JSON property `linkType` # @return [String] attr_accessor :link_type @@ -8905,8 +8909,8 @@ module Google end end - # Protocol definitions for Mixer API to support InterconnectAttachment. Next - # available tag: 23 + # Represents an InterconnectAttachment (VLAN attachment) resource. For more + # information, see Creating VLAN Attachments. class InterconnectAttachment include Google::Apis::Core::Hashable @@ -8927,8 +8931,7 @@ module Google # @return [String] attr_accessor :customer_router_ip_address - # An optional description of this resource. Provide this property when you - # create the resource. + # An optional description of this resource. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description @@ -8973,8 +8976,8 @@ module Google # @return [String] attr_accessor :operational_status - # Private information for an interconnect attachment when this belongs to an - # interconnect of type IT_PRIVATE. + # Information for an interconnect attachment when this belongs to an + # interconnect of type DEDICATED. # Corresponds to the JSON property `privateInterconnectInfo` # @return [Google::Apis::ComputeV1::InterconnectAttachmentPrivateInfo] attr_accessor :private_interconnect_info @@ -9258,8 +9261,8 @@ module Google end end - # Private information for an interconnect attachment when this belongs to an - # interconnect of type IT_PRIVATE. + # Information for an interconnect attachment when this belongs to an + # interconnect of type DEDICATED. class InterconnectAttachmentPrivateInfo include Google::Apis::Core::Hashable @@ -9376,8 +9379,7 @@ module Google class InterconnectCircuitInfo include Google::Apis::Core::Hashable - # Customer-side demarc ID for this circuit. This will only be set if it was - # provided by the Customer to Google during circuit turn-up. + # Customer-side demarc ID for this circuit. # Corresponds to the JSON property `customerDemarcId` # @return [String] attr_accessor :customer_demarc_id @@ -9523,7 +9525,9 @@ module Google end end - # Protocol definitions for Mixer API to support InterconnectLocation. + # Represents an InterconnectLocations resource. The InterconnectLocations + # resource describes the locations where you can connect to Google's networks. + # For more information, see Colocation Facilities. class InterconnectLocation include Google::Apis::Core::Hashable @@ -9533,22 +9537,20 @@ module Google # @return [String] attr_accessor :address - # Availability zone for this location. Within a city, maintenance will not be - # simultaneously scheduled in more than one availability zone. Example: "zone1" - # or "zone2". + # [Output Only] Availability zone for this location. Within a metropolitan area ( + # metro), maintenance will not be simultaneously scheduled in more than one + # availability zone. Example: "zone1" or "zone2". # Corresponds to the JSON property `availabilityZone` # @return [String] attr_accessor :availability_zone - # City designator used by the Interconnect UI to locate this - # InterconnectLocation within the Continent. For example: "Chicago, IL", " - # Amsterdam, Netherlands". + # [Output Only] Metropolitan area designator that indicates which city an + # interconnect is located. For example: "Chicago, IL", "Amsterdam, Netherlands". # Corresponds to the JSON property `city` # @return [String] attr_accessor :city - # Continent for this location. Used by the location picker in the Interconnect - # UI. + # [Output Only] Continent for this location. # Corresponds to the JSON property `continent` # @return [String] attr_accessor :continent @@ -9793,17 +9795,18 @@ module Google # @return [Array] attr_accessor :affected_circuits - # Short user-visible description of the purpose of the outage. + # A description about the purpose of the outage. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description - # + # Scheduled end time for the outage (milliseconds since Unix epoch). # Corresponds to the JSON property `endTime` # @return [Fixnum] attr_accessor :end_time - # + # Form this outage is expected to take. Note that the "IT_" versions of this + # enum have been deprecated in favor of the unprefixed values. # Corresponds to the JSON property `issueType` # @return [String] attr_accessor :issue_type @@ -9813,17 +9816,19 @@ module Google # @return [String] attr_accessor :name - # + # The party that generated this notification. Note that "NSRC_GOOGLE" has been + # deprecated in favor of "GOOGLE" # Corresponds to the JSON property `source` # @return [String] attr_accessor :source - # Scheduled start and end times for the outage (milliseconds since Unix epoch). + # Scheduled start time for the outage (milliseconds since Unix epoch). # Corresponds to the JSON property `startTime` # @return [Fixnum] attr_accessor :start_time - # + # State of this notification. Note that the "NS_" versions of this enum have + # been deprecated in favor of the unprefixed values. # Corresponds to the JSON property `state` # @return [String] attr_accessor :state diff --git a/generated/google/apis/compute_v1/service.rb b/generated/google/apis/compute_v1/service.rb index 2dc0add6c..155bad203 100644 --- a/generated/google/apis/compute_v1/service.rb +++ b/generated/google/apis/compute_v1/service.rb @@ -5038,12 +5038,12 @@ module Google execute_or_queue_command(command, &block) end - # Retrieves the list of private images available to the specified project. - # Private images are images you create that belong to your project. This method - # does not get any images that belong to other projects, including publicly- - # available images, like Debian 8. If you want to get a list of publicly- - # available images, use this method to make a request to the respective image - # project, such as debian-cloud or windows-cloud. + # Retrieves the list of custom images available to the specified project. Custom + # images are images you create that belong to your project. This method does not + # get any images that belong to other projects, including publicly-available + # images, like Debian 8. If you want to get a list of publicly-available images, + # use this method to make a request to the respective image project, such as + # debian-cloud or windows-cloud. # @param [String] project # Project ID for this request. # @param [String] filter diff --git a/generated/google/apis/container_v1beta1/classes.rb b/generated/google/apis/container_v1beta1/classes.rb index 9c4dc74cf..9f9f78e26 100644 --- a/generated/google/apis/container_v1beta1/classes.rb +++ b/generated/google/apis/container_v1beta1/classes.rb @@ -829,6 +829,22 @@ module Google class IpAllocationPolicy include Google::Apis::Core::Hashable + # If true, allow allocation of cluster CIDR ranges that overlap with certain + # kinds of network routes. By default we do not allow cluster CIDR ranges to + # intersect with any user declared routes. With allow_route_overlap == true, + # we allow overlapping with CIDR ranges that are larger than the cluster CIDR + # range. + # If this field is set to true, then cluster and services CIDRs must be + # fully-specified (e.g. `10.96.0.0/14`, but not `/14`), which means: + # 1) When `use_ip_aliases` is true, `cluster_ipv4_cidr_block` and + # `services_ipv4_cidr_block` must be fully-specified. + # 2) When `use_ip_aliases` is false, `cluster.cluster_ipv4_cidr` muse be + # fully-specified. + # Corresponds to the JSON property `allowRouteOverlap` + # @return [Boolean] + attr_accessor :allow_route_overlap + alias_method :allow_route_overlap?, :allow_route_overlap + # This field is deprecated, use cluster_ipv4_cidr_block. # Corresponds to the JSON property `clusterIpv4Cidr` # @return [String] @@ -934,6 +950,7 @@ module Google # Update properties of this object def update!(**args) + @allow_route_overlap = args[:allow_route_overlap] if args.key?(:allow_route_overlap) @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr) @cluster_ipv4_cidr_block = args[:cluster_ipv4_cidr_block] if args.key?(:cluster_ipv4_cidr_block) @cluster_secondary_range_name = args[:cluster_secondary_range_name] if args.key?(:cluster_secondary_range_name) diff --git a/generated/google/apis/container_v1beta1/representations.rb b/generated/google/apis/container_v1beta1/representations.rb index b72563fe2..b7f6bfad4 100644 --- a/generated/google/apis/container_v1beta1/representations.rb +++ b/generated/google/apis/container_v1beta1/representations.rb @@ -510,6 +510,7 @@ module Google class IpAllocationPolicy # @private class Representation < Google::Apis::Core::JsonRepresentation + property :allow_route_overlap, as: 'allowRouteOverlap' property :cluster_ipv4_cidr, as: 'clusterIpv4Cidr' property :cluster_ipv4_cidr_block, as: 'clusterIpv4CidrBlock' property :cluster_secondary_range_name, as: 'clusterSecondaryRangeName' diff --git a/generated/google/apis/monitoring_v3.rb b/generated/google/apis/monitoring_v3.rb index 227667995..210efd1f6 100644 --- a/generated/google/apis/monitoring_v3.rb +++ b/generated/google/apis/monitoring_v3.rb @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/monitoring/api/ module MonitoringV3 VERSION = 'V3' - REVISION = '20171113' + REVISION = '20171125' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/monitoring_v3/classes.rb b/generated/google/apis/monitoring_v3/classes.rb index 015f6c3ce..de1c0701d 100644 --- a/generated/google/apis/monitoring_v3/classes.rb +++ b/generated/google/apis/monitoring_v3/classes.rb @@ -1786,11 +1786,19 @@ module Google # @return [Google::Apis::MonitoringV3::HttpCheck] attr_accessor :http_check - # The internal checkers that this check will egress from. + # The internal checkers that this check will egress from. If is_internal is true + # and this list is empty, the check will egress from all InternalCheckers + # configured for the project that owns this CheckConfig. # Corresponds to the JSON property `internalCheckers` # @return [Array] attr_accessor :internal_checkers + # Denotes whether this check is a check that egresses from InternalCheckers. + # Corresponds to the JSON property `isInternal` + # @return [Boolean] + attr_accessor :is_internal + alias_method :is_internal?, :is_internal + # An object representing a resource that can be used for monitoring, logging, # billing, or other purposes. Examples include virtual machine instances, # databases, and storage devices such as disks. The type field identifies a @@ -1856,6 +1864,7 @@ module Google @display_name = args[:display_name] if args.key?(:display_name) @http_check = args[:http_check] if args.key?(:http_check) @internal_checkers = args[:internal_checkers] if args.key?(:internal_checkers) + @is_internal = args[:is_internal] if args.key?(:is_internal) @monitored_resource = args[:monitored_resource] if args.key?(:monitored_resource) @name = args[:name] if args.key?(:name) @period = args[:period] if args.key?(:period) diff --git a/generated/google/apis/monitoring_v3/representations.rb b/generated/google/apis/monitoring_v3/representations.rb index ca72fb8a8..c6e222cab 100644 --- a/generated/google/apis/monitoring_v3/representations.rb +++ b/generated/google/apis/monitoring_v3/representations.rb @@ -715,6 +715,7 @@ module Google collection :internal_checkers, as: 'internalCheckers', class: Google::Apis::MonitoringV3::InternalChecker, decorator: Google::Apis::MonitoringV3::InternalChecker::Representation + property :is_internal, as: 'isInternal' property :monitored_resource, as: 'monitoredResource', class: Google::Apis::MonitoringV3::MonitoredResource, decorator: Google::Apis::MonitoringV3::MonitoredResource::Representation property :name, as: 'name' diff --git a/generated/google/apis/youtube_partner_v1.rb b/generated/google/apis/youtube_partner_v1.rb index 365dbe554..433c1ba01 100644 --- a/generated/google/apis/youtube_partner_v1.rb +++ b/generated/google/apis/youtube_partner_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/youtube/partner/ module YoutubePartnerV1 VERSION = 'V1' - REVISION = '20171113' + REVISION = '20171127' # View and manage your assets and associated content on YouTube AUTH_YOUTUBEPARTNER = 'https://www.googleapis.com/auth/youtubepartner'