diff --git a/google/ai/generativelanguage/v1beta2/BUILD.bazel b/google/ai/generativelanguage/v1beta2/BUILD.bazel index 7338d644f4ecfe..3864b1fc4ea00f 100644 --- a/google/ai/generativelanguage/v1beta2/BUILD.bazel +++ b/google/ai/generativelanguage/v1beta2/BUILD.bazel @@ -71,7 +71,7 @@ java_gapic_library( name = "generativelanguage_java_gapic", srcs = [":generativelanguage_proto_with_info"], gapic_yaml = None, - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta2.yaml", test_deps = [ @@ -133,7 +133,7 @@ go_proto_library( go_gapic_library( name = "generativelanguage_go_gapic", srcs = [":generativelanguage_proto_with_info"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", importpath = "cloud.google.com/go/ai/generativelanguage/apiv1beta2;generativelanguage", metadata = True, release_level = "beta", @@ -170,7 +170,7 @@ load( py_gapic_library( name = "generativelanguage_py_gapic", srcs = [":generativelanguage_proto"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta2.yaml", transport = "grpc+rest", @@ -214,7 +214,7 @@ php_proto_library( php_gapic_library( name = "generativelanguage_php_gapic", srcs = [":generativelanguage_proto_with_info"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", migration_mode = "PRE_MIGRATION_SURFACE_ONLY", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta2.yaml", @@ -247,7 +247,7 @@ nodejs_gapic_library( package_name = "@google-ai/generativelanguage", src = ":generativelanguage_proto_with_info", extra_protoc_parameters = ["metadata"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", package = "google.ai.generativelanguage.v1beta2", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta2.yaml", @@ -289,7 +289,7 @@ ruby_cloud_gapic_library( name = "generativelanguage_ruby_gapic", srcs = [":generativelanguage_proto_with_info"], extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-ai-generativelanguage-v1beta2"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta2.yaml", transport = "grpc+rest", @@ -335,7 +335,7 @@ csharp_gapic_library( name = "generativelanguage_csharp_gapic", srcs = [":generativelanguage_proto_with_info"], common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta2.yaml", deps = [ diff --git a/google/ai/generativelanguage/v1main/v1beta2/generativeai_grpc_service_config.json b/google/ai/generativelanguage/v1beta2/generativeai_grpc_service_config.json similarity index 100% rename from google/ai/generativelanguage/v1main/v1beta2/generativeai_grpc_service_config.json rename to google/ai/generativelanguage/v1beta2/generativeai_grpc_service_config.json diff --git a/google/ai/generativelanguage/v1beta3/BUILD.bazel b/google/ai/generativelanguage/v1beta3/BUILD.bazel index 3048f1f0686a6d..3c2cc55b8a72ae 100644 --- a/google/ai/generativelanguage/v1beta3/BUILD.bazel +++ b/google/ai/generativelanguage/v1beta3/BUILD.bazel @@ -78,7 +78,7 @@ java_gapic_library( name = "generativelanguage_java_gapic", srcs = [":generativelanguage_proto_with_info"], gapic_yaml = None, - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta3.yaml", test_deps = [ @@ -143,7 +143,7 @@ go_proto_library( go_gapic_library( name = "generativelanguage_go_gapic", srcs = [":generativelanguage_proto_with_info"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", importpath = "cloud.google.com/go/ai/generativelanguage/apiv1beta3;generativelanguage", metadata = True, release_level = "beta", @@ -183,7 +183,7 @@ load( py_gapic_library( name = "generativelanguage_py_gapic", srcs = [":generativelanguage_proto"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta3.yaml", transport = "grpc+rest", @@ -227,7 +227,7 @@ php_proto_library( php_gapic_library( name = "generativelanguage_php_gapic", srcs = [":generativelanguage_proto_with_info"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", migration_mode = "PRE_MIGRATION_SURFACE_ONLY", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta3.yaml", @@ -260,7 +260,7 @@ nodejs_gapic_library( package_name = "@google-ai/generativelanguage", src = ":generativelanguage_proto_with_info", extra_protoc_parameters = ["metadata"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", package = "google.ai.generativelanguage.v1beta3", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta3.yaml", @@ -302,7 +302,7 @@ ruby_cloud_gapic_library( name = "generativelanguage_ruby_gapic", srcs = [":generativelanguage_proto_with_info"], extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-ai-generativelanguage-v1beta3"], - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta3.yaml", transport = "grpc+rest", @@ -349,7 +349,7 @@ csharp_gapic_library( name = "generativelanguage_csharp_gapic", srcs = [":generativelanguage_proto_with_info"], common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", - grpc_service_config = None, + grpc_service_config = "generativeai_grpc_service_config.json", rest_numeric_enums = True, service_yaml = "generativelanguage_v1beta3.yaml", deps = [ diff --git a/google/ai/generativelanguage/v1main/v1beta3/generativeai_grpc_service_config.json b/google/ai/generativelanguage/v1beta3/generativeai_grpc_service_config.json similarity index 100% rename from google/ai/generativelanguage/v1main/v1beta3/generativeai_grpc_service_config.json rename to google/ai/generativelanguage/v1beta3/generativeai_grpc_service_config.json diff --git a/google/cloud/batch/v1/job.proto b/google/cloud/batch/v1/job.proto index 4eba598ed6bc89..8c75f5b2d21e8f 100644 --- a/google/cloud/batch/v1/job.proto +++ b/google/cloud/batch/v1/job.proto @@ -549,7 +549,8 @@ message TaskGroup { int64 task_count = 4; // Max number of tasks that can run in parallel. - // Default to min(task_count, 1000). + // Default to min(task_count, parallel tasks per job limit). + // See: [Job Limits](https://cloud.google.com/batch/quotas#job_limits). // Field parallelism must be 1 if the scheduling_policy is IN_ORDER. int64 parallelism = 5; diff --git a/google/cloud/batch/v1alpha/job.proto b/google/cloud/batch/v1alpha/job.proto index 9f88259801dd45..b16094126e182d 100644 --- a/google/cloud/batch/v1alpha/job.proto +++ b/google/cloud/batch/v1alpha/job.proto @@ -628,7 +628,8 @@ message TaskGroup { int64 task_count = 4; // Max number of tasks that can run in parallel. - // Default to min(task_count, 1000). + // Default to min(task_count, parallel tasks per job limit). + // See: [Job Limits](https://cloud.google.com/batch/quotas#job_limits). // Field parallelism must be 1 if the scheduling_policy is IN_ORDER. int64 parallelism = 5; diff --git a/google/cloud/dataplex/v1/dataplex_v1.yaml b/google/cloud/dataplex/v1/dataplex_v1.yaml index 9ac332430111b7..1a237c41cc36e6 100644 --- a/google/cloud/dataplex/v1/dataplex_v1.yaml +++ b/google/cloud/dataplex/v1/dataplex_v1.yaml @@ -17,6 +17,7 @@ types: - name: google.cloud.dataplex.v1.DataQualityScanRuleResult - name: google.cloud.dataplex.v1.DataScanEvent - name: google.cloud.dataplex.v1.DiscoveryEvent +- name: google.cloud.dataplex.v1.GovernanceEvent - name: google.cloud.dataplex.v1.JobEvent - name: google.cloud.dataplex.v1.OperationMetadata - name: google.cloud.dataplex.v1.SessionEvent diff --git a/google/cloud/dataplex/v1/logs.proto b/google/cloud/dataplex/v1/logs.proto index 191327b375039f..0691afbbbafdb8 100644 --- a/google/cloud/dataplex/v1/logs.proto +++ b/google/cloud/dataplex/v1/logs.proto @@ -315,6 +315,86 @@ message SessionEvent { google.protobuf.Duration unassigned_duration = 8; } +// Payload associated with Governance related log events. +message GovernanceEvent { + // Information about Entity resource that the log event is associated with. + message Entity { + // Type of entity. + enum EntityType { + // An unspecified Entity type. + ENTITY_TYPE_UNSPECIFIED = 0; + + // Table entity type. + TABLE = 1; + + // Fileset entity type. + FILESET = 2; + } + + // The Entity resource the log event is associated with. + // Format: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/entities/{entity_id}` + string entity = 1 [(google.api.resource_reference) = { + type: "dataplex.googleapis.com/Entity" + }]; + + // Type of entity. + EntityType entity_type = 2; + } + + // Type of governance log event. + enum EventType { + // An unspecified event type. + EVENT_TYPE_UNSPECIFIED = 0; + + // Resource IAM policy update event. + RESOURCE_IAM_POLICY_UPDATE = 1; + + // BigQuery table create event. + BIGQUERY_TABLE_CREATE = 2; + + // BigQuery table update event. + BIGQUERY_TABLE_UPDATE = 3; + + // BigQuery table delete event. + BIGQUERY_TABLE_DELETE = 4; + + // BigQuery connection create event. + BIGQUERY_CONNECTION_CREATE = 5; + + // BigQuery connection update event. + BIGQUERY_CONNECTION_UPDATE = 6; + + // BigQuery connection delete event. + BIGQUERY_CONNECTION_DELETE = 7; + + // BigQuery taxonomy created. + BIGQUERY_TAXONOMY_CREATE = 10; + + // BigQuery policy tag created. + BIGQUERY_POLICY_TAG_CREATE = 11; + + // BigQuery policy tag deleted. + BIGQUERY_POLICY_TAG_DELETE = 12; + + // BigQuery set iam policy for policy tag. + BIGQUERY_POLICY_TAG_SET_IAM_POLICY = 13; + + // Access policy update event. + ACCESS_POLICY_UPDATE = 14; + } + + // The log message. + string message = 1; + + // The type of the event. + EventType event_type = 2; + + // Entity resource information if the log event is associated with a + // specific entity. + optional Entity entity = 3; +} + // These messages contain information about the execution of a datascan. // The monitored resource is 'DataScan' // Next ID: 13 diff --git a/google/cloud/gkehub/v1/BUILD.bazel b/google/cloud/gkehub/v1/BUILD.bazel index 2e673322632187..3b86e6261704e4 100644 --- a/google/cloud/gkehub/v1/BUILD.bazel +++ b/google/cloud/gkehub/v1/BUILD.bazel @@ -209,8 +209,6 @@ py_gapic_assembly_pkg( name = "gkehub-v1-py", deps = [ ":gkehub_py_gapic", - "//google/cloud/gkehub/v1/configmanagement:configmanagement_py_gapic", - "//google/cloud/gkehub/v1/multiclusteringress:multiclusteringress_py_gapic", ], ) diff --git a/google/cloud/gkehub/v1/configmanagement/BUILD.bazel b/google/cloud/gkehub/v1/configmanagement/BUILD.bazel index af47031d641ec8..6942809f932162 100644 --- a/google/cloud/gkehub/v1/configmanagement/BUILD.bazel +++ b/google/cloud/gkehub/v1/configmanagement/BUILD.bazel @@ -63,6 +63,7 @@ go_proto_library( load( "@com_google_googleapis_imports//:imports.bzl", "py_gapic_library", + "py_gapic_assembly_pkg", ) py_gapic_library( @@ -72,6 +73,14 @@ py_gapic_library( transport = "grpc", ) +# Open Source Packages +py_gapic_assembly_pkg( + name = "configmanagement-v1-py", + deps = [ + ":configmanagement_py_gapic", + ], +) + ############################################################################## # PHP ############################################################################## diff --git a/google/cloud/gkehub/v1/multiclusteringress/BUILD.bazel b/google/cloud/gkehub/v1/multiclusteringress/BUILD.bazel index 486ef278d8a403..e22f450f6b8169 100644 --- a/google/cloud/gkehub/v1/multiclusteringress/BUILD.bazel +++ b/google/cloud/gkehub/v1/multiclusteringress/BUILD.bazel @@ -62,6 +62,7 @@ go_proto_library( load( "@com_google_googleapis_imports//:imports.bzl", "py_gapic_library", + "py_gapic_assembly_pkg", ) py_gapic_library( @@ -71,6 +72,14 @@ py_gapic_library( transport = "grpc", ) +# Open Source Packages +py_gapic_assembly_pkg( + name = "multiclusteringress-v1-py", + deps = [ + ":multiclusteringress_py_gapic", + ], +) + ############################################################################## # PHP ############################################################################## diff --git a/google/cloud/speech/v2/cloud_speech.proto b/google/cloud/speech/v2/cloud_speech.proto index c2074e5b715c90..d23d36d801711a 100644 --- a/google/cloud/speech/v2/cloud_speech.proto +++ b/google/cloud/speech/v2/cloud_speech.proto @@ -585,8 +585,12 @@ message Recognizer { // characters or less. string display_name = 3; - // Optional. Which model to use for recognition requests. Select the model - // best suited to your domain to get best results. + // Optional. This field is now deprecated. Prefer the + // [`model`][google.cloud.speech.v2.RecognitionConfig.model] field in the + // [`RecognitionConfig`][google.cloud.speech.v2.RecognitionConfig] message. + // + // Which model to use for recognition requests. Select the model best suited + // to your domain to get best results. // // Guidance for choosing which model to use can be found in the [Transcription // Models @@ -596,7 +600,12 @@ message Recognizer { // Models](https://cloud.google.com/speech-to-text/v2/docs/speech-to-text-supported-languages). string model = 4 [deprecated = true, (google.api.field_behavior) = OPTIONAL]; - // Optional. The language of the supplied audio as a + // Optional. This field is now deprecated. Prefer the + // [`language_codes`][google.cloud.speech.v2.RecognitionConfig.language_codes] + // field in the + // [`RecognitionConfig`][google.cloud.speech.v2.RecognitionConfig] message. + // + // The language of the supplied audio as a // [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. // // Supported languages for each model are listed in the [Table of Supported @@ -693,6 +702,8 @@ message Recognizer { // * OGG_OPUS: Opus audio frames in an Ogg container. // // * WEBM_OPUS: Opus audio frames in a WebM container. +// +// * M4A: M4A audio format. message AutoDetectDecodingConfig {} // Explicitly specified decoding parameters. @@ -827,6 +838,30 @@ message RecognitionFeatures { int32 max_alternatives = 16; } +// Transcription normalization configuration. Use transcription normalization +// to automatically replace parts of the transcript with phrases of your +// choosing. For StreamingRecognize, this normalization only applies to stable +// partial transcripts (stability > 0.8) and final transcripts. +message TranscriptNormalization { + // A single replacement configuration. + message Entry { + // What to replace. Max length is 100 characters. + string search = 1; + + // What to replace with. Max length is 100 characters. + string replace = 2; + + // Whether the search is case sensitive. + bool case_sensitive = 3; + } + + // A list of replacement entries. We will perform replacement with one entry + // at a time. For example, the second entry in ["cat" => "dog", "mountain cat" + // => "mountain dog"] will never be applied because we will always process the + // first entry before it. At most 100 entries. + repeated Entry entries = 1; +} + // Provides "hints" to the speech recognizer to favor specific words and phrases // in the results. PhraseSets can be specified as an inline resource, or a // reference to an existing PhraseSet resource. @@ -898,6 +933,13 @@ message RecognitionConfig { // Speech adaptation context that weights recognizer predictions for specific // words and phrases. SpeechAdaptation adaptation = 6; + + // Optional. Use transcription normalization to automatically replace parts of + // the transcript with phrases of your choosing. For StreamingRecognize, this + // normalization only applies to stable partial transcripts (stability > 0.8) + // and final transcripts. + TranscriptNormalization transcript_normalization = 11 + [(google.api.field_behavior) = OPTIONAL]; } // Request message for the @@ -1275,21 +1317,45 @@ message BatchRecognizeResults { RecognitionResponseMetadata metadata = 2; } -// Final results for a single file. -message BatchRecognizeFileResult { +// Final results written to Cloud Storage. +message CloudStorageResult { // The Cloud Storage URI to which recognition results were written. string uri = 1; +} + +// Final results returned inline in the recognition response. +message InlineResult { + // The transcript for the audio file. + BatchRecognizeResults transcript = 1; +} +// Final results for a single file. +message BatchRecognizeFileResult { // Error if one was encountered. google.rpc.Status error = 2; RecognitionResponseMetadata metadata = 3; - // The transcript for the audio file. This is populated only when - // [InlineOutputConfig][google.cloud.speech.v2.InlineOutputConfig] is set in - // the - // [RecognitionOutputConfig][[google.cloud.speech.v2.RecognitionOutputConfig]. - BatchRecognizeResults transcript = 4; + oneof result { + // Recognition results written to Cloud Storage. This is + // populated only when + // [GcsOutputConfig][google.cloud.speech.v2.GcsOutputConfig] is set in + // the + // [RecognitionOutputConfig][[google.cloud.speech.v2.RecognitionOutputConfig]. + CloudStorageResult cloud_storage_result = 5; + + // Recognition results. This is populated only when + // [InlineOutputConfig][google.cloud.speech.v2.InlineOutputConfig] is set in + // the + // [RecognitionOutputConfig][[google.cloud.speech.v2.RecognitionOutputConfig]. + InlineResult inline_result = 6; + } + + // Deprecated. Use `cloud_storage_result.native_format_uri` instead. + string uri = 1 [deprecated = true]; + + // Deprecated. Use `inline_result.transcript` instead. + BatchRecognizeResults transcript = 4 [deprecated = true]; } // Metadata about transcription for a single file (for example, progress diff --git a/google/cloud/speech/v2/speech_v2.yaml b/google/cloud/speech/v2/speech_v2.yaml index 32aeddc36664dc..513dc7db6789e0 100644 --- a/google/cloud/speech/v2/speech_v2.yaml +++ b/google/cloud/speech/v2/speech_v2.yaml @@ -32,21 +32,6 @@ documentation: - selector: google.cloud.location.Locations.ListLocations description: Lists information about the supported locations for this service. -backend: - rules: - - selector: google.cloud.location.Locations.GetLocation - deadline: 355.0 - - selector: google.cloud.location.Locations.ListLocations - deadline: 355.0 - - selector: 'google.cloud.speech.v2.Speech.*' - deadline: 10.0 - - selector: google.cloud.speech.v2.Speech.Recognize - deadline: 185.0 - - selector: google.cloud.speech.v2.Speech.StreamingRecognize - deadline: 355.0 - - selector: 'google.longrunning.Operations.*' - deadline: 355.0 - http: rules: - selector: google.cloud.location.Locations.GetLocation diff --git a/google/container/v1/cluster_service.proto b/google/container/v1/cluster_service.proto index f377f284551270..294939bcd504cc 100644 --- a/google/container/v1/cluster_service.proto +++ b/google/container/v1/cluster_service.proto @@ -831,6 +831,9 @@ message NodeConfig { // Parameters for node pools to be backed by shared sole tenant node groups. SoleTenantConfig sole_tenant_config = 42; + + // A map of resource manager tag keys and values to be attached to the nodes. + ResourceManagerTags resource_manager_tags = 45; } // Specifies options for controlling advanced machine features. @@ -2022,6 +2025,10 @@ message NodePoolAutoConfig { // the client during cluster creation. Each tag within the list // must comply with RFC1035. NetworkTags network_tags = 1; + + // Resource manager tag keys and values to be attached to the nodes + // for managing Compute Engine firewalls using Network Firewall Policies. + ResourceManagerTags resource_manager_tags = 2; } // Subset of Nodepool message that has defaults. @@ -2253,6 +2260,10 @@ message ClusterUpdate { // Desired Beta APIs to be enabled for cluster. K8sBetaAPIConfig desired_k8s_beta_apis = 131; + + // The desired resource manager tags that apply to all auto-provisioned node + // pools in autopilot clusters and node auto-provisioning enabled clusters. + ResourceManagerTags desired_node_pool_auto_config_resource_manager_tags = 136; } // AdditionalPodRangesConfig is the configuration for additional pod secondary @@ -2415,6 +2426,10 @@ message Operation { // [documentation on // resizes](https://cloud.google.com/kubernetes-engine/docs/concepts/maintenance-windows-and-exclusions#repairs). RESIZE_CLUSTER = 18; + + // Fleet features of GKE Enterprise are being upgraded. The cluster should + // be assumed to be blocked for other upgrades until the operation finishes. + FLEET_FEATURE_UPGRADE = 19; } // The server-assigned ID for the operation. @@ -2725,6 +2740,11 @@ message UpdateNodePoolRequest { // Initiates an upgrade operation that migrates the nodes in the // node pool to the specified disk size. int64 disk_size_gb = 38 [(google.api.field_behavior) = OPTIONAL]; + + // Desired resource manager tag keys and values to be attached to the nodes + // for managing Compute Engine firewalls using Network Firewall Policies. + // Existing tags will be replaced with new values. + ResourceManagerTags resource_manager_tags = 39; } // SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool. @@ -5210,27 +5230,61 @@ enum IPv6AccessType { } // LocalNvmeSsdBlockConfig contains configuration for using raw-block local -// NVMe SSD. +// NVMe SSDs message LocalNvmeSsdBlockConfig { - // The number of raw-block local NVMe SSD disks to be attached to the node. - // Each local SSD is 375 GB in size. If zero, it means no raw-block local NVMe - // SSD disks to be attached to the node. - // The limit for this value is dependent upon the maximum number of - // disks available on a machine per zone. See: + // Number of local NVMe SSDs to use. The limit for this value is dependent + // upon the maximum number of disk available on a machine per zone. See: // https://cloud.google.com/compute/docs/disks/local-ssd // for more information. + // + // A zero (or unset) value has different meanings depending on machine type + // being used: + // 1. For pre-Gen3 machines, which support flexible numbers of local ssds, + // zero (or unset) means to disable using local SSDs as ephemeral storage. + // 2. For Gen3 machines which dictate a specific number of local ssds, zero + // (or unset) means to use the default number of local ssds that goes with + // that machine type. For example, for a c3-standard-8-lssd machine, 2 local + // ssds would be provisioned. For c3-standard-8 (which doesn't support local + // ssds), 0 will be provisioned. See + // https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds + // for more info. int32 local_ssd_count = 1; } // EphemeralStorageLocalSsdConfig contains configuration for the node ephemeral -// storage using Local SSD. +// storage using Local SSDs. message EphemeralStorageLocalSsdConfig { // Number of local SSDs to use to back ephemeral storage. Uses NVMe - // interfaces. Each local SSD is 375 GB in size. - // If zero, it means to disable using local SSDs as ephemeral storage. - // The limit for this value is dependent upon the maximum number of - // disks available on a machine per zone. See: + // interfaces. + // + // A zero (or unset) value has different meanings depending on machine type + // being used: + // 1. For pre-Gen3 machines, which support flexible numbers of local ssds, + // zero (or unset) means to disable using local SSDs as ephemeral storage. The + // limit for this value is dependent upon the maximum number of disk + // available on a machine per zone. See: // https://cloud.google.com/compute/docs/disks/local-ssd // for more information. + // 2. For Gen3 machines which dictate a specific number of local ssds, zero + // (or unset) means to use the default number of local ssds that goes with + // that machine type. For example, for a c3-standard-8-lssd machine, 2 local + // ssds would be provisioned. For c3-standard-8 (which doesn't support local + // ssds), 0 will be provisioned. See + // https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds + // for more info. int32 local_ssd_count = 1; } + +// A map of resource manager tag keys and values to be attached to the nodes +// for managing Compute Engine firewalls using Network Firewall Policies. +// Tags must be according to specifications in +// https://cloud.google.com/vpc/docs/tags-firewalls-overview#specifications. +// A maximum of 5 tag key-value pairs can be specified. +// Existing tags will be replaced with new values. +message ResourceManagerTags { + // TagKeyValue must be in one of the following formats ([KEY]=[VALUE]) + // 1. `tagKeys/{tag_key_id}=tagValues/{tag_value_id}` + // 2. `{org_id}/{tag_key_name}={tag_value_name}` + // 3. `{project_id}/{tag_key_name}={tag_value_name}` + map tags = 1; +} diff --git a/google/container/v1beta1/cluster_service.proto b/google/container/v1beta1/cluster_service.proto index 4b122939c8c261..843adc510d5b3d 100644 --- a/google/container/v1beta1/cluster_service.proto +++ b/google/container/v1beta1/cluster_service.proto @@ -833,6 +833,9 @@ message NodeConfig { // Google Compute Engine hosts. HostMaintenancePolicy host_maintenance_policy = 44; + // A map of resource manager tag keys and values to be attached to the nodes. + ResourceManagerTags resource_manager_tags = 45; + // Optional. Enable confidential storage on Hyperdisk. // boot_disk_kms_key is required when enable_confidential_storage is true. // This is only available for private preview. @@ -1011,21 +1014,44 @@ message SandboxConfig { // filesystem. message EphemeralStorageConfig { // Number of local SSDs to use to back ephemeral storage. Uses NVMe - // interfaces. Each local SSD is 375 GB in size. - // If zero, it means to disable using local SSDs as ephemeral storage. + // interfaces. The limit for this value is dependent upon the maximum number + // of disk available on a machine per zone. See: + // https://cloud.google.com/compute/docs/disks/local-ssd + // for more information. + // + // A zero (or unset) value has different meanings depending on machine type + // being used: + // 1. For pre-Gen3 machines, which support flexible numbers of local ssds, + // zero (or unset) means to disable using local SSDs as ephemeral storage. + // 2. For Gen3 machines which dictate a specific number of local ssds, zero + // (or unset) means to use the default number of local ssds that goes with + // that machine type. For example, for a c3-standard-8-lssd machine, 2 local + // ssds would be provisioned. For c3-standard-8 (which doesn't support local + // ssds), 0 will be provisioned. See + // https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds + // for more info. int32 local_ssd_count = 1; } // LocalNvmeSsdBlockConfig contains configuration for using raw-block local // NVMe SSDs message LocalNvmeSsdBlockConfig { - // The number of raw-block local NVMe SSD disks to be attached to the node. - // Each local SSD is 375 GB in size. If zero, it means no raw-block local NVMe - // SSD disks to be attached to the node. - // The limit for this value is dependent upon the maximum number of - // disks available on a machine per zone. See: + // Number of local NVMe SSDs to use. The limit for this value is dependent + // upon the maximum number of disk available on a machine per zone. See: // https://cloud.google.com/compute/docs/disks/local-ssd // for more information. + // + // A zero (or unset) value has different meanings depending on machine type + // being used: + // 1. For pre-Gen3 machines, which support flexible numbers of local ssds, + // zero (or unset) means to disable using local SSDs as ephemeral storage. + // 2. For Gen3 machines which dictate a specific number of local ssds, zero + // (or unset) means to use the default number of local ssds that goes with + // that machine type. For example, for a c3-standard-8-lssd machine, 2 local + // ssds would be provisioned. For c3-standard-8 (which doesn't support local + // ssds), 0 will be provisioned. See + // https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds + // for more info. int32 local_ssd_count = 1; } @@ -1033,12 +1059,23 @@ message LocalNvmeSsdBlockConfig { // storage using Local SSDs. message EphemeralStorageLocalSsdConfig { // Number of local SSDs to use to back ephemeral storage. Uses NVMe - // interfaces. Each local SSD is 375 GB in size. - // If zero, it means to disable using local SSDs as ephemeral storage. - // The limit for this value is dependent upon the maximum number of - // disks available on a machine per zone. See: + // interfaces. + // + // A zero (or unset) value has different meanings depending on machine type + // being used: + // 1. For pre-Gen3 machines, which support flexible numbers of local ssds, + // zero (or unset) means to disable using local SSDs as ephemeral storage. The + // limit for this value is dependent upon the maximum number of disk + // available on a machine per zone. See: // https://cloud.google.com/compute/docs/disks/local-ssd // for more information. + // 2. For Gen3 machines which dictate a specific number of local ssds, zero + // (or unset) means to use the default number of local ssds that goes with + // that machine type. For example, for a c3-standard-8-lssd machine, 2 local + // ssds would be provisioned. For c3-standard-8 (which doesn't support local + // ssds), 0 will be provisioned. See + // https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds + // for more info. int32 local_ssd_count = 1; } @@ -1138,8 +1175,36 @@ message HostMaintenancePolicy { PERIODIC = 2; } + // Strategy that will trigger maintenance on behalf of the customer. + message OpportunisticMaintenanceStrategy { + // The amount of time that a node can remain idle (no customer owned + // workloads running), before triggering maintenance. + optional google.protobuf.Duration node_idle_time_window = 1; + + // The window of time that opportunistic maintenance can run. Example: A + // setting of 14 days implies that opportunistic maintenance can only be ran + // in the 2 weeks leading up to the scheduled maintenance date. Setting 28 + // days allows opportunistic maintenance to run at any time in the scheduled + // maintenance window (all `PERIODIC` maintenance is set 28 days in + // advance). + optional google.protobuf.Duration maintenance_availability_window = 2; + + // The minimum nodes required to be available in a pool. Blocks maintenance + // if it would cause the number of running nodes to dip below this value. + optional int64 min_nodes_per_pool = 3; + } + // Specifies the frequency of planned maintenance events. optional MaintenanceInterval maintenance_interval = 1; + + // Set of host maintenance strategies available to the customer, all require + // the maintenance_interval to be PERIODIC. If no strategy is set, and the + // interval is periodic, customer will be expected to trigger maintenance + // manually or let maintenance trigger at its initial scheduled time. + oneof maintenance_strategy { + // Strategy that will trigger maintenance on behalf of the customer. + OpportunisticMaintenanceStrategy opportunistic_maintenance_strategy = 2; + } } // Kubernetes taint is composed of three fields: key, value, and effect. Effect @@ -2329,6 +2394,10 @@ message NodePoolAutoConfig { // the client during cluster creation. Each tag within the list // must comply with RFC1035. NetworkTags network_tags = 1; + + // Resource manager tag keys and values to be attached to the nodes + // for managing Compute Engine firewalls using Network Firewall Policies. + ResourceManagerTags resource_manager_tags = 2; } // ClusterUpdate describes an update to the cluster. Exactly one update can @@ -2574,6 +2643,13 @@ message ClusterUpdate { // HostMaintenancePolicy contains the desired maintenance policy for the // Google Compute Engine hosts. HostMaintenancePolicy desired_host_maintenance_policy = 132; + + // The desired resource manager tags that apply to all auto-provisioned node + // pools in autopilot clusters and node auto-provisioning enabled clusters. + ResourceManagerTags desired_node_pool_auto_config_resource_manager_tags = 136; + + // Specify the details of in-transit encryption. + optional InTransitEncryptionConfig desired_in_transit_encryption_config = 137; } // AdditionalPodRangesConfig is the configuration for additional pod secondary @@ -2737,6 +2813,10 @@ message Operation { // [documentation on // resizes](https://cloud.google.com/kubernetes-engine/docs/concepts/maintenance-windows-and-exclusions#repairs). RESIZE_CLUSTER = 18; + + // Fleet features of GKE Enterprise are being upgraded. The cluster should + // be assumed to be blocked for other upgrades until the operation finishes. + FLEET_FEATURE_UPGRADE = 19; } // The server-assigned ID for the operation. @@ -3052,6 +3132,11 @@ message UpdateNodePoolRequest { // Initiates an upgrade operation that migrates the nodes in the // node pool to the specified disk size. int64 disk_size_gb = 38 [(google.api.field_behavior) = OPTIONAL]; + + // Desired resource manager tag keys and values to be attached to the nodes + // for managing Compute Engine firewalls using Network Firewall Policies. + // Existing tags will be replaced with new values. + ResourceManagerTags resource_manager_tags = 39; } // SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool. @@ -3770,6 +3855,9 @@ message NodePool { // Start cordoning blue pool nodes. CORDONING_BLUE_POOL = 3; + // Start waiting after cordoning the blue pool and before draining it. + WAITING_TO_DRAIN_BLUE_POOL = 8; + // Start draining blue pool nodes. DRAINING_BLUE_POOL = 4; @@ -4852,6 +4940,9 @@ message NetworkConfig { // Whether FQDN Network Policy is enabled on this cluster. optional bool enable_fqdn_network_policy = 19; + + // Specify the details of in-transit encryption. + optional InTransitEncryptionConfig in_transit_encryption_config = 20; } // GatewayAPIConfig contains the desired config of Gateway API on this cluster. @@ -5758,3 +5849,30 @@ enum StackType { // The value used if the cluster is a dual stack cluster IPV4_IPV6 = 2; } + +// A map of resource manager tag keys and values to be attached to the nodes +// for managing Compute Engine firewalls using Network Firewall Policies. +// Tags must be according to specifications in +// https://cloud.google.com/vpc/docs/tags-firewalls-overview#specifications. +// A maximum of 5 tag key-value pairs can be specified. +// Existing tags will be replaced with new values. +message ResourceManagerTags { + // Tags must be in one of the following formats ([KEY]=[VALUE]) + // 1. `tagKeys/{tag_key_id}=tagValues/{tag_value_id}` + // 2. `{org_id}/{tag_key_name}={tag_value_name}` + // 3. `{project_id}/{tag_key_name}={tag_value_name}` + map tags = 1; +} + +// Options for in-transit encryption. +enum InTransitEncryptionConfig { + // Unspecified, will be inferred as default - + // IN_TRANSIT_ENCRYPTION_UNSPECIFIED. + IN_TRANSIT_ENCRYPTION_CONFIG_UNSPECIFIED = 0; + + // In-transit encryption is disabled. + IN_TRANSIT_ENCRYPTION_DISABLED = 1; + + // Data in-transit is encrypted using inter-node transparent encryption. + IN_TRANSIT_ENCRYPTION_INTER_NODE_TRANSPARENT = 2; +} diff --git a/google/maps/fleetengine/delivery/v1/common.proto b/google/maps/fleetengine/delivery/v1/common.proto index 1b3c19370b49c0..53911eb9518cbe 100644 --- a/google/maps/fleetengine/delivery/v1/common.proto +++ b/google/maps/fleetengine/delivery/v1/common.proto @@ -136,7 +136,7 @@ message DeliveryVehicleLocation { // Timestamp associated with the raw location. google.protobuf.Timestamp raw_location_time = 17; - // Source of the raw location. + // Source of the raw location. Defaults to `GPS`. DeliveryVehicleLocationSensor raw_location_sensor = 28; // Accuracy of `raw_location` as a radius, in meters. @@ -148,7 +148,8 @@ message DeliveryVehicleLocation { // Timestamp associated with the supplemental location. google.protobuf.Timestamp supplemental_location_time = 19; - // Source of the supplemental location. + // Source of the supplemental location. Defaults to + // `CUSTOMER_SUPPLIED_LOCATION`. DeliveryVehicleLocationSensor supplemental_location_sensor = 20; // Accuracy of `supplemental_location` as a radius, in meters. diff --git a/google/maps/fleetengine/delivery/v1/fleetengine_v1.yaml b/google/maps/fleetengine/delivery/v1/fleetengine_v1.yaml index d14c6e31db7568..7d13bda245dc41 100644 --- a/google/maps/fleetengine/delivery/v1/fleetengine_v1.yaml +++ b/google/maps/fleetengine/delivery/v1/fleetengine_v1.yaml @@ -34,6 +34,14 @@ publishing: common: destinations: - PACKAGE_MANAGER + cpp_settings: + common: + destinations: + - PACKAGE_MANAGER + php_settings: + common: + destinations: + - PACKAGE_MANAGER python_settings: common: destinations: @@ -46,6 +54,10 @@ publishing: common: destinations: - PACKAGE_MANAGER + ruby_settings: + common: + destinations: + - PACKAGE_MANAGER go_settings: common: destinations: diff --git a/google/maps/fleetengine/v1/fleetengine.proto b/google/maps/fleetengine/v1/fleetengine.proto index 623dd56b7492de..36a5905ace9c70 100644 --- a/google/maps/fleetengine/v1/fleetengine.proto +++ b/google/maps/fleetengine/v1/fleetengine.proto @@ -270,7 +270,7 @@ message VehicleLocation { // Timestamp associated with the raw location. google.protobuf.Timestamp raw_location_time = 17; - // Source of the raw location. + // Source of the raw location. Defaults to `GPS`. LocationSensor raw_location_sensor = 28; // Accuracy of `raw_location` as a radius, in meters. @@ -282,7 +282,8 @@ message VehicleLocation { // Timestamp associated with the supplemental location. google.protobuf.Timestamp supplemental_location_time = 19; - // Source of the supplemental location. + // Source of the supplemental location. Defaults to + // `CUSTOMER_SUPPLIED_LOCATION`. LocationSensor supplemental_location_sensor = 20; // Accuracy of `supplemental_location` as a radius, in meters. diff --git a/google/maps/fleetengine/v1/fleetengine_grpc_service_config.json b/google/maps/fleetengine/v1/fleetengine_grpc_service_config.json index 9face48a1ded66..cccd3c061179b0 100644 --- a/google/maps/fleetengine/v1/fleetengine_grpc_service_config.json +++ b/google/maps/fleetengine/v1/fleetengine_grpc_service_config.json @@ -20,29 +20,6 @@ "backoffMultiplier": 1.3, "retryableStatusCodes": ["UNAVAILABLE"] } - }, - { - "name": [ - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "CreateDeliveryVehicle" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "GetDeliveryVehicle" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "BatchCreateTasks" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "CreateTask" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "GetTask" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "UpdateTask" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "UpdateDeliveryVehicle" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "ListDeliveryVehicles" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "SearchTasks" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "ListTasks" }, - { "service": "maps.fleetengine.delivery.v1.DeliveryService", "method": "GetTaskTrackingInfo" } - ], - "timeout": "60s", - "retryPolicy": { - "maxAttempts": 5, - "initialBackoff": "1s", - "maxBackoff": "10s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": ["UNAVAILABLE"] - } }] } diff --git a/google/maps/fleetengine/v1/fleetengine_v1.yaml b/google/maps/fleetengine/v1/fleetengine_v1.yaml index 3efa199415b81c..391596290b890c 100644 --- a/google/maps/fleetengine/v1/fleetengine_v1.yaml +++ b/google/maps/fleetengine/v1/fleetengine_v1.yaml @@ -39,6 +39,14 @@ publishing: common: destinations: - PACKAGE_MANAGER + cpp_settings: + common: + destinations: + - PACKAGE_MANAGER + php_settings: + common: + destinations: + - PACKAGE_MANAGER python_settings: common: destinations: @@ -51,6 +59,10 @@ publishing: common: destinations: - PACKAGE_MANAGER + ruby_settings: + common: + destinations: + - PACKAGE_MANAGER go_settings: common: destinations: