From 86a9b70834efc632685f39ddeaf837b80e8618f2 Mon Sep 17 00:00:00 2001 From: Google APIs Date: Sat, 22 Feb 2020 00:38:44 +0000 Subject: [PATCH] Autogenerated update (2020-02-22) Update: - accesscontextmanager_v1 - accesscontextmanager_v1beta - cloudasset_v1 - cloudasset_v1beta1 - compute_alpha - compute_beta - compute_v1 - fitness_v1 - healthcare_v1beta1 - jobs_v2 - jobs_v3 - monitoring_v3 - oslogin_v1 - oslogin_v1alpha - oslogin_v1beta - pubsub_v1 - pubsub_v1beta1a - pubsub_v1beta2 - servicemanagement_v1 - tagmanager_v1 - tagmanager_v2 - youtube_partner_v1 --- .../google/apis/accesscontextmanager_v1.rb | 2 +- .../apis/accesscontextmanager_v1/classes.rb | 258 ++++++++++++++++-- .../representations.rb | 104 +++++++ .../apis/accesscontextmanager_v1/service.rb | 135 +++++++++ .../apis/accesscontextmanager_v1beta.rb | 2 +- .../accesscontextmanager_v1beta/classes.rb | 46 ++-- generated/google/apis/cloudasset_v1.rb | 2 +- .../google/apis/cloudasset_v1/classes.rb | 132 ++++++--- .../apis/cloudasset_v1/representations.rb | 19 ++ generated/google/apis/cloudasset_v1beta1.rb | 2 +- generated/google/apis/compute_alpha.rb | 2 +- .../google/apis/compute_alpha/classes.rb | 236 ++++++++++++---- .../apis/compute_alpha/representations.rb | 49 +++- .../google/apis/compute_alpha/service.rb | 96 +++---- generated/google/apis/compute_beta.rb | 2 +- generated/google/apis/compute_beta/classes.rb | 122 +++++++-- .../apis/compute_beta/representations.rb | 2 + generated/google/apis/compute_beta/service.rb | 3 +- generated/google/apis/compute_v1.rb | 2 +- generated/google/apis/compute_v1/classes.rb | 142 ++++++++-- .../google/apis/compute_v1/representations.rb | 19 ++ generated/google/apis/fitness_v1.rb | 2 +- generated/google/apis/fitness_v1/classes.rb | 15 +- generated/google/apis/fitness_v1/service.rb | 2 +- generated/google/apis/healthcare_v1beta1.rb | 2 +- .../google/apis/healthcare_v1beta1/classes.rb | 6 +- generated/google/apis/jobs_v2.rb | 2 +- generated/google/apis/jobs_v3.rb | 2 +- generated/google/apis/monitoring_v3.rb | 2 +- .../google/apis/monitoring_v3/classes.rb | 39 +-- .../google/apis/monitoring_v3/service.rb | 45 +-- generated/google/apis/oslogin_v1.rb | 2 +- generated/google/apis/oslogin_v1alpha.rb | 2 +- generated/google/apis/oslogin_v1beta.rb | 2 +- generated/google/apis/pubsub_v1.rb | 2 +- generated/google/apis/pubsub_v1beta1a.rb | 2 +- generated/google/apis/pubsub_v1beta2.rb | 2 +- generated/google/apis/servicemanagement_v1.rb | 2 +- .../apis/servicemanagement_v1/classes.rb | 36 +++ .../servicemanagement_v1/representations.rb | 1 + generated/google/apis/tagmanager_v1.rb | 2 +- generated/google/apis/tagmanager_v2.rb | 2 +- generated/google/apis/youtube_partner_v1.rb | 2 +- 43 files changed, 1245 insertions(+), 306 deletions(-) diff --git a/generated/google/apis/accesscontextmanager_v1.rb b/generated/google/apis/accesscontextmanager_v1.rb index 9f58fb475..f09c27481 100644 --- a/generated/google/apis/accesscontextmanager_v1.rb +++ b/generated/google/apis/accesscontextmanager_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/access-context-manager/docs/reference/rest/ module AccesscontextmanagerV1 VERSION = 'V1' - REVISION = '20200210' + REVISION = '20200215' # 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/accesscontextmanager_v1/classes.rb b/generated/google/apis/accesscontextmanager_v1/classes.rb index bcaafbeae..05329f03e 100644 --- a/generated/google/apis/accesscontextmanager_v1/classes.rb +++ b/generated/google/apis/accesscontextmanager_v1/classes.rb @@ -22,8 +22,9 @@ module Google module Apis module AccesscontextmanagerV1 - # An `AccessLevel` is a label that can be applied to requests to GCP services, - # along with a list of requirements necessary for the label to be applied. + # An `AccessLevel` is a label that can be applied to requests to Google Cloud + # services, along with a list of requirements necessary for the label to be + # applied. class AccessLevel include Google::Apis::Core::Hashable @@ -83,10 +84,10 @@ module Google end # `AccessPolicy` is a container for `AccessLevels` (which define the necessary - # attributes to use GCP services) and `ServicePerimeters` (which define regions - # of services able to freely pass data within a perimeter). An access policy is - # globally visible within an organization, and the restrictions it specifies - # apply to all projects within an organization. + # attributes to use Google Cloud services) and `ServicePerimeters` (which + # define regions of services able to freely pass data within a perimeter). An + # access policy is globally visible within an organization, and the + # restrictions it specifies apply to all projects within an organization. class AccessPolicy include Google::Apis::Core::Hashable @@ -174,6 +175,52 @@ module Google end end + # A request to commit dry-run specs in all Service Perimeters belonging to + # an Access Policy. + class CommitServicePerimetersRequest + include Google::Apis::Core::Hashable + + # Optional. The etag for the version of the Access Policy that this + # commit operation is to be performed on. If, at the time of commit, the + # etag for the Access Policy stored in Access Context Manager is different + # from the specified etag, then the commit operation will not be performed + # and the call will fail. This field is not required. If etag is not + # provided, the operation will be performed as if a valid etag is provided. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + end + end + + # A response to CommitServicePerimetersRequest. This will be put inside of + # Operation.response field. + class CommitServicePerimetersResponse + include Google::Apis::Core::Hashable + + # List of all the Service Perimeter instances in + # the Access Policy. + # Corresponds to the JSON property `servicePerimeters` + # @return [Array] + attr_accessor :service_perimeters + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @service_perimeters = args[:service_perimeters] if args.key?(:service_perimeters) + end + end + # A condition necessary for an `AccessLevel` to be granted. The Condition is an # AND over its fields. So a Condition is true if: 1) the request IP is from one # of the listed subnetworks AND 2) the originating device complies with the @@ -645,15 +692,122 @@ module Google end end - # `ServicePerimeter` describes a set of GCP resources which can freely import - # and export data amongst themselves, but not export outside of the + # A request to replace all existing Access Levels in an Access Policy with + # the Access Levels provided. This is done within one transaction. + class ReplaceAccessLevelsRequest + include Google::Apis::Core::Hashable + + # Required. The desired Access Levels that should + # replace all existing Access Levels in the + # Access Policy. + # Corresponds to the JSON property `accessLevels` + # @return [Array] + attr_accessor :access_levels + + # Optional. The etag for the version of the Access Policy that this + # replace operation is to be performed on. If, at the time of replace, the + # etag for the Access Policy stored in Access Context Manager is different + # from the specified etag, then the replace operation will not be performed + # and the call will fail. This field is not required. If etag is not + # provided, the operation will be performed as if a valid etag is provided. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_levels = args[:access_levels] if args.key?(:access_levels) + @etag = args[:etag] if args.key?(:etag) + end + end + + # A response to ReplaceAccessLevelsRequest. This will be put inside of + # Operation.response field. + class ReplaceAccessLevelsResponse + include Google::Apis::Core::Hashable + + # List of the Access Level instances. + # Corresponds to the JSON property `accessLevels` + # @return [Array] + attr_accessor :access_levels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_levels = args[:access_levels] if args.key?(:access_levels) + end + end + + # A request to replace all existing Service Perimeters in an Access Policy + # with the Service Perimeters provided. This is done within one transaction. + class ReplaceServicePerimetersRequest + include Google::Apis::Core::Hashable + + # Optional. The etag for the version of the Access Policy that this + # replace operation is to be performed on. If, at the time of replace, the + # etag for the Access Policy stored in Access Context Manager is different + # from the specified etag, then the replace operation will not be performed + # and the call will fail. This field is not required. If etag is not + # provided, the operation will be performed as if a valid etag is provided. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # Required. The desired Service Perimeters that should + # replace all existing Service Perimeters in the + # Access Policy. + # Corresponds to the JSON property `servicePerimeters` + # @return [Array] + attr_accessor :service_perimeters + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @service_perimeters = args[:service_perimeters] if args.key?(:service_perimeters) + end + end + + # A response to ReplaceServicePerimetersRequest. This will be put inside of + # Operation.response field. + class ReplaceServicePerimetersResponse + include Google::Apis::Core::Hashable + + # List of the Service Perimeter instances. + # Corresponds to the JSON property `servicePerimeters` + # @return [Array] + attr_accessor :service_perimeters + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @service_perimeters = args[:service_perimeters] if args.key?(:service_perimeters) + end + end + + # `ServicePerimeter` describes a set of Google Cloud resources which can freely + # import and export data amongst themselves, but not export outside of the # `ServicePerimeter`. If a request with a source within this `ServicePerimeter` # has a target outside of the `ServicePerimeter`, the request will be blocked. # Otherwise the request is allowed. There are two types of Service Perimeter - - # Regular and Bridge. Regular Service Perimeters cannot overlap, a single GCP - # project can only belong to a single regular Service Perimeter. Service - # Perimeter Bridges can contain only GCP projects as members, a single GCP - # project may belong to multiple Service Perimeter Bridges. + # Regular and Bridge. Regular Service Perimeters cannot overlap, a single + # Google Cloud project can only belong to a single regular Service Perimeter. + # Service Perimeter Bridges can contain only Google Cloud projects as members, + # a single Google Cloud project may belong to multiple Service Perimeter + # Bridges. class ServicePerimeter include Google::Apis::Core::Hashable @@ -685,8 +839,14 @@ module Google # @return [String] attr_accessor :perimeter_type - # `ServicePerimeterConfig` specifies a set of GCP resources that describe - # specific Service Perimeter configuration. + # `ServicePerimeterConfig` specifies a set of Google Cloud resources that + # describe specific Service Perimeter configuration. + # Corresponds to the JSON property `spec` + # @return [Google::Apis::AccesscontextmanagerV1::ServicePerimeterConfig] + attr_accessor :spec + + # `ServicePerimeterConfig` specifies a set of Google Cloud resources that + # describe specific Service Perimeter configuration. # Corresponds to the JSON property `status` # @return [Google::Apis::AccesscontextmanagerV1::ServicePerimeterConfig] attr_accessor :status @@ -701,6 +861,21 @@ module Google # @return [String] attr_accessor :update_time + # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly + # exists for all Service Perimeters, and that spec is identical to the + # status for those Service Perimeters. When this flag is set, it inhibits the + # generation of the implicit spec, thereby allowing the user to explicitly + # provide a configuration ("spec") to use in a dry-run version of the Service + # Perimeter. This allows the user to test changes to the enforced config + # ("status") without actually enforcing them. This testing is done through + # analyzing the differences between currently enforced and suggested + # restrictions. use_explicit_dry_run_spec must bet set to True if any of the + # fields in the spec are set to non-default values. + # Corresponds to the JSON property `useExplicitDryRunSpec` + # @return [Boolean] + attr_accessor :use_explicit_dry_run_spec + alias_method :use_explicit_dry_run_spec?, :use_explicit_dry_run_spec + def initialize(**args) update!(**args) end @@ -711,14 +886,16 @@ module Google @description = args[:description] if args.key?(:description) @name = args[:name] if args.key?(:name) @perimeter_type = args[:perimeter_type] if args.key?(:perimeter_type) + @spec = args[:spec] if args.key?(:spec) @status = args[:status] if args.key?(:status) @title = args[:title] if args.key?(:title) @update_time = args[:update_time] if args.key?(:update_time) + @use_explicit_dry_run_spec = args[:use_explicit_dry_run_spec] if args.key?(:use_explicit_dry_run_spec) end end - # `ServicePerimeterConfig` specifies a set of GCP resources that describe - # specific Service Perimeter configuration. + # `ServicePerimeterConfig` specifies a set of Google Cloud resources that + # describe specific Service Perimeter configuration. class ServicePerimeterConfig include Google::Apis::Core::Hashable @@ -726,27 +903,34 @@ module Google # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed # must be in the same policy as this `ServicePerimeter`. Referencing a # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are - # listed, resources within the perimeter can only be accessed via GCP calls - # with request origins within the perimeter. Example: + # listed, resources within the perimeter can only be accessed via Google + # Cloud calls with request origins within the perimeter. Example: # `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. # For Service Perimeter Bridge, must be empty. # Corresponds to the JSON property `accessLevels` # @return [Array] attr_accessor :access_levels - # A list of GCP resources that are inside of the service perimeter. + # A list of Google Cloud resources that are inside of the service perimeter. # Currently only projects are allowed. Format: `projects/`project_number`` # Corresponds to the JSON property `resources` # @return [Array] attr_accessor :resources - # GCP services that are subject to the Service Perimeter restrictions. For - # example, if `storage.googleapis.com` is specified, access to the storage - # buckets inside the perimeter must meet the perimeter's access restrictions. + # Google Cloud services that are subject to the Service Perimeter + # restrictions. For example, if `storage.googleapis.com` is specified, access + # to the storage buckets inside the perimeter must meet the perimeter's + # access restrictions. # Corresponds to the JSON property `restrictedServices` # @return [Array] attr_accessor :restricted_services + # Specifies how APIs are allowed to communicate within the Service + # Perimeter. + # Corresponds to the JSON property `vpcAccessibleServices` + # @return [Google::Apis::AccesscontextmanagerV1::VpcAccessibleServices] + attr_accessor :vpc_accessible_services + def initialize(**args) update!(**args) end @@ -756,6 +940,7 @@ module Google @access_levels = args[:access_levels] if args.key?(:access_levels) @resources = args[:resources] if args.key?(:resources) @restricted_services = args[:restricted_services] if args.key?(:restricted_services) + @vpc_accessible_services = args[:vpc_accessible_services] if args.key?(:vpc_accessible_services) end end @@ -797,6 +982,35 @@ module Google @message = args[:message] if args.key?(:message) end end + + # Specifies how APIs are allowed to communicate within the Service + # Perimeter. + class VpcAccessibleServices + include Google::Apis::Core::Hashable + + # The list of APIs usable within the Service Perimeter. Must be empty + # unless 'enable_restriction' is True. + # Corresponds to the JSON property `allowedServices` + # @return [Array] + attr_accessor :allowed_services + + # Whether to restrict API calls within the Service Perimeter to the list of + # APIs specified in 'allowed_services'. + # Corresponds to the JSON property `enableRestriction` + # @return [Boolean] + attr_accessor :enable_restriction + alias_method :enable_restriction?, :enable_restriction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allowed_services = args[:allowed_services] if args.key?(:allowed_services) + @enable_restriction = args[:enable_restriction] if args.key?(:enable_restriction) + end + end end end end diff --git a/generated/google/apis/accesscontextmanager_v1/representations.rb b/generated/google/apis/accesscontextmanager_v1/representations.rb index e4cc56892..9afcc0540 100644 --- a/generated/google/apis/accesscontextmanager_v1/representations.rb +++ b/generated/google/apis/accesscontextmanager_v1/representations.rb @@ -46,6 +46,18 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class CommitServicePerimetersRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CommitServicePerimetersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Condition class Representation < Google::Apis::Core::JsonRepresentation; end @@ -112,6 +124,30 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class ReplaceAccessLevelsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReplaceAccessLevelsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReplaceServicePerimetersRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReplaceServicePerimetersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ServicePerimeter class Representation < Google::Apis::Core::JsonRepresentation; end @@ -130,6 +166,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class VpcAccessibleServices + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class AccessLevel # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -171,6 +213,21 @@ module Google end end + class CommitServicePerimetersRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + end + end + + class CommitServicePerimetersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :service_perimeters, as: 'servicePerimeters', class: Google::Apis::AccesscontextmanagerV1::ServicePerimeter, decorator: Google::Apis::AccesscontextmanagerV1::ServicePerimeter::Representation + + end + end + class Condition # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -278,6 +335,40 @@ module Google end end + class ReplaceAccessLevelsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :access_levels, as: 'accessLevels', class: Google::Apis::AccesscontextmanagerV1::AccessLevel, decorator: Google::Apis::AccesscontextmanagerV1::AccessLevel::Representation + + property :etag, as: 'etag' + end + end + + class ReplaceAccessLevelsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :access_levels, as: 'accessLevels', class: Google::Apis::AccesscontextmanagerV1::AccessLevel, decorator: Google::Apis::AccesscontextmanagerV1::AccessLevel::Representation + + end + end + + class ReplaceServicePerimetersRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :service_perimeters, as: 'servicePerimeters', class: Google::Apis::AccesscontextmanagerV1::ServicePerimeter, decorator: Google::Apis::AccesscontextmanagerV1::ServicePerimeter::Representation + + end + end + + class ReplaceServicePerimetersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :service_perimeters, as: 'servicePerimeters', class: Google::Apis::AccesscontextmanagerV1::ServicePerimeter, decorator: Google::Apis::AccesscontextmanagerV1::ServicePerimeter::Representation + + end + end + class ServicePerimeter # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -285,10 +376,13 @@ module Google property :description, as: 'description' property :name, as: 'name' property :perimeter_type, as: 'perimeterType' + property :spec, as: 'spec', class: Google::Apis::AccesscontextmanagerV1::ServicePerimeterConfig, decorator: Google::Apis::AccesscontextmanagerV1::ServicePerimeterConfig::Representation + property :status, as: 'status', class: Google::Apis::AccesscontextmanagerV1::ServicePerimeterConfig, decorator: Google::Apis::AccesscontextmanagerV1::ServicePerimeterConfig::Representation property :title, as: 'title' property :update_time, as: 'updateTime' + property :use_explicit_dry_run_spec, as: 'useExplicitDryRunSpec' end end @@ -298,6 +392,8 @@ module Google collection :access_levels, as: 'accessLevels' collection :resources, as: 'resources' collection :restricted_services, as: 'restrictedServices' + property :vpc_accessible_services, as: 'vpcAccessibleServices', class: Google::Apis::AccesscontextmanagerV1::VpcAccessibleServices, decorator: Google::Apis::AccesscontextmanagerV1::VpcAccessibleServices::Representation + end end @@ -309,6 +405,14 @@ module Google property :message, as: 'message' end end + + class VpcAccessibleServices + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :allowed_services, as: 'allowedServices' + property :enable_restriction, as: 'enableRestriction' + end + end end end end diff --git a/generated/google/apis/accesscontextmanager_v1/service.rb b/generated/google/apis/accesscontextmanager_v1/service.rb index c2bd88a2a..a0a343783 100644 --- a/generated/google/apis/accesscontextmanager_v1/service.rb +++ b/generated/google/apis/accesscontextmanager_v1/service.rb @@ -432,6 +432,98 @@ module Google execute_or_queue_command(command, &block) end + # Replace all existing Access Levels in an Access + # Policy with + # the Access Levels provided. This + # is done within one transaction. The longrunning operation from this RPC + # will have a successful status once all replacements have propagated to + # long-lasting storage. Replacements containing errors will result in an + # error response for the first error encountered and the transaction will be + # cancelled. Operation.response field will contain + # ReplaceAccessLevelsResponse. Removing Access Levels contained in existing + # Service Perimeters will result in + # error. + # @param [String] parent + # Required. Resource name for the access policy which owns these + # Access Levels. + # Format: `accessPolicies/`policy_id`` + # @param [Google::Apis::AccesscontextmanagerV1::ReplaceAccessLevelsRequest] replace_access_levels_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. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AccesscontextmanagerV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AccesscontextmanagerV1::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 replace_access_policy_access_level_all(parent, replace_access_levels_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+parent}/accessLevels:replaceAll', options) + command.request_representation = Google::Apis::AccesscontextmanagerV1::ReplaceAccessLevelsRequest::Representation + command.request_object = replace_access_levels_request_object + command.response_representation = Google::Apis::AccesscontextmanagerV1::Operation::Representation + command.response_class = Google::Apis::AccesscontextmanagerV1::Operation + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Commit the dry-run spec for all the Service Perimeters in an + # Access Policy. + # A commit operation on a Service Perimeter involves copying its `spec` field + # to that Service Perimeter's `status` field. Only Service Perimeters with + # `use_explicit_dry_run_spec` field set to true are affected by a commit + # operation. The longrunning operation from this RPC will have a successful + # status once the dry-run specs for all the Service Perimeters have been + # committed. If a commit fails, it will cause the longrunning operation to + # return an error response and the entire commit operation will be cancelled. + # When successful, Operation.response field will contain + # CommitServicePerimetersResponse. The `dry_run` and the `spec` fields will + # be cleared after a successful commit operation. + # @param [String] parent + # Required. Resource name for the parent Access Policy which owns all + # Service Perimeters in scope for + # the commit operation. + # Format: `accessPolicies/`policy_id`` + # @param [Google::Apis::AccesscontextmanagerV1::CommitServicePerimetersRequest] commit_service_perimeters_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. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AccesscontextmanagerV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AccesscontextmanagerV1::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 commit_service_perimeters(parent, commit_service_perimeters_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+parent}/servicePerimeters:commit', options) + command.request_representation = Google::Apis::AccesscontextmanagerV1::CommitServicePerimetersRequest::Representation + command.request_object = commit_service_perimeters_request_object + command.response_representation = Google::Apis::AccesscontextmanagerV1::Operation::Representation + command.response_class = Google::Apis::AccesscontextmanagerV1::Operation + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Create an Service Perimeter. The # longrunning operation from this RPC will have a successful status once the # Service Perimeter has @@ -622,6 +714,49 @@ module Google execute_or_queue_command(command, &block) end + # Replace all existing Service Perimeters in an + # Access Policy + # with the Service Perimeters provided. + # This is done within one transaction. The longrunning operation from this + # RPC will have a successful status once all replacements have propagated to + # long-lasting storage. Replacements containing errors will result in an + # error response for the first error encountered and the transaction will be + # cancelled. Operation.response field will contain + # ReplaceServicePerimetersResponse. + # @param [String] parent + # Required. Resource name for the access policy which owns these + # Service Perimeters. + # Format: `accessPolicies/`policy_id`` + # @param [Google::Apis::AccesscontextmanagerV1::ReplaceServicePerimetersRequest] replace_service_perimeters_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. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AccesscontextmanagerV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AccesscontextmanagerV1::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 replace_access_policy_service_perimeter_all(parent, replace_service_perimeters_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+parent}/servicePerimeters:replaceAll', options) + command.request_representation = Google::Apis::AccesscontextmanagerV1::ReplaceServicePerimetersRequest::Representation + command.request_object = replace_service_perimeters_request_object + command.response_representation = Google::Apis::AccesscontextmanagerV1::Operation::Representation + command.response_class = Google::Apis::AccesscontextmanagerV1::Operation + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Starts asynchronous cancellation on a long-running operation. The server # makes a best effort to cancel the operation, but success is not # guaranteed. If the server doesn't support this method, it returns diff --git a/generated/google/apis/accesscontextmanager_v1beta.rb b/generated/google/apis/accesscontextmanager_v1beta.rb index 9862f72f4..3ac11f301 100644 --- a/generated/google/apis/accesscontextmanager_v1beta.rb +++ b/generated/google/apis/accesscontextmanager_v1beta.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/access-context-manager/docs/reference/rest/ module AccesscontextmanagerV1beta VERSION = 'V1beta' - REVISION = '20200210' + REVISION = '20200215' # 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/accesscontextmanager_v1beta/classes.rb b/generated/google/apis/accesscontextmanager_v1beta/classes.rb index af374267e..ca2445f84 100644 --- a/generated/google/apis/accesscontextmanager_v1beta/classes.rb +++ b/generated/google/apis/accesscontextmanager_v1beta/classes.rb @@ -22,8 +22,9 @@ module Google module Apis module AccesscontextmanagerV1beta - # An `AccessLevel` is a label that can be applied to requests to GCP services, - # along with a list of requirements necessary for the label to be applied. + # An `AccessLevel` is a label that can be applied to requests to Google Cloud + # services, along with a list of requirements necessary for the label to be + # applied. class AccessLevel include Google::Apis::Core::Hashable @@ -83,10 +84,10 @@ module Google end # `AccessPolicy` is a container for `AccessLevels` (which define the necessary - # attributes to use GCP services) and `ServicePerimeters` (which define regions - # of services able to freely pass data within a perimeter). An access policy is - # globally visible within an organization, and the restrictions it specifies - # apply to all projects within an organization. + # attributes to use Google Cloud services) and `ServicePerimeters` (which + # define regions of services able to freely pass data within a perimeter). An + # access policy is globally visible within an organization, and the + # restrictions it specifies apply to all projects within an organization. class AccessPolicy include Google::Apis::Core::Hashable @@ -588,15 +589,16 @@ module Google end end - # `ServicePerimeter` describes a set of GCP resources which can freely import - # and export data amongst themselves, but not export outside of the + # `ServicePerimeter` describes a set of Google Cloud resources which can freely + # import and export data amongst themselves, but not export outside of the # `ServicePerimeter`. If a request with a source within this `ServicePerimeter` # has a target outside of the `ServicePerimeter`, the request will be blocked. # Otherwise the request is allowed. There are two types of Service Perimeter - - # Regular and Bridge. Regular Service Perimeters cannot overlap, a single GCP - # project can only belong to a single regular Service Perimeter. Service - # Perimeter Bridges can contain only GCP projects as members, a single GCP - # project may belong to multiple Service Perimeter Bridges. + # Regular and Bridge. Regular Service Perimeters cannot overlap, a single + # Google Cloud project can only belong to a single regular Service Perimeter. + # Service Perimeter Bridges can contain only Google Cloud projects as members, + # a single Google Cloud project may belong to multiple Service Perimeter + # Bridges. class ServicePerimeter include Google::Apis::Core::Hashable @@ -628,8 +630,8 @@ module Google # @return [String] attr_accessor :perimeter_type - # `ServicePerimeterConfig` specifies a set of GCP resources that describe - # specific Service Perimeter configuration. + # `ServicePerimeterConfig` specifies a set of Google Cloud resources that + # describe specific Service Perimeter configuration. # Corresponds to the JSON property `status` # @return [Google::Apis::AccesscontextmanagerV1beta::ServicePerimeterConfig] attr_accessor :status @@ -660,8 +662,8 @@ module Google end end - # `ServicePerimeterConfig` specifies a set of GCP resources that describe - # specific Service Perimeter configuration. + # `ServicePerimeterConfig` specifies a set of Google Cloud resources that + # describe specific Service Perimeter configuration. class ServicePerimeterConfig include Google::Apis::Core::Hashable @@ -669,29 +671,29 @@ module Google # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed # must be in the same policy as this `ServicePerimeter`. Referencing a # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are - # listed, resources within the perimeter can only be accessed via GCP calls - # with request origins within the perimeter. Example: + # listed, resources within the perimeter can only be accessed via Google + # Cloud calls with request origins within the perimeter. Example: # `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. # For Service Perimeter Bridge, must be empty. # Corresponds to the JSON property `accessLevels` # @return [Array] attr_accessor :access_levels - # A list of GCP resources that are inside of the service perimeter. + # A list of Google Cloud resources that are inside of the service perimeter. # Currently only projects are allowed. Format: `projects/`project_number`` # Corresponds to the JSON property `resources` # @return [Array] attr_accessor :resources - # GCP services that are subject to the Service Perimeter restrictions. Must - # contain a list of services. For example, if + # Google Cloud services that are subject to the Service Perimeter + # restrictions. Must contain a list of services. For example, if # `storage.googleapis.com` is specified, access to the storage buckets # inside the perimeter must meet the perimeter's access restrictions. # Corresponds to the JSON property `restrictedServices` # @return [Array] attr_accessor :restricted_services - # GCP services that are not subject to the Service Perimeter + # Google Cloud services that are not subject to the Service Perimeter # restrictions. Deprecated. Must be set to a single wildcard "*". # The wildcard means that unless explicitly specified by # "restricted_services" list, any service is treated as unrestricted. diff --git a/generated/google/apis/cloudasset_v1.rb b/generated/google/apis/cloudasset_v1.rb index 7ec6a0d10..b2c45117a 100644 --- a/generated/google/apis/cloudasset_v1.rb +++ b/generated/google/apis/cloudasset_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/asset-inventory/docs/quickstart module CloudassetV1 VERSION = 'V1' - REVISION = '20200209' + REVISION = '20200219' # 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/cloudasset_v1/classes.rb b/generated/google/apis/cloudasset_v1/classes.rb index a006c1d04..c51fb5bea 100644 --- a/generated/google/apis/cloudasset_v1/classes.rb +++ b/generated/google/apis/cloudasset_v1/classes.rb @@ -27,17 +27,18 @@ module Google class Asset include Google::Apis::Core::Hashable - # An `AccessLevel` is a label that can be applied to requests to GCP services, - # along with a list of requirements necessary for the label to be applied. + # An `AccessLevel` is a label that can be applied to requests to Google Cloud + # services, along with a list of requirements necessary for the label to be + # applied. # Corresponds to the JSON property `accessLevel` # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1AccessLevel] attr_accessor :access_level # `AccessPolicy` is a container for `AccessLevels` (which define the necessary - # attributes to use GCP services) and `ServicePerimeters` (which define regions - # of services able to freely pass data within a perimeter). An access policy is - # globally visible within an organization, and the restrictions it specifies - # apply to all projects within an organization. + # attributes to use Google Cloud services) and `ServicePerimeters` (which + # define regions of services able to freely pass data within a perimeter). An + # access policy is globally visible within an organization, and the + # restrictions it specifies apply to all projects within an organization. # Corresponds to the JSON property `accessPolicy` # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1AccessPolicy] attr_accessor :access_policy @@ -138,15 +139,16 @@ module Google # @return [Google::Apis::CloudassetV1::Resource] attr_accessor :resource - # `ServicePerimeter` describes a set of GCP resources which can freely import - # and export data amongst themselves, but not export outside of the + # `ServicePerimeter` describes a set of Google Cloud resources which can freely + # import and export data amongst themselves, but not export outside of the # `ServicePerimeter`. If a request with a source within this `ServicePerimeter` # has a target outside of the `ServicePerimeter`, the request will be blocked. # Otherwise the request is allowed. There are two types of Service Perimeter - - # Regular and Bridge. Regular Service Perimeters cannot overlap, a single GCP - # project can only belong to a single regular Service Perimeter. Service - # Perimeter Bridges can contain only GCP projects as members, a single GCP - # project may belong to multiple Service Perimeter Bridges. + # Regular and Bridge. Regular Service Perimeters cannot overlap, a single + # Google Cloud project can only belong to a single regular Service Perimeter. + # Service Perimeter Bridges can contain only Google Cloud projects as members, + # a single Google Cloud project may belong to multiple Service Perimeter + # Bridges. # Corresponds to the JSON property `servicePerimeter` # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter] attr_accessor :service_perimeter @@ -1045,8 +1047,9 @@ module Google end end - # An `AccessLevel` is a label that can be applied to requests to GCP services, - # along with a list of requirements necessary for the label to be applied. + # An `AccessLevel` is a label that can be applied to requests to Google Cloud + # services, along with a list of requirements necessary for the label to be + # applied. class GoogleIdentityAccesscontextmanagerV1AccessLevel include Google::Apis::Core::Hashable @@ -1106,10 +1109,10 @@ module Google end # `AccessPolicy` is a container for `AccessLevels` (which define the necessary - # attributes to use GCP services) and `ServicePerimeters` (which define regions - # of services able to freely pass data within a perimeter). An access policy is - # globally visible within an organization, and the restrictions it specifies - # apply to all projects within an organization. + # attributes to use Google Cloud services) and `ServicePerimeters` (which + # define regions of services able to freely pass data within a perimeter). An + # access policy is globally visible within an organization, and the + # restrictions it specifies apply to all projects within an organization. class GoogleIdentityAccesscontextmanagerV1AccessPolicy include Google::Apis::Core::Hashable @@ -1406,15 +1409,16 @@ module Google end end - # `ServicePerimeter` describes a set of GCP resources which can freely import - # and export data amongst themselves, but not export outside of the + # `ServicePerimeter` describes a set of Google Cloud resources which can freely + # import and export data amongst themselves, but not export outside of the # `ServicePerimeter`. If a request with a source within this `ServicePerimeter` # has a target outside of the `ServicePerimeter`, the request will be blocked. # Otherwise the request is allowed. There are two types of Service Perimeter - - # Regular and Bridge. Regular Service Perimeters cannot overlap, a single GCP - # project can only belong to a single regular Service Perimeter. Service - # Perimeter Bridges can contain only GCP projects as members, a single GCP - # project may belong to multiple Service Perimeter Bridges. + # Regular and Bridge. Regular Service Perimeters cannot overlap, a single + # Google Cloud project can only belong to a single regular Service Perimeter. + # Service Perimeter Bridges can contain only Google Cloud projects as members, + # a single Google Cloud project may belong to multiple Service Perimeter + # Bridges. class GoogleIdentityAccesscontextmanagerV1ServicePerimeter include Google::Apis::Core::Hashable @@ -1446,8 +1450,14 @@ module Google # @return [String] attr_accessor :perimeter_type - # `ServicePerimeterConfig` specifies a set of GCP resources that describe - # specific Service Perimeter configuration. + # `ServicePerimeterConfig` specifies a set of Google Cloud resources that + # describe specific Service Perimeter configuration. + # Corresponds to the JSON property `spec` + # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig] + attr_accessor :spec + + # `ServicePerimeterConfig` specifies a set of Google Cloud resources that + # describe specific Service Perimeter configuration. # Corresponds to the JSON property `status` # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig] attr_accessor :status @@ -1462,6 +1472,21 @@ module Google # @return [String] attr_accessor :update_time + # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly + # exists for all Service Perimeters, and that spec is identical to the + # status for those Service Perimeters. When this flag is set, it inhibits the + # generation of the implicit spec, thereby allowing the user to explicitly + # provide a configuration ("spec") to use in a dry-run version of the Service + # Perimeter. This allows the user to test changes to the enforced config + # ("status") without actually enforcing them. This testing is done through + # analyzing the differences between currently enforced and suggested + # restrictions. use_explicit_dry_run_spec must bet set to True if any of the + # fields in the spec are set to non-default values. + # Corresponds to the JSON property `useExplicitDryRunSpec` + # @return [Boolean] + attr_accessor :use_explicit_dry_run_spec + alias_method :use_explicit_dry_run_spec?, :use_explicit_dry_run_spec + def initialize(**args) update!(**args) end @@ -1472,14 +1497,16 @@ module Google @description = args[:description] if args.key?(:description) @name = args[:name] if args.key?(:name) @perimeter_type = args[:perimeter_type] if args.key?(:perimeter_type) + @spec = args[:spec] if args.key?(:spec) @status = args[:status] if args.key?(:status) @title = args[:title] if args.key?(:title) @update_time = args[:update_time] if args.key?(:update_time) + @use_explicit_dry_run_spec = args[:use_explicit_dry_run_spec] if args.key?(:use_explicit_dry_run_spec) end end - # `ServicePerimeterConfig` specifies a set of GCP resources that describe - # specific Service Perimeter configuration. + # `ServicePerimeterConfig` specifies a set of Google Cloud resources that + # describe specific Service Perimeter configuration. class GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig include Google::Apis::Core::Hashable @@ -1487,27 +1514,34 @@ module Google # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed # must be in the same policy as this `ServicePerimeter`. Referencing a # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are - # listed, resources within the perimeter can only be accessed via GCP calls - # with request origins within the perimeter. Example: + # listed, resources within the perimeter can only be accessed via Google + # Cloud calls with request origins within the perimeter. Example: # `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. # For Service Perimeter Bridge, must be empty. # Corresponds to the JSON property `accessLevels` # @return [Array] attr_accessor :access_levels - # A list of GCP resources that are inside of the service perimeter. + # A list of Google Cloud resources that are inside of the service perimeter. # Currently only projects are allowed. Format: `projects/`project_number`` # Corresponds to the JSON property `resources` # @return [Array] attr_accessor :resources - # GCP services that are subject to the Service Perimeter restrictions. For - # example, if `storage.googleapis.com` is specified, access to the storage - # buckets inside the perimeter must meet the perimeter's access restrictions. + # Google Cloud services that are subject to the Service Perimeter + # restrictions. For example, if `storage.googleapis.com` is specified, access + # to the storage buckets inside the perimeter must meet the perimeter's + # access restrictions. # Corresponds to the JSON property `restrictedServices` # @return [Array] attr_accessor :restricted_services + # Specifies how APIs are allowed to communicate within the Service + # Perimeter. + # Corresponds to the JSON property `vpcAccessibleServices` + # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices] + attr_accessor :vpc_accessible_services + def initialize(**args) update!(**args) end @@ -1517,6 +1551,36 @@ module Google @access_levels = args[:access_levels] if args.key?(:access_levels) @resources = args[:resources] if args.key?(:resources) @restricted_services = args[:restricted_services] if args.key?(:restricted_services) + @vpc_accessible_services = args[:vpc_accessible_services] if args.key?(:vpc_accessible_services) + end + end + + # Specifies how APIs are allowed to communicate within the Service + # Perimeter. + class GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices + include Google::Apis::Core::Hashable + + # The list of APIs usable within the Service Perimeter. Must be empty + # unless 'enable_restriction' is True. + # Corresponds to the JSON property `allowedServices` + # @return [Array] + attr_accessor :allowed_services + + # Whether to restrict API calls within the Service Perimeter to the list of + # APIs specified in 'allowed_services'. + # Corresponds to the JSON property `enableRestriction` + # @return [Boolean] + attr_accessor :enable_restriction + alias_method :enable_restriction?, :enable_restriction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allowed_services = args[:allowed_services] if args.key?(:allowed_services) + @enable_restriction = args[:enable_restriction] if args.key?(:enable_restriction) end end diff --git a/generated/google/apis/cloudasset_v1/representations.rb b/generated/google/apis/cloudasset_v1/representations.rb index e322a3106..529b5cdf9 100644 --- a/generated/google/apis/cloudasset_v1/representations.rb +++ b/generated/google/apis/cloudasset_v1/representations.rb @@ -178,6 +178,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ListFeedsResponse class Representation < Google::Apis::Core::JsonRepresentation; end @@ -492,10 +498,13 @@ module Google property :description, as: 'description' property :name, as: 'name' property :perimeter_type, as: 'perimeterType' + property :spec, as: 'spec', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig::Representation + property :status, as: 'status', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig::Representation property :title, as: 'title' property :update_time, as: 'updateTime' + property :use_explicit_dry_run_spec, as: 'useExplicitDryRunSpec' end end @@ -505,6 +514,16 @@ module Google collection :access_levels, as: 'accessLevels' collection :resources, as: 'resources' collection :restricted_services, as: 'restrictedServices' + property :vpc_accessible_services, as: 'vpcAccessibleServices', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices::Representation + + end + end + + class GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :allowed_services, as: 'allowedServices' + property :enable_restriction, as: 'enableRestriction' end end diff --git a/generated/google/apis/cloudasset_v1beta1.rb b/generated/google/apis/cloudasset_v1beta1.rb index 0feadcdf0..038cb3f62 100644 --- a/generated/google/apis/cloudasset_v1beta1.rb +++ b/generated/google/apis/cloudasset_v1beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/asset-inventory/docs/quickstart module CloudassetV1beta1 VERSION = 'V1beta1' - REVISION = '20200209' + REVISION = '20200219' # 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.rb b/generated/google/apis/compute_alpha.rb index fd92c6013..8a6e396ad 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 = '20200114' + REVISION = '20200120' # 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 f8a4e7d56..d80dae13e 100644 --- a/generated/google/apis/compute_alpha/classes.rb +++ b/generated/google/apis/compute_alpha/classes.rb @@ -2255,6 +2255,17 @@ module Google class AutoscalingPolicyCpuUtilization include Google::Apis::Core::Hashable + # Indicates which method of prediction is used for CPU utilization metric, if + # any. Current set of possible values: * NONE: No predictions are made based on + # the scaling metric when calculating the number of VM instances. * STANDARD: + # Standard predictive autoscaling predicts the future values of the scaling + # metric and then scales a MIG to ensure that new VM instances are ready in time + # to cover the predicted peak. New values might be added in the future. Some of + # the values might not be available in all API versions. + # Corresponds to the JSON property `predictiveMethod` + # @return [String] + attr_accessor :predictive_method + # The target CPU utilization that the autoscaler should maintain. Must be a # float value in the range (0, 1]. If not specified, the default is 0.6. # If the CPU level is below the target utilization, the autoscaler scales down @@ -2274,6 +2285,7 @@ module Google # Update properties of this object def update!(**args) + @predictive_method = args[:predictive_method] if args.key?(:predictive_method) @utilization_target = args[:utilization_target] if args.key?(:utilization_target) end end @@ -4070,9 +4082,26 @@ module Google class Binding include Google::Apis::Core::Hashable - # Represents an expression text. Example: - # title: "User account presence" description: "Determines whether the request - # has a user account" expression: "size(request.user) > 0" + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. # Corresponds to the JSON property `condition` # @return [Google::Apis::ComputeAlpha::Expr] attr_accessor :condition @@ -6698,33 +6727,48 @@ module Google end end - # Represents an expression text. Example: - # title: "User account presence" description: "Determines whether the request - # has a user account" expression: "size(request.user) > 0" + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. class Expr include Google::Apis::Core::Hashable - # An optional description of the expression. This is a longer text which - # describes the expression, e.g. when hovered over it in a UI. + # Optional. Description of the expression. This is a longer text which describes + # the expression, e.g. when hovered over it in a UI. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # Textual representation of an expression in Common Expression Language syntax. - # The application context of the containing message determines which well-known - # feature set of CEL is supported. # Corresponds to the JSON property `expression` # @return [String] attr_accessor :expression - # An optional string indicating the location of the expression for error - # reporting, e.g. a file name and a position in the file. + # Optional. String indicating the location of the expression for error reporting, + # e.g. a file name and a position in the file. # Corresponds to the JSON property `location` # @return [String] attr_accessor :location - # An optional title for the expression, i.e. a short string describing its - # purpose. This can be used e.g. in UIs which allow to enter the expression. + # Optional. Title for the expression, i.e. a short string describing its purpose. + # This can be used e.g. in UIs which allow to enter the expression. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title @@ -9551,12 +9595,13 @@ module Google # @return [String] attr_accessor :instance - # The IP address represented by this resource. + # A forwarding rule IP address assigned to this instance. # Corresponds to the JSON property `ipAddress` # @return [String] attr_accessor :ip_address - # The port on the instance. + # The named port of the instance group, not necessarily the port that is health- + # checked. # Corresponds to the JSON property `port` # @return [Fixnum] attr_accessor :port @@ -12213,9 +12258,9 @@ module Google # @return [Array] attr_accessor :target_pools - # The target number of running instances for this managed instance group. - # Deleting or abandoning instances reduces this number. Resizing the group - # changes this number. + # The target number of running instances for this managed instance group. You + # can reduce this number by using the instanceGroupManager deleteInstances or + # abandonInstances methods. Resizing the group also changes this number. # Corresponds to the JSON property `targetSize` # @return [Fixnum] attr_accessor :target_size @@ -17475,7 +17520,11 @@ module Google end end - # Machine image resource. + # Represents a machine image resource. + # A machine image is a Compute Engine resource that stores all the configuration, + # metadata, permissions, and data from one or more disks required to create a + # Virtual machine (VM) instance. For more information, see Machine images. (== + # resource_for `$api_version`.machineImages ==) class MachineImage include Google::Apis::Core::Hashable @@ -20863,25 +20912,6 @@ module Google end end - # - class NodeGroupsSetAutoscalingPolicyRequest - include Google::Apis::Core::Hashable - - # - # Corresponds to the JSON property `autoscalingPolicy` - # @return [Google::Apis::ComputeAlpha::NodeGroupAutoscalingPolicy] - attr_accessor :autoscaling_policy - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @autoscaling_policy = args[:autoscaling_policy] if args.key?(:autoscaling_policy) - end - end - # class NodeGroupsSetNodeTemplateRequest include Google::Apis::Core::Hashable @@ -24679,7 +24709,7 @@ module Google # [Output Only] The status of the public delegated prefix. # Corresponds to the JSON property `status` - # @return [Object] + # @return [String] attr_accessor :status def initialize(**args) @@ -24982,7 +25012,7 @@ module Google # [Output Only] The status of the sub public delegated prefix. # Corresponds to the JSON property `status` - # @return [Object] + # @return [String] attr_accessor :status def initialize(**args) @@ -25405,7 +25435,7 @@ module Google class RegionCommitmentsUpdateReservationsRequest include Google::Apis::Core::Hashable - # List of two reservations to transfer GPUs and local SSD between. + # A list of two reservations to transfer GPUs and local SSD between. # Corresponds to the JSON property `reservations` # @return [Array] attr_accessor :reservations @@ -29941,6 +29971,32 @@ module Google end end + # An instance's screenshot. + class Screenshot + include Google::Apis::Core::Hashable + + # [Output Only] The Base64-encoded screenshot data. + # Corresponds to the JSON property `contents` + # @return [String] + attr_accessor :contents + + # [Output Only] Type of the resource. Always compute#screenshot for the + # screenshots. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @contents = args[:contents] if args.key?(:contents) + @kind = args[:kind] if args.key?(:kind) + end + end + # The configuration to access the SDS server. class SdsConfig include Google::Apis::Core::Hashable @@ -30005,7 +30061,7 @@ module Google class SecurityPolicy include Google::Apis::Core::Hashable - # A list of assocations that belong to this policy. + # A list of associations that belong to this policy. # Corresponds to the JSON property `associations` # @return [Array] attr_accessor :associations @@ -30026,6 +30082,18 @@ module Google # @return [String] attr_accessor :description + # User-provided name of the Organization security plicy. The name should be + # unique in the organization in which the security policy is created. This + # should only be used when SecurityPolicyType is FIREWALL. The 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 `displayName` + # @return [String] + attr_accessor :display_name + # Specifies a fingerprint for this resource, which is essentially a hash of the # metadata's contents and used for optimistic locking. The fingerprint is # initially generated by Compute Engine and changes after every request to @@ -30078,6 +30146,11 @@ module Google # @return [String] attr_accessor :name + # [Output Only] The parent of the security policy. + # Corresponds to the JSON property `parent` + # @return [String] + attr_accessor :parent + # [Output Only] Total count of all security policy rule tuples. A security # policy can not exceed a set number of tuples. # Corresponds to the JSON property `ruleTupleCount` @@ -30118,12 +30191,14 @@ module Google @cloud_armor_config = args[:cloud_armor_config] if args.key?(:cloud_armor_config) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) + @display_name = args[:display_name] if args.key?(:display_name) @fingerprint = args[:fingerprint] if args.key?(:fingerprint) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) + @parent = args[:parent] if args.key?(:parent) @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count) @rules = args[:rules] if args.key?(:rules) @self_link = args[:self_link] if args.key?(:self_link) @@ -30141,6 +30216,11 @@ module Google # @return [String] attr_accessor :attachment_id + # [Output Only] The display name of the security policy of the association. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + # The name for an association. # Corresponds to the JSON property `name` # @return [String] @@ -30158,6 +30238,7 @@ module Google # Update properties of this object def update!(**args) @attachment_id = args[:attachment_id] if args.key?(:attachment_id) + @display_name = args[:display_name] if args.key?(:display_name) @name = args[:name] if args.key?(:name) @security_policy_id = args[:security_policy_id] if args.key?(:security_policy_id) end @@ -30394,6 +30475,12 @@ module Google # @return [Array] attr_accessor :target_resources + # A list of service accounts indicating the sets of instances that are applied + # with this rule. + # Corresponds to the JSON property `targetServiceAccounts` + # @return [Array] + attr_accessor :target_service_accounts + def initialize(**args) update!(**args) end @@ -30411,6 +30498,7 @@ module Google @rate_limit_options = args[:rate_limit_options] if args.key?(:rate_limit_options) @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count) @target_resources = args[:target_resources] if args.key?(:target_resources) + @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts) end end @@ -30426,9 +30514,26 @@ module Google # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfig] attr_accessor :config - # Represents an expression text. Example: - # title: "User account presence" description: "Determines whether the request - # has a user account" expression: "size(request.user) > 0" + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. # Corresponds to the JSON property `expr` # @return [Google::Apis::ComputeAlpha::Expr] attr_accessor :expr @@ -30469,6 +30574,12 @@ module Google # @return [Array] attr_accessor :dest_ports + # Pairs of IP protocols and ports that the rule should match. + # This field may only be specified when versioned_expr is set to FIREWALL. + # Corresponds to the JSON property `layer4Configs` + # @return [Array] + attr_accessor :layer4_configs + # CIDR IP address range. # Corresponds to the JSON property `srcIpRanges` # @return [Array] @@ -30482,6 +30593,7 @@ module Google def update!(**args) @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges) @dest_ports = args[:dest_ports] if args.key?(:dest_ports) + @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs) @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges) end end @@ -30518,6 +30630,38 @@ module Google end end + # + class SecurityPolicyRuleMatcherConfigLayer4Config + include Google::Apis::Core::Hashable + + # The IP protocol to which this rule applies. The protocol type is required when + # creating a firewall rule. This value can either be one of the following well + # known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP + # protocol number. + # Corresponds to the JSON property `ipProtocol` + # @return [String] + attr_accessor :ip_protocol + + # An optional list of ports to which this rule applies. This field is only + # applicable for UDP or TCP protocol. Each entry must be either an integer or a + # range. If not specified, this rule applies to connections through any port. + # Example inputs include: ["22"], ["80","443"], and ["12345-12349"]. + # This field may only be specified when versioned_expr is set to FIREWALL. + # Corresponds to the JSON property `ports` + # @return [Array] + attr_accessor :ports + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_protocol = args[:ip_protocol] if args.key?(:ip_protocol) + @ports = args[:ports] if args.key?(:ports) + end + end + # class SecurityPolicyRuleRateLimitOptions include Google::Apis::Core::Hashable diff --git a/generated/google/apis/compute_alpha/representations.rb b/generated/google/apis/compute_alpha/representations.rb index 4635cb289..82279c1c8 100644 --- a/generated/google/apis/compute_alpha/representations.rb +++ b/generated/google/apis/compute_alpha/representations.rb @@ -2674,12 +2674,6 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class NodeGroupsSetAutoscalingPolicyRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class NodeGroupsSetNodeTemplateRequest class Representation < Google::Apis::Core::JsonRepresentation; end @@ -3964,6 +3958,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class Screenshot + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class SdsConfig class Representation < Google::Apis::Core::JsonRepresentation; end @@ -4048,6 +4048,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class SecurityPolicyRuleMatcherConfigLayer4Config + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class SecurityPolicyRuleRateLimitOptions class Representation < Google::Apis::Core::JsonRepresentation; end @@ -5818,6 +5824,7 @@ module Google class AutoscalingPolicyCpuUtilization # @private class Representation < Google::Apis::Core::JsonRepresentation + property :predictive_method, as: 'predictiveMethod' property :utilization_target, as: 'utilizationTarget' end end @@ -10314,14 +10321,6 @@ module Google end end - class NodeGroupsSetAutoscalingPolicyRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :autoscaling_policy, as: 'autoscalingPolicy', class: Google::Apis::ComputeAlpha::NodeGroupAutoscalingPolicy, decorator: Google::Apis::ComputeAlpha::NodeGroupAutoscalingPolicy::Representation - - end - end - class NodeGroupsSetNodeTemplateRequest # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -12650,6 +12649,14 @@ module Google end end + class Screenshot + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :contents, as: 'contents' + property :kind, as: 'kind' + end + end + class SdsConfig # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -12683,12 +12690,14 @@ module Google property :creation_timestamp, as: 'creationTimestamp' property :description, as: 'description' + property :display_name, as: 'displayName' property :fingerprint, :base64 => true, as: 'fingerprint' property :id, :numeric_string => true, as: 'id' property :kind, as: 'kind' property :label_fingerprint, :base64 => true, as: 'labelFingerprint' hash :labels, as: 'labels' property :name, as: 'name' + property :parent, as: 'parent' property :rule_tuple_count, as: 'ruleTupleCount' collection :rules, as: 'rules', class: Google::Apis::ComputeAlpha::SecurityPolicyRule, decorator: Google::Apis::ComputeAlpha::SecurityPolicyRule::Representation @@ -12702,6 +12711,7 @@ module Google # @private class Representation < Google::Apis::Core::JsonRepresentation property :attachment_id, as: 'attachmentId' + property :display_name, as: 'displayName' property :name, as: 'name' property :security_policy_id, as: 'securityPolicyId' end @@ -12768,6 +12778,7 @@ module Google property :rule_tuple_count, as: 'ruleTupleCount' collection :target_resources, as: 'targetResources' + collection :target_service_accounts, as: 'targetServiceAccounts' end end @@ -12788,6 +12799,8 @@ module Google collection :dest_ip_ranges, as: 'destIpRanges' collection :dest_ports, as: 'destPorts', class: Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfigDestinationPort, decorator: Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfigDestinationPort::Representation + collection :layer4_configs, as: 'layer4Configs', class: Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfigLayer4Config, decorator: Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfigLayer4Config::Representation + collection :src_ip_ranges, as: 'srcIpRanges' end end @@ -12800,6 +12813,14 @@ module Google end end + class SecurityPolicyRuleMatcherConfigLayer4Config + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_protocol, as: 'ipProtocol' + collection :ports, as: 'ports' + end + end + class SecurityPolicyRuleRateLimitOptions # @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 d016ca870..f0ff3641c 100644 --- a/generated/google/apis/compute_alpha/service.rb +++ b/generated/google/apis/compute_alpha/service.rb @@ -10620,6 +10620,45 @@ module Google execute_or_queue_command(command, &block) end + # Returns the screenshot from the specified instance. + # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Screenshot] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Screenshot] + # + # @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_instance_screenshot(project, zone, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instances/{instance}/screenshot', options) + command.response_representation = Google::Apis::ComputeAlpha::Screenshot::Representation + command.response_class = Google::Apis::ComputeAlpha::Screenshot + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.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 the last 1 MB of serial port output from the specified instance. # @param [String] project # Project ID for this request. @@ -16600,60 +16639,6 @@ module Google execute_or_queue_command(command, &block) end - # Sets the autoscaling policy of the node group. - # @param [String] project - # Project ID for this request. - # @param [String] zone - # The name of the zone for this request. - # @param [String] node_group - # Name of the NodeGroup resource to update. - # @param [Google::Apis::ComputeAlpha::NodeGroupsSetAutoscalingPolicyRequest] node_groups_set_autoscaling_policy_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 - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. - # @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 set_node_group_autoscaling_policy(project, zone, node_group, node_groups_set_autoscaling_policy_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}/nodeGroups/{nodeGroup}/setAutoscalingPolicy', options) - command.request_representation = Google::Apis::ComputeAlpha::NodeGroupsSetAutoscalingPolicyRequest::Representation - command.request_object = node_groups_set_autoscaling_policy_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['nodeGroup'] = node_group unless node_group.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 - # Sets the access control policy on the specified resource. Replaces any # existing policy. # @param [String] project @@ -20877,8 +20862,7 @@ module Google execute_or_queue_command(command, &block) end - # Update the shape of reservations for GPUS/Local SSDs of reservations within - # the commitments. + # Transfers GPUs or local SSDs between reservations within commitments. # @param [String] project # Project ID for this request. # @param [String] region diff --git a/generated/google/apis/compute_beta.rb b/generated/google/apis/compute_beta.rb index 49a495c05..b43b00141 100644 --- a/generated/google/apis/compute_beta.rb +++ b/generated/google/apis/compute_beta.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/compute/docs/reference/latest/ module ComputeBeta VERSION = 'Beta' - REVISION = '20200114' + REVISION = '20200120' # 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_beta/classes.rb b/generated/google/apis/compute_beta/classes.rb index e0ec23eb1..4c592938a 100644 --- a/generated/google/apis/compute_beta/classes.rb +++ b/generated/google/apis/compute_beta/classes.rb @@ -3774,9 +3774,26 @@ module Google class Binding include Google::Apis::Core::Hashable - # Represents an expression text. Example: - # title: "User account presence" description: "Determines whether the request - # has a user account" expression: "size(request.user) > 0" + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. # Corresponds to the JSON property `condition` # @return [Google::Apis::ComputeBeta::Expr] attr_accessor :condition @@ -6195,33 +6212,48 @@ module Google end end - # Represents an expression text. Example: - # title: "User account presence" description: "Determines whether the request - # has a user account" expression: "size(request.user) > 0" + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. class Expr include Google::Apis::Core::Hashable - # An optional description of the expression. This is a longer text which - # describes the expression, e.g. when hovered over it in a UI. + # Optional. Description of the expression. This is a longer text which describes + # the expression, e.g. when hovered over it in a UI. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # Textual representation of an expression in Common Expression Language syntax. - # The application context of the containing message determines which well-known - # feature set of CEL is supported. # Corresponds to the JSON property `expression` # @return [String] attr_accessor :expression - # An optional string indicating the location of the expression for error - # reporting, e.g. a file name and a position in the file. + # Optional. String indicating the location of the expression for error reporting, + # e.g. a file name and a position in the file. # Corresponds to the JSON property `location` # @return [String] attr_accessor :location - # An optional title for the expression, i.e. a short string describing its - # purpose. This can be used e.g. in UIs which allow to enter the expression. + # Optional. Title for the expression, i.e. a short string describing its purpose. + # This can be used e.g. in UIs which allow to enter the expression. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title @@ -8936,12 +8968,13 @@ module Google # @return [String] attr_accessor :instance - # The IP address represented by this resource. + # A forwarding rule IP address assigned to this instance. # Corresponds to the JSON property `ipAddress` # @return [String] attr_accessor :ip_address - # The port on the instance. + # The named port of the instance group, not necessarily the port that is health- + # checked. # Corresponds to the JSON property `port` # @return [Fixnum] attr_accessor :port @@ -11457,9 +11490,9 @@ module Google # @return [Array] attr_accessor :target_pools - # The target number of running instances for this managed instance group. - # Deleting or abandoning instances reduces this number. Resizing the group - # changes this number. + # The target number of running instances for this managed instance group. You + # can reduce this number by using the instanceGroupManager deleteInstances or + # abandonInstances methods. Resizing the group also changes this number. # Corresponds to the JSON property `targetSize` # @return [Fixnum] attr_accessor :target_size @@ -16060,7 +16093,11 @@ module Google end end - # Machine image resource. + # Represents a machine image resource. + # A machine image is a Compute Engine resource that stores all the configuration, + # metadata, permissions, and data from one or more disks required to create a + # Virtual machine (VM) instance. For more information, see Machine images. (== + # resource_for `$api_version`.machineImages ==) class MachineImage include Google::Apis::Core::Hashable @@ -18188,12 +18225,30 @@ module Google attr_accessor :export_custom_routes alias_method :export_custom_routes?, :export_custom_routes + # Whether subnet routes with public IP range are exported. The default value is + # true, all subnet routes are exported. The IPv4 special-use ranges (https://en. + # wikipedia.org/wiki/IPv4#Special_addresses) are always exported to peers and + # are not controlled by this field. + # Corresponds to the JSON property `exportSubnetRoutesWithPublicIp` + # @return [Boolean] + attr_accessor :export_subnet_routes_with_public_ip + alias_method :export_subnet_routes_with_public_ip?, :export_subnet_routes_with_public_ip + # Whether to import the custom routes from peer network. # Corresponds to the JSON property `importCustomRoutes` # @return [Boolean] attr_accessor :import_custom_routes alias_method :import_custom_routes?, :import_custom_routes + # Whether subnet routes with public IP range are imported. The default value is + # false. The IPv4 special-use ranges (https://en.wikipedia.org/wiki/IPv4# + # Special_addresses) are always imported from peers and are not controlled by + # this field. + # Corresponds to the JSON property `importSubnetRoutesWithPublicIp` + # @return [Boolean] + attr_accessor :import_subnet_routes_with_public_ip + alias_method :import_subnet_routes_with_public_ip?, :import_subnet_routes_with_public_ip + # Name of this peering. Provided by the client when the peering is created. The # name must comply with RFC1035. Specifically, the name must be 1-63 characters # long and match regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first @@ -18232,7 +18287,9 @@ module Google @auto_create_routes = args[:auto_create_routes] if args.key?(:auto_create_routes) @exchange_subnet_routes = args[:exchange_subnet_routes] if args.key?(:exchange_subnet_routes) @export_custom_routes = args[:export_custom_routes] if args.key?(:export_custom_routes) + @export_subnet_routes_with_public_ip = args[:export_subnet_routes_with_public_ip] if args.key?(:export_subnet_routes_with_public_ip) @import_custom_routes = args[:import_custom_routes] if args.key?(:import_custom_routes) + @import_subnet_routes_with_public_ip = args[:import_subnet_routes_with_public_ip] if args.key?(:import_subnet_routes_with_public_ip) @name = args[:name] if args.key?(:name) @network = args[:network] if args.key?(:network) @state = args[:state] if args.key?(:state) @@ -22450,7 +22507,7 @@ module Google class RegionCommitmentsUpdateReservationsRequest include Google::Apis::Core::Hashable - # List of two reservations to transfer GPUs and local SSD between. + # A list of two reservations to transfer GPUs and local SSD between. # Corresponds to the JSON property `reservations` # @return [Array] attr_accessor :reservations @@ -27149,9 +27206,26 @@ module Google # @return [Google::Apis::ComputeBeta::SecurityPolicyRuleMatcherConfig] attr_accessor :config - # Represents an expression text. Example: - # title: "User account presence" description: "Determines whether the request - # has a user account" expression: "size(request.user) > 0" + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. # Corresponds to the JSON property `expr` # @return [Google::Apis::ComputeBeta::Expr] attr_accessor :expr diff --git a/generated/google/apis/compute_beta/representations.rb b/generated/google/apis/compute_beta/representations.rb index a082d466e..d01464f7a 100644 --- a/generated/google/apis/compute_beta/representations.rb +++ b/generated/google/apis/compute_beta/representations.rb @@ -9156,7 +9156,9 @@ module Google property :auto_create_routes, as: 'autoCreateRoutes' property :exchange_subnet_routes, as: 'exchangeSubnetRoutes' property :export_custom_routes, as: 'exportCustomRoutes' + property :export_subnet_routes_with_public_ip, as: 'exportSubnetRoutesWithPublicIp' property :import_custom_routes, as: 'importCustomRoutes' + property :import_subnet_routes_with_public_ip, as: 'importSubnetRoutesWithPublicIp' property :name, as: 'name' property :network, as: 'network' property :state, as: 'state' diff --git a/generated/google/apis/compute_beta/service.rb b/generated/google/apis/compute_beta/service.rb index a2fbc954f..680658d64 100644 --- a/generated/google/apis/compute_beta/service.rb +++ b/generated/google/apis/compute_beta/service.rb @@ -18022,8 +18022,7 @@ module Google execute_or_queue_command(command, &block) end - # Update the shape of reservations for GPUS/Local SSDs of reservations within - # the commitments. + # Transfers GPUs or local SSDs between reservations within commitments. # @param [String] project # Project ID for this request. # @param [String] region diff --git a/generated/google/apis/compute_v1.rb b/generated/google/apis/compute_v1.rb index 3e76df331..0160629e0 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 = '20200114' + REVISION = '20200120' # 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 cf5379f27..f66449afd 100644 --- a/generated/google/apis/compute_v1/classes.rb +++ b/generated/google/apis/compute_v1/classes.rb @@ -2701,6 +2701,12 @@ module Google # @return [String] attr_accessor :locality_lb_policy + # The available logging options for the load balancer traffic served by this + # backend service. + # Corresponds to the JSON property `logConfig` + # @return [Google::Apis::ComputeV1::BackendServiceLogConfig] + attr_accessor :log_config + # Name of the resource. Provided by the client when the resource is created. The # 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- @@ -2711,6 +2717,12 @@ module Google # @return [String] attr_accessor :name + # The URL of the network to which this backend service belongs. This field can + # only be spcified when the load balancing scheme is set to INTERNAL. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + # Settings controlling the eviction of unhealthy hosts from the load balancing # pool for the backend service. # Corresponds to the JSON property `outlierDetection` @@ -2808,7 +2820,9 @@ module Google @kind = args[:kind] if args.key?(:kind) @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme) @locality_lb_policy = args[:locality_lb_policy] if args.key?(:locality_lb_policy) + @log_config = args[:log_config] if args.key?(:log_config) @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) @outlier_detection = args[:outlier_detection] if args.key?(:outlier_detection) @port = args[:port] if args.key?(:port) @port_name = args[:port_name] if args.key?(:port_name) @@ -3159,6 +3173,38 @@ module Google end end + # The available logging options for the load balancer traffic served by this + # backend service. + class BackendServiceLogConfig + include Google::Apis::Core::Hashable + + # This field denotes whether to enable logging for the load balancer traffic + # served by this backend service. + # Corresponds to the JSON property `enable` + # @return [Boolean] + attr_accessor :enable + alias_method :enable?, :enable + + # This field can only be specified if logging is enabled for this backend + # service. The value of the field must be in [0, 1]. This configures the + # sampling rate of requests to the load balancer where 1.0 means all logged + # requests are reported and 0.0 means no logged requests are reported. The + # default value is 1.0. + # Corresponds to the JSON property `sampleRate` + # @return [Float] + attr_accessor :sample_rate + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enable = args[:enable] if args.key?(:enable) + @sample_rate = args[:sample_rate] if args.key?(:sample_rate) + end + end + # class BackendServiceReference include Google::Apis::Core::Hashable @@ -3273,9 +3319,26 @@ module Google class Binding include Google::Apis::Core::Hashable - # Represents an expression text. Example: - # title: "User account presence" description: "Determines whether the request - # has a user account" expression: "size(request.user) > 0" + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. # Corresponds to the JSON property `condition` # @return [Google::Apis::ComputeV1::Expr] attr_accessor :condition @@ -5643,33 +5706,48 @@ module Google end end - # Represents an expression text. Example: - # title: "User account presence" description: "Determines whether the request - # has a user account" expression: "size(request.user) > 0" + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. class Expr include Google::Apis::Core::Hashable - # An optional description of the expression. This is a longer text which - # describes the expression, e.g. when hovered over it in a UI. + # Optional. Description of the expression. This is a longer text which describes + # the expression, e.g. when hovered over it in a UI. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # Textual representation of an expression in Common Expression Language syntax. - # The application context of the containing message determines which well-known - # feature set of CEL is supported. # Corresponds to the JSON property `expression` # @return [String] attr_accessor :expression - # An optional string indicating the location of the expression for error - # reporting, e.g. a file name and a position in the file. + # Optional. String indicating the location of the expression for error reporting, + # e.g. a file name and a position in the file. # Corresponds to the JSON property `location` # @return [String] attr_accessor :location - # An optional title for the expression, i.e. a short string describing its - # purpose. This can be used e.g. in UIs which allow to enter the expression. + # Optional. Title for the expression, i.e. a short string describing its purpose. + # This can be used e.g. in UIs which allow to enter the expression. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title @@ -7961,12 +8039,13 @@ module Google # @return [String] attr_accessor :instance - # The IP address represented by this resource. + # A forwarding rule IP address assigned to this instance. # Corresponds to the JSON property `ipAddress` # @return [String] attr_accessor :ip_address - # The port on the instance. + # The named port of the instance group, not necessarily the port that is health- + # checked. # Corresponds to the JSON property `port` # @return [Fixnum] attr_accessor :port @@ -10414,9 +10493,9 @@ module Google # @return [Array] attr_accessor :target_pools - # The target number of running instances for this managed instance group. - # Deleting or abandoning instances reduces this number. Resizing the group - # changes this number. + # The target number of running instances for this managed instance group. You + # can reduce this number by using the instanceGroupManager deleteInstances or + # abandonInstances methods. Resizing the group also changes this number. # Corresponds to the JSON property `targetSize` # @return [Fixnum] attr_accessor :target_size @@ -24273,6 +24352,30 @@ module Google # @return [Google::Apis::ComputeV1::SecurityPolicyRuleMatcherConfig] attr_accessor :config + # Represents a textual expression in the Common Expression Language (CEL) syntax. + # CEL is a C-like expression language. The syntax and semantics of CEL are + # documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" description: "Determines if a summary is less than + # 100 chars" expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" description: "Determines if requestor is the + # document owner" expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" description: "Determine whether the document should + # be publicly visible" expression: "document.type != 'private' && document.type ! + # = 'internal'" + # Example (Data Manipulation): + # title: "Notification string" description: "Create a notification string with a + # timestamp." expression: "'New message received at ' + string(document. + # create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service documentation + # for additional information. + # Corresponds to the JSON property `expr` + # @return [Google::Apis::ComputeV1::Expr] + attr_accessor :expr + # Preconfigured versioned expression. If this field is specified, config must # also be specified. Available preconfigured expressions along with their # requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range @@ -24288,6 +24391,7 @@ module Google # Update properties of this object def update!(**args) @config = args[:config] if args.key?(:config) + @expr = args[:expr] if args.key?(:expr) @versioned_expr = args[:versioned_expr] if args.key?(:versioned_expr) end end diff --git a/generated/google/apis/compute_v1/representations.rb b/generated/google/apis/compute_v1/representations.rb index a2891b6ed..7d2974b58 100644 --- a/generated/google/apis/compute_v1/representations.rb +++ b/generated/google/apis/compute_v1/representations.rb @@ -394,6 +394,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class BackendServiceLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class BackendServiceReference class Representation < Google::Apis::Core::JsonRepresentation; end @@ -4992,7 +4998,10 @@ module Google property :kind, as: 'kind' property :load_balancing_scheme, as: 'loadBalancingScheme' property :locality_lb_policy, as: 'localityLbPolicy' + property :log_config, as: 'logConfig', class: Google::Apis::ComputeV1::BackendServiceLogConfig, decorator: Google::Apis::ComputeV1::BackendServiceLogConfig::Representation + property :name, as: 'name' + property :network, as: 'network' property :outlier_detection, as: 'outlierDetection', class: Google::Apis::ComputeV1::OutlierDetection, decorator: Google::Apis::ComputeV1::OutlierDetection::Representation property :port, as: 'port' @@ -5099,6 +5108,14 @@ module Google end end + class BackendServiceLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enable, as: 'enable' + property :sample_rate, as: 'sampleRate' + end + end + class BackendServiceReference # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -10364,6 +10381,8 @@ module Google class Representation < Google::Apis::Core::JsonRepresentation property :config, as: 'config', class: Google::Apis::ComputeV1::SecurityPolicyRuleMatcherConfig, decorator: Google::Apis::ComputeV1::SecurityPolicyRuleMatcherConfig::Representation + property :expr, as: 'expr', class: Google::Apis::ComputeV1::Expr, decorator: Google::Apis::ComputeV1::Expr::Representation + property :versioned_expr, as: 'versionedExpr' end end diff --git a/generated/google/apis/fitness_v1.rb b/generated/google/apis/fitness_v1.rb index 00c69259c..a4cf8f028 100644 --- a/generated/google/apis/fitness_v1.rb +++ b/generated/google/apis/fitness_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/fit/rest/ module FitnessV1 VERSION = 'V1' - REVISION = '20200119' + REVISION = '20200213' # Use Google Fit to see and store your physical activity data AUTH_FITNESS_ACTIVITY_READ = 'https://www.googleapis.com/auth/fitness.activity.read' diff --git a/generated/google/apis/fitness_v1/classes.rb b/generated/google/apis/fitness_v1/classes.rb index ed981c777..0151ce89b 100644 --- a/generated/google/apis/fitness_v1/classes.rb +++ b/generated/google/apis/fitness_v1/classes.rb @@ -77,17 +77,22 @@ module Google class AggregateBy include Google::Apis::Core::Hashable - # A data source ID to aggregate. Mutually exclusive of dataTypeName. Only data - # from the specified data source ID will be included in the aggregation. The - # dataset in the response will have the same data source ID. + # A data source ID to aggregate. Only data from the specified data source ID + # will be included in the aggregation. If specified, this data source must exist; + # the OAuth scopes in the supplied credentials must grant read access to this + # data type. The dataset in the response will have the same data source ID. Note: + # Data can be aggregated by either the dataTypeName or the dataSourceId, not + # both. # Corresponds to the JSON property `dataSourceId` # @return [String] attr_accessor :data_source_id # The data type to aggregate. All data sources providing this data type will # contribute data to the aggregation. The response will contain a single dataset - # for this data type name. The dataset will have a data source ID of derived:com. - # google.:com.google.android.gms:aggregated + # for this data type name. The dataset will have a data source ID of derived:: + # com.google.android.gms:aggregated. If the user has no data for this data type, + # an empty data set will be returned. Note: Data can be aggregated by either the + # dataTypeName or the dataSourceId, not both. # Corresponds to the JSON property `dataTypeName` # @return [String] attr_accessor :data_type_name diff --git a/generated/google/apis/fitness_v1/service.rb b/generated/google/apis/fitness_v1/service.rb index 08f37e54e..dc65d7f8c 100644 --- a/generated/google/apis/fitness_v1/service.rb +++ b/generated/google/apis/fitness_v1/service.rb @@ -70,7 +70,7 @@ module Google # generate. This format is a combination of some fields from the data source, # and has a specific order. If it doesn't match, the request will fail with an # error. - # In addition to the data source fields reflected into the data source ID, the + # In addition to the data source fields included in the data source ID, the # developer project number that is authenticated when creating the data source # is included. This developer project number is obfuscated when read by any # other developer reading public data types. diff --git a/generated/google/apis/healthcare_v1beta1.rb b/generated/google/apis/healthcare_v1beta1.rb index 2a4a6bda9..606570a5b 100644 --- a/generated/google/apis/healthcare_v1beta1.rb +++ b/generated/google/apis/healthcare_v1beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/healthcare module HealthcareV1beta1 VERSION = 'V1beta1' - REVISION = '20200131' + REVISION = '20200212' # 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/healthcare_v1beta1/classes.rb b/generated/google/apis/healthcare_v1beta1/classes.rb index 2df81ea52..da9bbc22d 100644 --- a/generated/google/apis/healthcare_v1beta1/classes.rb +++ b/generated/google/apis/healthcare_v1beta1/classes.rb @@ -513,9 +513,9 @@ module Google # * The destination dataset must exist. # * The source dataset and destination dataset must both reside in the same # project. De-identifying data across multiple projects is not supported. - # * The destination FHIR store must not exist. - # * The caller must have the necessary permissions to create the destination - # FHIR store. + # * The destination FHIR store must exist. + # * The caller must have the healthcare.fhirResources.update permission to + # write to the destination FHIR store. # Corresponds to the JSON property `destinationStore` # @return [String] attr_accessor :destination_store diff --git a/generated/google/apis/jobs_v2.rb b/generated/google/apis/jobs_v2.rb index 94e2cc7fd..593bf4177 100644 --- a/generated/google/apis/jobs_v2.rb +++ b/generated/google/apis/jobs_v2.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/talent-solution/job-search/docs/ module JobsV2 VERSION = 'V2' - REVISION = '20191030' + REVISION = '20200219' # 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/jobs_v3.rb b/generated/google/apis/jobs_v3.rb index 252fa6337..af77e1600 100644 --- a/generated/google/apis/jobs_v3.rb +++ b/generated/google/apis/jobs_v3.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/talent-solution/job-search/docs/ module JobsV3 VERSION = 'V3' - REVISION = '20200109' + REVISION = '20200219' # 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.rb b/generated/google/apis/monitoring_v3.rb index 9803544bd..003436fc6 100644 --- a/generated/google/apis/monitoring_v3.rb +++ b/generated/google/apis/monitoring_v3.rb @@ -30,7 +30,7 @@ module Google # @see https://cloud.google.com/monitoring/api/ module MonitoringV3 VERSION = 'V3' - REVISION = '20200210' + REVISION = '20200219' # 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 9372eaa86..0be824aa9 100644 --- a/generated/google/apis/monitoring_v3/classes.rb +++ b/generated/google/apis/monitoring_v3/classes.rb @@ -2089,12 +2089,13 @@ module Google # @return [String] attr_accessor :duration - # A filter that identifies which time series should be compared with the - # threshold.The filter is similar to the one that is specified in the - # ListTimeSeries request (that call is useful to verify the time series that - # will be retrieved / processed) and must specify the metric type and optionally - # may contain restrictions on resource type, resource labels, and metric labels. - # This field may not exceed 2048 Unicode characters in length. + # A filter (https://cloud.google.com/monitoring/api/v3/filters) that identifies + # which time series should be compared with the threshold.The filter is similar + # to the one that is specified in the ListTimeSeries request (that call is + # useful to verify the time series that will be retrieved / processed) and must + # specify the metric type and optionally may contain restrictions on resource + # type, resource labels, and metric labels. This field may not exceed 2048 + # Unicode characters in length. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter @@ -2390,12 +2391,13 @@ module Google # @return [Array] attr_accessor :denominator_aggregations - # A filter that identifies a time series that should be used as the denominator - # of a ratio that will be compared with the threshold. If a denominator_filter - # is specified, the time series specified by the filter field will be used as - # the numerator.The filter must specify the metric type and optionally may - # contain restrictions on resource type, resource labels, and metric labels. - # This field may not exceed 2048 Unicode characters in length. + # A filter (https://cloud.google.com/monitoring/api/v3/filters) that identifies + # a time series that should be used as the denominator of a ratio that will be + # compared with the threshold. If a denominator_filter is specified, the time + # series specified by the filter field will be used as the numerator.The filter + # must specify the metric type and optionally may contain restrictions on + # resource type, resource labels, and metric labels. This field may not exceed + # 2048 Unicode characters in length. # Corresponds to the JSON property `denominatorFilter` # @return [String] attr_accessor :denominator_filter @@ -2413,12 +2415,13 @@ module Google # @return [String] attr_accessor :duration - # A filter that identifies which time series should be compared with the - # threshold.The filter is similar to the one that is specified in the - # ListTimeSeries request (that call is useful to verify the time series that - # will be retrieved / processed) and must specify the metric type and optionally - # may contain restrictions on resource type, resource labels, and metric labels. - # This field may not exceed 2048 Unicode characters in length. + # A filter (https://cloud.google.com/monitoring/api/v3/filters) that identifies + # which time series should be compared with the threshold.The filter is similar + # to the one that is specified in the ListTimeSeries request (that call is + # useful to verify the time series that will be retrieved / processed) and must + # specify the metric type and optionally may contain restrictions on resource + # type, resource labels, and metric labels. This field may not exceed 2048 + # Unicode characters in length. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter diff --git a/generated/google/apis/monitoring_v3/service.rb b/generated/google/apis/monitoring_v3/service.rb index 7d4239fc9..b7a70ff72 100644 --- a/generated/google/apis/monitoring_v3/service.rb +++ b/generated/google/apis/monitoring_v3/service.rb @@ -164,12 +164,13 @@ module Google # @param [String] filter # If provided, this field specifies the criteria that must be met by alert # policies to be included in the response.For more details, see sorting and - # filtering. + # filtering (https://cloud.google.com/monitoring/api/v3/sorting-and-filtering). # @param [String] order_by # A comma-separated list of fields by which to sort the result. Supports the # same set of field references as the filter field. Entries can be prefixed with # a minus sign to sort by the field in descending order.For more details, see - # sorting and filtering. + # sorting and filtering (https://cloud.google.com/monitoring/api/v3/sorting-and- + # filtering). # @param [Fixnum] page_size # The maximum number of results to return in a single response. # @param [String] page_token @@ -511,10 +512,11 @@ module Google # Required. The group whose members are listed. The format is: # projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID] # @param [String] filter - # An optional list filter describing the members to be returned. The filter may - # reference the type, labels, and metadata of monitored resources that comprise - # the group. For example, to return only resources representing Compute Engine - # VM instances, use this filter: + # An optional list filter (https://cloud.google.com/monitoring/api/learn_more# + # filtering) describing the members to be returned. The filter may reference the + # type, labels, and metadata of monitored resources that comprise the group. For + # example, to return only resources representing Compute Engine VM instances, + # use this filter: # `resource.type = "gce_instance"` # @param [String] interval_end_time # Required. The end of the time interval. @@ -560,7 +562,7 @@ module Google end # Creates a new metric descriptor. User-created metric descriptors define custom - # metrics. + # metrics (https://cloud.google.com/monitoring/custom-metrics). # @param [String] name # Required. The project on which to execute the request. The format is: # projects/[PROJECT_ID_OR_NUMBER] @@ -594,7 +596,8 @@ module Google execute_or_queue_command(command, &block) end - # Deletes a metric descriptor. Only user-created custom metrics can be deleted. + # Deletes a metric descriptor. Only user-created custom metrics (https://cloud. + # google.com/monitoring/custom-metrics) can be deleted. # @param [String] name # Required. The metric descriptor on which to execute the request. The format is: # projects/[PROJECT_ID_OR_NUMBER]/metricDescriptors/[METRIC_ID] @@ -667,8 +670,10 @@ module Google # projects/[PROJECT_ID_OR_NUMBER] # @param [String] filter # If this field is empty, all custom and system-defined metric descriptors are - # returned. Otherwise, the filter specifies which metric descriptors are to be - # returned. For example, the following filter matches all custom metrics: + # returned. Otherwise, the filter (https://cloud.google.com/monitoring/api/v3/ + # filters) specifies which metric descriptors are to be returned. For example, + # the following filter matches all custom metrics (https://cloud.google.com/ + # monitoring/custom-metrics): # metric.type = starts_with("custom.googleapis.com/") # @param [Fixnum] page_size # A positive number that is the maximum number of results to return. @@ -745,9 +750,10 @@ module Google # Required. The project on which to execute the request. The format is: # projects/[PROJECT_ID_OR_NUMBER] # @param [String] filter - # An optional filter describing the descriptors to be returned. The filter can - # reference the descriptor's type and labels. For example, the following filter - # returns only Google Compute Engine descriptors that have an id label: + # An optional filter (https://cloud.google.com/monitoring/api/v3/filters) + # describing the descriptors to be returned. The filter can reference the + # descriptor's type and labels. For example, the following filter returns only + # Google Compute Engine descriptors that have an id label: # resource.type = starts_with("gce_") AND resource.label:id # @param [Fixnum] page_size # A positive number that is the maximum number of results to return. @@ -1034,12 +1040,14 @@ module Google # @param [String] filter # If provided, this field specifies the criteria that must be met by # notification channels to be included in the response.For more details, see - # sorting and filtering. + # sorting and filtering (https://cloud.google.com/monitoring/api/v3/sorting-and- + # filtering). # @param [String] order_by # A comma-separated list of fields by which to sort the result. Supports the # same set of fields as in filter. Entries can be prefixed with a minus sign to # sort in descending rather than ascending order.For more details, see sorting - # and filtering. + # and filtering (https://cloud.google.com/monitoring/api/v3/sorting-and- + # filtering). # @param [Fixnum] page_size # The maximum number of results to return in a single response. If not set to a # positive number, a reasonable value will be chosen by the service. @@ -1270,9 +1278,10 @@ module Google # per_series_aligner must be specified and not equal to ALIGN_NONE and # alignment_period must be specified; otherwise, an error is returned. # @param [String] filter - # Required. A monitoring filter that specifies which time series should be - # returned. The filter must specify a single metric type, and can additionally - # specify metric labels and other information. For example: + # Required. A monitoring filter (https://cloud.google.com/monitoring/api/v3/ + # filters) that specifies which time series should be returned. The filter must + # specify a single metric type, and can additionally specify metric labels and + # other information. For example: # metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND # metric.labels.instance_name = "my-instance-name" # @param [String] interval_end_time diff --git a/generated/google/apis/oslogin_v1.rb b/generated/google/apis/oslogin_v1.rb index ac6ae63eb..eff3ecac1 100644 --- a/generated/google/apis/oslogin_v1.rb +++ b/generated/google/apis/oslogin_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/compute/docs/oslogin/ module OsloginV1 VERSION = 'V1' - REVISION = '20200120' + REVISION = '20200215' # 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/oslogin_v1alpha.rb b/generated/google/apis/oslogin_v1alpha.rb index 3d9264331..856f47b9f 100644 --- a/generated/google/apis/oslogin_v1alpha.rb +++ b/generated/google/apis/oslogin_v1alpha.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/compute/docs/oslogin/ module OsloginV1alpha VERSION = 'V1alpha' - REVISION = '20200120' + REVISION = '20200215' # 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/oslogin_v1beta.rb b/generated/google/apis/oslogin_v1beta.rb index 1a6da8d91..27afac4a3 100644 --- a/generated/google/apis/oslogin_v1beta.rb +++ b/generated/google/apis/oslogin_v1beta.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/compute/docs/oslogin/ module OsloginV1beta VERSION = 'V1beta' - REVISION = '20200120' + REVISION = '20200215' # 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/pubsub_v1.rb b/generated/google/apis/pubsub_v1.rb index eed6440f4..58d765d6f 100644 --- a/generated/google/apis/pubsub_v1.rb +++ b/generated/google/apis/pubsub_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/pubsub/docs module PubsubV1 VERSION = 'V1' - REVISION = '20200121' + REVISION = '20200211' # 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/pubsub_v1beta1a.rb b/generated/google/apis/pubsub_v1beta1a.rb index 97777bceb..5cd449a9c 100644 --- a/generated/google/apis/pubsub_v1beta1a.rb +++ b/generated/google/apis/pubsub_v1beta1a.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/pubsub/docs module PubsubV1beta1a VERSION = 'V1beta1a' - REVISION = '20180604' + REVISION = '20200211' # 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/pubsub_v1beta2.rb b/generated/google/apis/pubsub_v1beta2.rb index 71427a273..257df8862 100644 --- a/generated/google/apis/pubsub_v1beta2.rb +++ b/generated/google/apis/pubsub_v1beta2.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/pubsub/docs module PubsubV1beta2 VERSION = 'V1beta2' - REVISION = '20200121' + REVISION = '20200211' # 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/servicemanagement_v1.rb b/generated/google/apis/servicemanagement_v1.rb index c73aa7001..b460dd1b2 100644 --- a/generated/google/apis/servicemanagement_v1.rb +++ b/generated/google/apis/servicemanagement_v1.rb @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/service-management/ module ServicemanagementV1 VERSION = 'V1' - REVISION = '20200207' + REVISION = '20200218' # 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/servicemanagement_v1/classes.rb b/generated/google/apis/servicemanagement_v1/classes.rb index 7ab9c473c..910a3297d 100644 --- a/generated/google/apis/servicemanagement_v1/classes.rb +++ b/generated/google/apis/servicemanagement_v1/classes.rb @@ -477,6 +477,20 @@ module Google include Google::Apis::Core::Hashable # The address of the API backend. + # The scheme is used to determine the backend protocol and security. + # The following schemes are accepted: + # SCHEME PROTOCOL SECURITY + # http:// HTTP None + # https:// HTTP TLS + # grpc:// gRPC None + # grpcs:// gRPC TLS + # It is recommended to explicitly include a scheme. Leaving out the scheme + # may cause constrasting behaviors across platforms. + # If the port is unspecified, the default is: + # - 80 for schemes without TLS + # - 443 for schemes with TLS + # For HTTP backends, use protocol + # to specify the protocol version. # Corresponds to the JSON property `address` # @return [String] attr_accessor :address @@ -520,6 +534,27 @@ module Google # @return [String] attr_accessor :path_translation + # The protocol used for sending a request to the backend. + # The supported values are "http/1.1" and "h2". + # The default value is inferred from the scheme in the + # address field: + # SCHEME PROTOCOL + # http:// http/1.1 + # https:// http/1.1 + # grpc:// h2 + # grpcs:// h2 + # For secure HTTP backends (https://) that support HTTP/2, set this field + # to "h2" for improved performance. + # Configuring this field to non-default values is only supported for secure + # HTTP backends. This field will be ignored for all other backends. + # See + # https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype- + # values.xhtml#alpn-protocol-ids + # for more details on the supported values. + # Corresponds to the JSON property `protocol` + # @return [String] + attr_accessor :protocol + # Selects the methods to which this rule applies. # Refer to selector for syntax details. # Corresponds to the JSON property `selector` @@ -539,6 +574,7 @@ module Google @min_deadline = args[:min_deadline] if args.key?(:min_deadline) @operation_deadline = args[:operation_deadline] if args.key?(:operation_deadline) @path_translation = args[:path_translation] if args.key?(:path_translation) + @protocol = args[:protocol] if args.key?(:protocol) @selector = args[:selector] if args.key?(:selector) end end diff --git a/generated/google/apis/servicemanagement_v1/representations.rb b/generated/google/apis/servicemanagement_v1/representations.rb index 0be3f380a..bc9e5fda0 100644 --- a/generated/google/apis/servicemanagement_v1/representations.rb +++ b/generated/google/apis/servicemanagement_v1/representations.rb @@ -656,6 +656,7 @@ module Google property :min_deadline, as: 'minDeadline' property :operation_deadline, as: 'operationDeadline' property :path_translation, as: 'pathTranslation' + property :protocol, as: 'protocol' property :selector, as: 'selector' end end diff --git a/generated/google/apis/tagmanager_v1.rb b/generated/google/apis/tagmanager_v1.rb index c8ac47b48..6bad3e5b9 100644 --- a/generated/google/apis/tagmanager_v1.rb +++ b/generated/google/apis/tagmanager_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/tag-manager module TagmanagerV1 VERSION = 'V1' - REVISION = '20200213' + REVISION = '20200220' # Delete your Google Tag Manager containers AUTH_TAGMANAGER_DELETE_CONTAINERS = 'https://www.googleapis.com/auth/tagmanager.delete.containers' diff --git a/generated/google/apis/tagmanager_v2.rb b/generated/google/apis/tagmanager_v2.rb index ec7aeaa15..4acae46ea 100644 --- a/generated/google/apis/tagmanager_v2.rb +++ b/generated/google/apis/tagmanager_v2.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/tag-manager module TagmanagerV2 VERSION = 'V2' - REVISION = '20200213' + REVISION = '20200220' # Delete your Google Tag Manager containers AUTH_TAGMANAGER_DELETE_CONTAINERS = 'https://www.googleapis.com/auth/tagmanager.delete.containers' diff --git a/generated/google/apis/youtube_partner_v1.rb b/generated/google/apis/youtube_partner_v1.rb index 228b40519..151634cb4 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 = '20200202' + REVISION = '20200212' # View and manage your assets and associated content on YouTube AUTH_YOUTUBEPARTNER = 'https://www.googleapis.com/auth/youtubepartner'