diff --git a/api_names_out.yaml b/api_names_out.yaml index 9432dbc325b..02ae6c14b5f 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -55477,6 +55477,19 @@ "/beyondcorp:v1alpha/fields": fields "/beyondcorp:v1alpha/key": key "/beyondcorp:v1alpha/quotaUser": quota_user +"/biglake:v1/AuditConfig": audit_config +"/biglake:v1/AuditConfig/auditLogConfigs": audit_log_configs +"/biglake:v1/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config +"/biglake:v1/AuditConfig/service": service +"/biglake:v1/AuditLogConfig": audit_log_config +"/biglake:v1/AuditLogConfig/exemptedMembers": exempted_members +"/biglake:v1/AuditLogConfig/exemptedMembers/exempted_member": exempted_member +"/biglake:v1/AuditLogConfig/logType": log_type +"/biglake:v1/Binding": binding +"/biglake:v1/Binding/condition": condition +"/biglake:v1/Binding/members": members +"/biglake:v1/Binding/members/member": member +"/biglake:v1/Binding/role": role "/biglake:v1/Catalog": catalog "/biglake:v1/Catalog/createTime": create_time "/biglake:v1/Catalog/deleteTime": delete_time @@ -55491,6 +55504,11 @@ "/biglake:v1/Database/name": name "/biglake:v1/Database/type": type "/biglake:v1/Database/updateTime": update_time +"/biglake:v1/Expr": expr +"/biglake:v1/Expr/description": description +"/biglake:v1/Expr/expression": expression +"/biglake:v1/Expr/location": location +"/biglake:v1/Expr/title": title "/biglake:v1/HiveDatabaseOptions": hive_database_options "/biglake:v1/HiveDatabaseOptions/locationUri": location_uri "/biglake:v1/HiveDatabaseOptions/parameters": parameters @@ -55512,10 +55530,20 @@ "/biglake:v1/ListTablesResponse/nextPageToken": next_page_token "/biglake:v1/ListTablesResponse/tables": tables "/biglake:v1/ListTablesResponse/tables/table": table +"/biglake:v1/Policy": policy +"/biglake:v1/Policy/auditConfigs": audit_configs +"/biglake:v1/Policy/auditConfigs/audit_config": audit_config +"/biglake:v1/Policy/bindings": bindings +"/biglake:v1/Policy/bindings/binding": binding +"/biglake:v1/Policy/etag": etag +"/biglake:v1/Policy/version": version "/biglake:v1/RenameTableRequest": rename_table_request "/biglake:v1/RenameTableRequest/newName": new_name "/biglake:v1/SerDeInfo": ser_de_info "/biglake:v1/SerDeInfo/serializationLib": serialization_lib +"/biglake:v1/SetIamPolicyRequest": set_iam_policy_request +"/biglake:v1/SetIamPolicyRequest/policy": policy +"/biglake:v1/SetIamPolicyRequest/updateMask": update_mask "/biglake:v1/StorageDescriptor": storage_descriptor "/biglake:v1/StorageDescriptor/inputFormat": input_format "/biglake:v1/StorageDescriptor/locationUri": location_uri @@ -55530,6 +55558,16 @@ "/biglake:v1/Table/name": name "/biglake:v1/Table/type": type "/biglake:v1/Table/updateTime": update_time +"/biglake:v1/biglake.projects.catalogs.getIamPolicy": get_project_catalog_iam_policy +"/biglake:v1/biglake.projects.catalogs.getIamPolicy/options.requestedPolicyVersion": options_requested_policy_version +"/biglake:v1/biglake.projects.catalogs.getIamPolicy/resource": resource +"/biglake:v1/biglake.projects.catalogs.namespaces.getIamPolicy": get_project_catalog_namespace_iam_policy +"/biglake:v1/biglake.projects.catalogs.namespaces.getIamPolicy/options.requestedPolicyVersion": options_requested_policy_version +"/biglake:v1/biglake.projects.catalogs.namespaces.getIamPolicy/resource": resource +"/biglake:v1/biglake.projects.catalogs.namespaces.setIamPolicy": set_namespace_iam_policy +"/biglake:v1/biglake.projects.catalogs.namespaces.setIamPolicy/resource": resource +"/biglake:v1/biglake.projects.catalogs.setIamPolicy": set_catalog_iam_policy +"/biglake:v1/biglake.projects.catalogs.setIamPolicy/resource": resource "/biglake:v1/biglake.projects.locations.catalogs.create": create_project_location_catalog "/biglake:v1/biglake.projects.locations.catalogs.create/catalogId": catalog_id "/biglake:v1/biglake.projects.locations.catalogs.create/parent": parent diff --git a/generated/google-apis-biglake_v1/CHANGELOG.md b/generated/google-apis-biglake_v1/CHANGELOG.md index 0d2c2c43f9f..b8f73dbf183 100644 --- a/generated/google-apis-biglake_v1/CHANGELOG.md +++ b/generated/google-apis-biglake_v1/CHANGELOG.md @@ -1,5 +1,10 @@ # Release history for google-apis-biglake_v1 +### v0.6.0 (2025-11-09) + +* Regenerated from discovery document revision 20251027 +* Regenerated using generator version 0.18.0 + ### v0.5.0 (2025-05-04) * Regenerated using generator version 0.17.0 diff --git a/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/classes.rb b/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/classes.rb index 1a2c2cc170e..57f1736493f 100644 --- a/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/classes.rb +++ b/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/classes.rb @@ -22,6 +22,178 @@ module Google module Apis module BiglakeV1 + # Specifies the audit configuration for a service. The configuration determines + # which permission types are logged, and what identities, if any, are exempted + # from logging. An AuditConfig must have one or more AuditLogConfigs. If there + # are AuditConfigs for both `allServices` and a specific service, the union of + # the two AuditConfigs is used for that service: the log_types specified in each + # AuditConfig are enabled, and the exempted_members in each AuditLogConfig are + # exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` " + # service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", " + # exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `, + # ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com", + # "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE" + # , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice, + # this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also + # exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` + # from DATA_WRITE logging. + class AuditConfig + include Google::Apis::Core::Hashable + + # The configuration for logging of each type of permission. + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + + # Specifies a service that will be enabled for audit logging. For example, ` + # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special + # value that covers all services. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @service = args[:service] if args.key?(:service) + end + end + + # Provides the configuration for logging a type of permissions. Example: ` " + # audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user: + # jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables ' + # DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from + # DATA_READ logging. + class AuditLogConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that do not cause logging for this type of permission. + # Follows the same format of Binding.members. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # The log type that this config enables. + # Corresponds to the JSON property `logType` + # @return [String] + attr_accessor :log_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) + end + end + + # Associates `members`, or principals, with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # 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::BiglakeV1::Expr] + attr_accessor :condition + + # Specifies the principals requesting access for a Google Cloud resource. ` + # members` can have the following values: * `allUsers`: A special identifier + # that represents anyone who is on the internet; with or without a Google + # account. * `allAuthenticatedUsers`: A special identifier that represents + # anyone who is authenticated with a Google account or a service account. Does + # not include identities that come from external identity providers (IdPs) + # through identity federation. * `user:`emailid``: An email address that + # represents a specific Google account. For example, `alice@example.com` . * ` + # serviceAccount:`emailid``: An email address that represents a Google service + # account. For example, `my-other-app@appspot.gserviceaccount.com`. * ` + # serviceAccount:`projectid`.svc.id.goog[`namespace`/`kubernetes-sa`]`: An + # identifier for a [Kubernetes service account](https://cloud.google.com/ + # kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my- + # project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An + # email address that represents a Google group. For example, `admins@example.com` + # . * `domain:`domain``: The G Suite domain (primary) that represents all the + # users of that domain. For example, `google.com` or `example.com`. * `principal: + # //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/` + # subject_attribute_value``: A single identity in a workforce identity pool. * ` + # principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/ + # group/`group_id``: All workforce identities in a group. * `principalSet://iam. + # googleapis.com/locations/global/workforcePools/`pool_id`/attribute.` + # attribute_name`/`attribute_value``: All workforce identities with a specific + # attribute value. * `principalSet://iam.googleapis.com/locations/global/ + # workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * ` + # principal://iam.googleapis.com/projects/`project_number`/locations/global/ + # workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single + # identity in a workload identity pool. * `principalSet://iam.googleapis.com/ + # projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/ + # group/`group_id``: A workload identity pool group. * `principalSet://iam. + # googleapis.com/projects/`project_number`/locations/global/ + # workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``: + # All identities in a workload identity pool with a certain attribute. * ` + # principalSet://iam.googleapis.com/projects/`project_number`/locations/global/ + # workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool. + # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique + # identifier) representing a user that has been recently deleted. For example, ` + # alice@example.com?uid=123456789012345678901`. If the user is recovered, this + # value reverts to `user:`emailid`` and the recovered user retains the role in + # the binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email + # address (plus unique identifier) representing a service account that has been + # recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid= + # 123456789012345678901`. If the service account is undeleted, this value + # reverts to `serviceAccount:`emailid`` and the undeleted service account + # retains the role in the binding. * `deleted:group:`emailid`?uid=`uniqueid``: + # An email address (plus unique identifier) representing a Google group that has + # been recently deleted. For example, `admins@example.com?uid= + # 123456789012345678901`. If the group is recovered, this value reverts to ` + # group:`emailid`` and the recovered group retains the role in the binding. * ` + # deleted:principal://iam.googleapis.com/locations/global/workforcePools/` + # pool_id`/subject/`subject_attribute_value``: Deleted single identity in a + # workforce identity pool. For example, `deleted:principal://iam.googleapis.com/ + # locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to the list of `members`, or principals. For example, ` + # roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM + # roles and permissions, see the [IAM documentation](https://cloud.google.com/ + # iam/docs/roles-overview). For a list of the available pre-defined roles, see [ + # here](https://cloud.google.com/iam/docs/understanding-roles). + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @condition = args[:condition] if args.key?(:condition) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + # Catalog is the container of databases. class Catalog include Google::Apis::Core::Hashable @@ -126,6 +298,60 @@ def update!(**args) end end + # 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 + + # 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. + # Corresponds to the JSON property `expression` + # @return [String] + attr_accessor :expression + + # 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 + + # 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 + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @expression = args[:expression] if args.key?(:expression) + @location = args[:location] if args.key?(:location) + @title = args[:title] if args.key?(:title) + end + end + # Options of a Hive database. class HiveDatabaseOptions include Google::Apis::Core::Hashable @@ -261,6 +487,101 @@ def update!(**args) end end + # An Identity and Access Management (IAM) policy, which specifies access + # controls for Google Cloud resources. A `Policy` is a collection of `bindings`. + # A `binding` binds one or more `members`, or principals, to a single `role`. + # Principals can be user accounts, service accounts, Google groups, and domains ( + # such as G Suite). A `role` is a named list of permissions; each `role` can be + # an IAM predefined role or a user-created custom role. For some types of Google + # Cloud resources, a `binding` can also specify a `condition`, which is a + # logical expression that allows access to a resource only if the expression + # evaluates to `true`. A condition can add constraints based on attributes of + # the request, the resource, or both. To learn which resources support + # conditions in their IAM policies, see the [IAM documentation](https://cloud. + # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` " + # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [ + # "user:mike@example.com", "group:admins@example.com", "domain:google.com", " + # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": " + # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" + # ], "condition": ` "title": "expirable access", "description": "Does not grant + # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00: + # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML + # example:** ``` bindings: - members: - user:mike@example.com - group:admins@ + # example.com - domain:google.com - serviceAccount:my-project-id@appspot. + # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - + # user:eve@example.com role: roles/resourcemanager.organizationViewer condition: + # title: expirable access description: Does not grant access after Sep 2020 + # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: + # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the + # [IAM documentation](https://cloud.google.com/iam/docs/). + class Policy + include Google::Apis::Core::Hashable + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members`, or principals, with a `role`. Optionally, may + # specify a `condition` that determines how and when the `bindings` are applied. + # Each of the `bindings` must contain at least one principal. The `bindings` in + # a `Policy` can refer to up to 1,500 principals; up to 250 of these principals + # can be Google groups. Each occurrence of a principal counts towards these + # limits. For example, if the `bindings` grant 50 different roles to `user:alice@ + # example.com`, and not to any other principal, then you can add another 1,450 + # principals to the `bindings` in the `Policy`. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `etag` is used for optimistic concurrency control as a way to help prevent + # simultaneous updates of a policy from overwriting each other. It is strongly + # suggested that systems make use of the `etag` in the read-modify-write cycle + # to perform policy updates in order to avoid race conditions: An `etag` is + # returned in the response to `getIamPolicy`, and systems are expected to put + # that etag in the request to `setIamPolicy` to ensure that their change will be + # applied to the same version of the policy. **Important:** If you use IAM + # Conditions, you must include the `etag` field whenever you call `setIamPolicy`. + # If you omit this field, then IAM allows you to overwrite a version `3` policy + # with a version `1` policy, and all of the conditions in the version `3` policy + # are lost. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # Specifies the format of the policy. Valid values are `0`, `1`, and `3`. + # Requests that specify an invalid value are rejected. Any operation that + # affects conditional role bindings must specify version `3`. This requirement + # applies to the following operations: * Getting a policy that includes a + # conditional role binding * Adding a conditional role binding to a policy * + # Changing a conditional role binding in a policy * Removing any role binding, + # with or without a condition, from a policy that includes conditions ** + # Important:** If you use IAM Conditions, you must include the `etag` field + # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you + # to overwrite a version `3` policy with a version `1` policy, and all of the + # conditions in the version `3` policy are lost. If a policy does not include + # any conditions, operations on that policy may specify any valid version or + # leave the field unset. To learn which resources support conditions in their + # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/ + # conditions/resource-policies). + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @version = args[:version] if args.key?(:version) + end + end + # Request message for the RenameTable method in MetastoreService class RenameTableRequest include Google::Apis::Core::Hashable @@ -301,6 +622,59 @@ def update!(**args) end end + # Request message for `SetIamPolicy` method. + class SetIamPolicyRequest + include Google::Apis::Core::Hashable + + # An Identity and Access Management (IAM) policy, which specifies access + # controls for Google Cloud resources. A `Policy` is a collection of `bindings`. + # A `binding` binds one or more `members`, or principals, to a single `role`. + # Principals can be user accounts, service accounts, Google groups, and domains ( + # such as G Suite). A `role` is a named list of permissions; each `role` can be + # an IAM predefined role or a user-created custom role. For some types of Google + # Cloud resources, a `binding` can also specify a `condition`, which is a + # logical expression that allows access to a resource only if the expression + # evaluates to `true`. A condition can add constraints based on attributes of + # the request, the resource, or both. To learn which resources support + # conditions in their IAM policies, see the [IAM documentation](https://cloud. + # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` " + # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [ + # "user:mike@example.com", "group:admins@example.com", "domain:google.com", " + # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": " + # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" + # ], "condition": ` "title": "expirable access", "description": "Does not grant + # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00: + # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML + # example:** ``` bindings: - members: - user:mike@example.com - group:admins@ + # example.com - domain:google.com - serviceAccount:my-project-id@appspot. + # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - + # user:eve@example.com role: roles/resourcemanager.organizationViewer condition: + # title: expirable access description: Does not grant access after Sep 2020 + # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: + # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the + # [IAM documentation](https://cloud.google.com/iam/docs/). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::BiglakeV1::Policy] + attr_accessor :policy + + # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + # the fields in the mask will be modified. If no mask is provided, the following + # default mask is used: `paths: "bindings, etag"` + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + # Stores physical storage information of the data. class StorageDescriptor include Google::Apis::Core::Hashable diff --git a/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/gem_version.rb b/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/gem_version.rb index 2e9359ea6c5..e830f6ce8a5 100644 --- a/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/gem_version.rb +++ b/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/gem_version.rb @@ -16,13 +16,13 @@ module Google module Apis module BiglakeV1 # Version of the google-apis-biglake_v1 gem - GEM_VERSION = "0.5.0" + GEM_VERSION = "0.6.0" # Version of the code generator used to generate this client - GENERATOR_VERSION = "0.17.0" + GENERATOR_VERSION = "0.18.0" # Revision of the discovery document this client was generated from - REVISION = "20231016" + REVISION = "20251027" end end end diff --git a/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/representations.rb b/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/representations.rb index 64d05c842b9..6753fccf6fc 100644 --- a/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/representations.rb +++ b/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/representations.rb @@ -22,6 +22,24 @@ module Google module Apis module BiglakeV1 + class AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Catalog class Representation < Google::Apis::Core::JsonRepresentation; end @@ -34,6 +52,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Expr + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class HiveDatabaseOptions class Representation < Google::Apis::Core::JsonRepresentation; end @@ -64,6 +88,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class RenameTableRequest class Representation < Google::Apis::Core::JsonRepresentation; end @@ -76,6 +106,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class SetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class StorageDescriptor class Representation < Google::Apis::Core::JsonRepresentation; end @@ -88,6 +124,33 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::BiglakeV1::AuditLogConfig, decorator: Google::Apis::BiglakeV1::AuditLogConfig::Representation + + property :service, as: 'service' + end + end + + class AuditLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :condition, as: 'condition', class: Google::Apis::BiglakeV1::Expr, decorator: Google::Apis::BiglakeV1::Expr::Representation + + collection :members, as: 'members' + property :role, as: 'role' + end + end + class Catalog # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -113,6 +176,16 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class Expr + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :expression, as: 'expression' + property :location, as: 'location' + property :title, as: 'title' + end + end + class HiveDatabaseOptions # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -158,6 +231,18 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::BiglakeV1::AuditConfig, decorator: Google::Apis::BiglakeV1::AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::BiglakeV1::Binding, decorator: Google::Apis::BiglakeV1::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :version, as: 'version' + end + end + class RenameTableRequest # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -172,6 +257,15 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::BiglakeV1::Policy, decorator: Google::Apis::BiglakeV1::Policy::Representation + + property :update_mask, as: 'updateMask' + end + end + class StorageDescriptor # @private class Representation < Google::Apis::Core::JsonRepresentation diff --git a/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/service.rb b/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/service.rb index c10d5d125dc..14a5e346b8c 100644 --- a/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/service.rb +++ b/generated/google-apis-biglake_v1/lib/google/apis/biglake_v1/service.rb @@ -53,6 +53,164 @@ def initialize @batch_path = 'batch' end + # Gets the IAM policy for the specified Catalog. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. See [Resource + # names](https://cloud.google.com/apis/design/resource_names) for the + # appropriate value for this field. + # @param [Fixnum] options_requested_policy_version + # Optional. The maximum policy version that will be used to format the policy. + # Valid values are 0, 1, and 3. Requests specifying an invalid value will be + # rejected. Requests for policies with any conditional role bindings must + # specify version 3. Policies with no conditional role bindings may specify any + # valid value or leave the field unset. The policy in the response might use the + # policy version that you specified, or it might use a lower policy version. For + # example, if you specify version 3, but the policy has no conditional role + # bindings, the response uses version 1. To learn which resources support + # conditions in their IAM policies, see the [IAM documentation](https://cloud. + # google.com/iam/help/conditions/resource-policies). + # @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::BiglakeV1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BiglakeV1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_catalog_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::BiglakeV1::Policy::Representation + command.response_class = Google::Apis::BiglakeV1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the IAM policy for the specified catalog. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. See [Resource + # names](https://cloud.google.com/apis/design/resource_names) for the + # appropriate value for this field. + # @param [Google::Apis::BiglakeV1::SetIamPolicyRequest] set_iam_policy_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::BiglakeV1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BiglakeV1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_catalog_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::BiglakeV1::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::BiglakeV1::Policy::Representation + command.response_class = Google::Apis::BiglakeV1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the IAM policy for the specified Catalog. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. See [Resource + # names](https://cloud.google.com/apis/design/resource_names) for the + # appropriate value for this field. + # @param [Fixnum] options_requested_policy_version + # Optional. The maximum policy version that will be used to format the policy. + # Valid values are 0, 1, and 3. Requests specifying an invalid value will be + # rejected. Requests for policies with any conditional role bindings must + # specify version 3. Policies with no conditional role bindings may specify any + # valid value or leave the field unset. The policy in the response might use the + # policy version that you specified, or it might use a lower policy version. For + # example, if you specify version 3, but the policy has no conditional role + # bindings, the response uses version 1. To learn which resources support + # conditions in their IAM policies, see the [IAM documentation](https://cloud. + # google.com/iam/help/conditions/resource-policies). + # @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::BiglakeV1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BiglakeV1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_catalog_namespace_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::BiglakeV1::Policy::Representation + command.response_class = Google::Apis::BiglakeV1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the IAM policy for the specified catalog. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. See [Resource + # names](https://cloud.google.com/apis/design/resource_names) for the + # appropriate value for this field. + # @param [Google::Apis::BiglakeV1::SetIamPolicyRequest] set_iam_policy_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::BiglakeV1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BiglakeV1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_namespace_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::BiglakeV1::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::BiglakeV1::Policy::Representation + command.response_class = Google::Apis::BiglakeV1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Creates a new catalog. # @param [String] parent # Required. The parent resource where this catalog will be created. Format: