diff --git a/alertcenter/v1beta1/alertcenter-api.json b/alertcenter/v1beta1/alertcenter-api.json index b6f9c9985d..15c7c5abc6 100644 --- a/alertcenter/v1beta1/alertcenter-api.json +++ b/alertcenter/v1beta1/alertcenter-api.json @@ -423,7 +423,7 @@ } } }, - "revision": "20240325", + "revision": "20240408", "rootUrl": "https://alertcenter.googleapis.com/", "schemas": { "AbuseDetected": { @@ -1177,6 +1177,10 @@ "description": "The email of the user this alert was created for.", "type": "string" }, + "id": { + "description": "ID of the rule that triggered the alert", + "type": "string" + }, "iosVendorId": { "description": "Required for iOS, empty for others.", "type": "string" diff --git a/alertcenter/v1beta1/alertcenter-gen.go b/alertcenter/v1beta1/alertcenter-gen.go index 324da5c953..32f0ea608b 100644 --- a/alertcenter/v1beta1/alertcenter-gen.go +++ b/alertcenter/v1beta1/alertcenter-gen.go @@ -1297,6 +1297,9 @@ type DeviceManagementRule struct { // Email: The email of the user this alert was created for. Email string `json:"email,omitempty"` + // Id: ID of the rule that triggered the alert + Id string `json:"id,omitempty"` + // IosVendorId: Required for iOS, empty for others. IosVendorId string `json:"iosVendorId,omitempty"` diff --git a/androidpublisher/v3/androidpublisher-api.json b/androidpublisher/v3/androidpublisher-api.json index 6a371a2f8c..cc3cf3c5e5 100644 --- a/androidpublisher/v3/androidpublisher-api.json +++ b/androidpublisher/v3/androidpublisher-api.json @@ -4731,7 +4731,7 @@ } } }, - "revision": "20240408", + "revision": "20240409", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { "Abi": { @@ -7705,7 +7705,7 @@ "type": "string" }, "purchaseType": { - "description": "The type of purchase of the inapp product. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: 0. Test (i.e. purchased from a license testing account) 1. Promo (i.e. purchased using a promo code) 2. Rewarded (i.e. from watching a video ad instead of paying)", + "description": "The type of purchase of the inapp product. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: 0. Test (i.e. purchased from a license testing account) 1. Promo (i.e. purchased using a promo code). Does not include Play Points purchases. 2. Rewarded (i.e. from watching a video ad instead of paying)", "format": "int32", "type": "integer" }, diff --git a/androidpublisher/v3/androidpublisher-gen.go b/androidpublisher/v3/androidpublisher-gen.go index 9c29ff188e..9dd46fc388 100644 --- a/androidpublisher/v3/androidpublisher-gen.go +++ b/androidpublisher/v3/androidpublisher-gen.go @@ -5744,8 +5744,9 @@ type ProductPurchase struct { // PurchaseType: The type of purchase of the inapp product. This field // is only set if this purchase was not made using the standard in-app // billing flow. Possible values are: 0. Test (i.e. purchased from a - // license testing account) 1. Promo (i.e. purchased using a promo code) - // 2. Rewarded (i.e. from watching a video ad instead of paying) + // license testing account) 1. Promo (i.e. purchased using a promo + // code). Does not include Play Points purchases. 2. Rewarded (i.e. from + // watching a video ad instead of paying) PurchaseType *int64 `json:"purchaseType,omitempty"` // Quantity: The quantity associated with the purchase of the inapp diff --git a/container/v1beta1/container-api.json b/container/v1beta1/container-api.json index eb018649b7..c17f4fdb6a 100644 --- a/container/v1beta1/container-api.json +++ b/container/v1beta1/container-api.json @@ -2565,7 +2565,7 @@ } } }, - "revision": "20240313", + "revision": "20240327", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3127,6 +3127,24 @@ }, "type": "object" }, + "CertificateAuthorityDomainConfig": { + "description": "CertificateAuthorityDomainConfig configures one or more fully qualified domain names (FQDN) to a specific certificate.", + "id": "CertificateAuthorityDomainConfig", + "properties": { + "fqdns": { + "description": "List of fully qualified domain names (FQDN). Specifying port is supported. Wilcards are NOT supported. Examples: - my.customdomain.com - 10.0.1.2:5000", + "items": { + "type": "string" + }, + "type": "array" + }, + "gcpSecretManagerCertificateConfig": { + "$ref": "GCPSecretManagerCertificateConfig", + "description": "Google Secret Manager (GCP) certificate configuration." + } + }, + "type": "object" + }, "CheckAutopilotCompatibilityResponse": { "description": "CheckAutopilotCompatibilityResponse has a list of compatibility issues.", "id": "CheckAutopilotCompatibilityResponse", @@ -3228,6 +3246,10 @@ "$ref": "ClusterTelemetry", "description": "Telemetry integration for the cluster." }, + "compliancePostureConfig": { + "$ref": "CompliancePostureConfig", + "description": "Enable/Disable Compliance Posture features for the cluster." + }, "conditions": { "description": "Which conditions caused the current cluster state.", "items": { @@ -3679,6 +3701,10 @@ "$ref": "ClusterTelemetry", "description": "The desired telemetry integration for the cluster." }, + "desiredContainerdConfig": { + "$ref": "ContainerdConfig", + "description": "The desired containerd config for the cluster." + }, "desiredCostManagementConfig": { "$ref": "CostManagementConfig", "description": "The desired configuration for the fine-grained cost management feature." @@ -3856,7 +3882,7 @@ }, "desiredPrivateClusterConfig": { "$ref": "PrivateClusterConfig", - "description": "The desired private cluster configuration." + "description": "The desired private cluster configuration. master_global_access_config is the only field that can be changed via this field. See also ClusterUpdate.desired_enable_private_endpoint for modifying other fields within PrivateClusterConfig." }, "desiredPrivateIpv6GoogleAccess": { "description": "The desired state of IPv6 connectivity to Google Services.", @@ -3945,6 +3971,11 @@ "description": "The current etag of the cluster. If an etag is provided and does not match the current etag of the cluster, update will be blocked and an ABORTED error will be returned.", "type": "string" }, + "privateClusterConfig": { + "$ref": "PrivateClusterConfig", + "deprecated": true, + "description": "The desired private cluster configuration. Has no effect. Use desired_private_cluster_config instead." + }, "removedAdditionalPodRangesConfig": { "$ref": "AdditionalPodRangesConfig", "description": "The additional pod ranges that are to be removed from the cluster. The pod ranges specified here must have been specified earlier in the 'additional_pod_ranges_config' argument." @@ -3984,6 +4015,45 @@ "properties": {}, "type": "object" }, + "CompliancePostureConfig": { + "description": "CompliancePostureConfig defines the settings needed to enable/disable features for the Compliance Posture.", + "id": "CompliancePostureConfig", + "properties": { + "complianceStandards": { + "description": "List of enabled compliance standards.", + "items": { + "$ref": "ComplianceStandard" + }, + "type": "array" + }, + "mode": { + "description": "Defines the enablement mode for Compliance Posture.", + "enum": [ + "MODE_UNSPECIFIED", + "DISABLED", + "ENABLED" + ], + "enumDescriptions": [ + "Default value not specified.", + "Disables Compliance Posture features on the cluster.", + "Enables Compliance Posture features on the cluster." + ], + "type": "string" + } + }, + "type": "object" + }, + "ComplianceStandard": { + "description": "Defines the details of a compliance standard.", + "id": "ComplianceStandard", + "properties": { + "standard": { + "description": "Name of the compliance standard.", + "type": "string" + } + }, + "type": "object" + }, "ConfidentialNodes": { "description": "ConfidentialNodes is configuration for the confidential nodes feature, which makes nodes run on confidential VMs.", "id": "ConfidentialNodes", @@ -4017,6 +4087,17 @@ }, "type": "object" }, + "ContainerdConfig": { + "description": "ContainerdConfig contains configuration to customize containerd.", + "id": "ContainerdConfig", + "properties": { + "privateRegistryAccessConfig": { + "$ref": "PrivateRegistryAccessConfig", + "description": "PrivateRegistryAccessConfig is used to configure access configuration for private container registries." + } + }, + "type": "object" + }, "CostManagementConfig": { "description": "Configuration for fine-grained cost management feature.", "id": "CostManagementConfig", @@ -4087,6 +4168,10 @@ "description": "DNSConfig contains the desired set of options for configuring clusterDNS.", "id": "DNSConfig", "properties": { + "additiveVpcScopeDnsDomain": { + "description": "Optional. The domain used in Additive VPC scope.", + "type": "string" + }, "clusterDns": { "description": "cluster_dns indicates which in-cluster DNS provider should be used.", "enum": [ @@ -4355,6 +4440,17 @@ }, "type": "object" }, + "GCPSecretManagerCertificateConfig": { + "description": "GCPSecretManagerCertificateConfig configures a secret from [Google Secret Manager](https://cloud.google.com/secret-manager).", + "id": "GCPSecretManagerCertificateConfig", + "properties": { + "secretUri": { + "description": "Secret URI, in the form \"projects/$PROJECT_ID/secrets/$SECRET_NAME/versions/$VERSION\". Version can be fixed (e.g. \"2\") or \"latest\"", + "type": "string" + } + }, + "type": "object" + }, "GPUDriverInstallationConfig": { "description": "GPUDriverInstallationConfig specifies the version of GPU driver to be auto installed.", "id": "GPUDriverInstallationConfig", @@ -4386,11 +4482,13 @@ "description": "The type of GPU sharing strategy to enable on the GPU node.", "enum": [ "GPU_SHARING_STRATEGY_UNSPECIFIED", - "TIME_SHARING" + "TIME_SHARING", + "MPS" ], "enumDescriptions": [ "Default value.", - "GPUs are time-shared between containers." + "GPUs are time-shared between containers.", + "GPUs are shared between containers with NVIDIA MPS." ], "type": "string" }, @@ -4619,6 +4717,23 @@ }, "type": "object" }, + "HugepagesConfig": { + "description": "Hugepages amount in both 2m and 1g size", + "id": "HugepagesConfig", + "properties": { + "hugepageSize1g": { + "description": "Optional. Amount of 1G hugepages", + "format": "int32", + "type": "integer" + }, + "hugepageSize2m": { + "description": "Optional. Amount of 2M hugepages", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "ILBSubsettingConfig": { "description": "ILBSubsettingConfig contains the desired config of L4 Internal LoadBalancer subsetting on this cluster.", "id": "ILBSubsettingConfig", @@ -4905,6 +5020,10 @@ ], "type": "string" }, + "hugepages": { + "$ref": "HugepagesConfig", + "description": "Optional. Amounts for 2M and 1G hugepages" + }, "sysctls": { "additionalProperties": { "type": "string" @@ -5595,6 +5714,10 @@ "$ref": "ConfidentialNodes", "description": "Confidential nodes config. All the nodes in the node pool will be Confidential VM once enabled." }, + "containerdConfig": { + "$ref": "ContainerdConfig", + "description": "Parameters for containerd customization." + }, "diskSizeGb": { "description": "Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB. If unspecified, the default disk size is 100GB.", "format": "int32", @@ -5769,6 +5892,10 @@ "description": "Subset of NodeConfig message that has defaults.", "id": "NodeConfigDefaults", "properties": { + "containerdConfig": { + "$ref": "ContainerdConfig", + "description": "Parameters for containerd customization." + }, "gcfsConfig": { "$ref": "GcfsConfig", "description": "GCFS (Google Container File System, also known as Riptide) options." @@ -6529,6 +6656,24 @@ }, "type": "object" }, + "PrivateRegistryAccessConfig": { + "description": "PrivateRegistryAccessConfig contains access configuration for private container registries.", + "id": "PrivateRegistryAccessConfig", + "properties": { + "certificateAuthorityDomainConfig": { + "description": "Private registry access configuration.", + "items": { + "$ref": "CertificateAuthorityDomainConfig" + }, + "type": "array" + }, + "enabled": { + "description": "Private registry access is enabled.", + "type": "boolean" + } + }, + "type": "object" + }, "ProtectConfig": { "description": "ProtectConfig defines the flags needed to enable/disable features for the Protect API.", "id": "ProtectConfig", @@ -7757,6 +7902,13 @@ "description": "SetNodePoolVersionRequest updates the version of a node pool.", "id": "UpdateNodePoolRequest", "properties": { + "accelerators": { + "description": "A list of hardware accelerators to be attached to each node. See https://cloud.google.com/compute/docs/gpus for more information about support for GPUs.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, "clusterId": { "deprecated": true, "description": "Required. Deprecated. The name of the cluster to upgrade. This field has been deprecated and replaced by the name field.", @@ -7766,6 +7918,10 @@ "$ref": "ConfidentialNodes", "description": "Confidential nodes config. All the nodes in the node pool will be Confidential VM once enabled." }, + "containerdConfig": { + "$ref": "ContainerdConfig", + "description": "The desired containerd config for nodes in the node pool. Initiates an upgrade operation that recreates the nodes with the new config." + }, "diskSizeGb": { "description": "Optional. The desired disk size for nodes in the node pool. Initiates an upgrade operation that migrates the nodes in the node pool to the specified disk size.", "format": "int64", diff --git a/container/v1beta1/container-gen.go b/container/v1beta1/container-gen.go index 6920f0afd5..4dd19287ce 100644 --- a/container/v1beta1/container-gen.go +++ b/container/v1beta1/container-gen.go @@ -1222,6 +1222,42 @@ func (s *CancelOperationRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CertificateAuthorityDomainConfig: CertificateAuthorityDomainConfig +// configures one or more fully qualified domain names (FQDN) to a +// specific certificate. +type CertificateAuthorityDomainConfig struct { + // Fqdns: List of fully qualified domain names (FQDN). Specifying port + // is supported. Wilcards are NOT supported. Examples: - + // my.customdomain.com - 10.0.1.2:5000 + Fqdns []string `json:"fqdns,omitempty"` + + // GcpSecretManagerCertificateConfig: Google Secret Manager (GCP) + // certificate configuration. + GcpSecretManagerCertificateConfig *GCPSecretManagerCertificateConfig `json:"gcpSecretManagerCertificateConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Fqdns") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Fqdns") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *CertificateAuthorityDomainConfig) MarshalJSON() ([]byte, error) { + type NoMethod CertificateAuthorityDomainConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CheckAutopilotCompatibilityResponse: // CheckAutopilotCompatibilityResponse has a list of compatibility // issues. @@ -1391,6 +1427,10 @@ type Cluster struct { // ClusterTelemetry: Telemetry integration for the cluster. ClusterTelemetry *ClusterTelemetry `json:"clusterTelemetry,omitempty"` + // CompliancePostureConfig: Enable/Disable Compliance Posture features + // for the cluster. + CompliancePostureConfig *CompliancePostureConfig `json:"compliancePostureConfig,omitempty"` + // Conditions: Which conditions caused the current cluster state. Conditions []*StatusCondition `json:"conditions,omitempty"` @@ -1952,6 +1992,10 @@ type ClusterUpdate struct { // cluster. DesiredClusterTelemetry *ClusterTelemetry `json:"desiredClusterTelemetry,omitempty"` + // DesiredContainerdConfig: The desired containerd config for the + // cluster. + DesiredContainerdConfig *ContainerdConfig `json:"desiredContainerdConfig,omitempty"` + // DesiredCostManagementConfig: The desired configuration for the // fine-grained cost management feature. DesiredCostManagementConfig *CostManagementConfig `json:"desiredCostManagementConfig,omitempty"` @@ -2151,7 +2195,10 @@ type ClusterUpdate struct { DesiredPodSecurityPolicyConfig *PodSecurityPolicyConfig `json:"desiredPodSecurityPolicyConfig,omitempty"` // DesiredPrivateClusterConfig: The desired private cluster - // configuration. + // configuration. master_global_access_config is the only field that can + // be changed via this field. See also + // ClusterUpdate.desired_enable_private_endpoint for modifying other + // fields within PrivateClusterConfig. DesiredPrivateClusterConfig *PrivateClusterConfig `json:"desiredPrivateClusterConfig,omitempty"` // DesiredPrivateIpv6GoogleAccess: The desired state of IPv6 @@ -2232,6 +2279,10 @@ type ClusterUpdate struct { // blocked and an ABORTED error will be returned. Etag string `json:"etag,omitempty"` + // PrivateClusterConfig: The desired private cluster configuration. Has + // no effect. Use desired_private_cluster_config instead. + PrivateClusterConfig *PrivateClusterConfig `json:"privateClusterConfig,omitempty"` + // RemovedAdditionalPodRangesConfig: The additional pod ranges that are // to be removed from the cluster. The pod ranges specified here must // have been specified earlier in the 'additional_pod_ranges_config' @@ -2315,6 +2366,72 @@ func (s *CompleteIPRotationRequest) MarshalJSON() ([]byte, error) { type CompleteNodePoolUpgradeRequest struct { } +// CompliancePostureConfig: CompliancePostureConfig defines the settings +// needed to enable/disable features for the Compliance Posture. +type CompliancePostureConfig struct { + // ComplianceStandards: List of enabled compliance standards. + ComplianceStandards []*ComplianceStandard `json:"complianceStandards,omitempty"` + + // Mode: Defines the enablement mode for Compliance Posture. + // + // Possible values: + // "MODE_UNSPECIFIED" - Default value not specified. + // "DISABLED" - Disables Compliance Posture features on the cluster. + // "ENABLED" - Enables Compliance Posture features on the cluster. + Mode string `json:"mode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ComplianceStandards") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ComplianceStandards") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *CompliancePostureConfig) MarshalJSON() ([]byte, error) { + type NoMethod CompliancePostureConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ComplianceStandard: Defines the details of a compliance standard. +type ComplianceStandard struct { + // Standard: Name of the compliance standard. + Standard string `json:"standard,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Standard") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Standard") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ComplianceStandard) MarshalJSON() ([]byte, error) { + type NoMethod ComplianceStandard + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ConfidentialNodes: ConfidentialNodes is configuration for the // confidential nodes feature, which makes nodes run on confidential // VMs. @@ -2405,6 +2522,38 @@ func (s *ConsumptionMeteringConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ContainerdConfig: ContainerdConfig contains configuration to +// customize containerd. +type ContainerdConfig struct { + // PrivateRegistryAccessConfig: PrivateRegistryAccessConfig is used to + // configure access configuration for private container registries. + PrivateRegistryAccessConfig *PrivateRegistryAccessConfig `json:"privateRegistryAccessConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "PrivateRegistryAccessConfig") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "PrivateRegistryAccessConfig") to include in API requests with the + // JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContainerdConfig) MarshalJSON() ([]byte, error) { + type NoMethod ContainerdConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CostManagementConfig: Configuration for fine-grained cost management // feature. type CostManagementConfig struct { @@ -2532,6 +2681,10 @@ func (s *CreateNodePoolRequest) MarshalJSON() ([]byte, error) { // DNSConfig: DNSConfig contains the desired set of options for // configuring clusterDNS. type DNSConfig struct { + // AdditiveVpcScopeDnsDomain: Optional. The domain used in Additive VPC + // scope. + AdditiveVpcScopeDnsDomain string `json:"additiveVpcScopeDnsDomain,omitempty"` + // ClusterDns: cluster_dns indicates which in-cluster DNS provider // should be used. // @@ -2558,20 +2711,22 @@ type DNSConfig struct { // "VPC_SCOPE" - DNS records are accessible from within the VPC. ClusterDnsScope string `json:"clusterDnsScope,omitempty"` - // ForceSendFields is a list of field names (e.g. "ClusterDns") to - // unconditionally include in API requests. By default, fields with - // empty or default values are omitted from API requests. However, any - // non-pointer, non-interface field appearing in ForceSendFields will be - // sent to the server regardless of whether the field is empty or not. - // This may be used to include empty fields in Patch requests. + // ForceSendFields is a list of field names (e.g. + // "AdditiveVpcScopeDnsDomain") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ClusterDns") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. + // "AdditiveVpcScopeDnsDomain") to include in API requests with the JSON + // null value. By default, fields with empty values are omitted from API + // requests. However, any field with an empty value appearing in + // NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. NullFields []string `json:"-"` } @@ -3029,6 +3184,38 @@ func (s *Fleet) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GCPSecretManagerCertificateConfig: GCPSecretManagerCertificateConfig +// configures a secret from Google Secret Manager +// (https://cloud.google.com/secret-manager). +type GCPSecretManagerCertificateConfig struct { + // SecretUri: Secret URI, in the form + // "projects/$PROJECT_ID/secrets/$SECRET_NAME/versions/$VERSION". + // Version can be fixed (e.g. "2") or "latest" + SecretUri string `json:"secretUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SecretUri") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "SecretUri") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GCPSecretManagerCertificateConfig) MarshalJSON() ([]byte, error) { + type NoMethod GCPSecretManagerCertificateConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GPUDriverInstallationConfig: GPUDriverInstallationConfig specifies // the version of GPU driver to be auto installed. type GPUDriverInstallationConfig struct { @@ -3076,6 +3263,7 @@ type GPUSharingConfig struct { // Possible values: // "GPU_SHARING_STRATEGY_UNSPECIFIED" - Default value. // "TIME_SHARING" - GPUs are time-shared between containers. + // "MPS" - GPUs are shared between containers with NVIDIA MPS. GpuSharingStrategy string `json:"gpuSharingStrategy,omitempty"` // MaxSharedClientsPerGpu: The max number of containers that can share a @@ -3535,6 +3723,38 @@ func (s *HttpLoadBalancing) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// HugepagesConfig: Hugepages amount in both 2m and 1g size +type HugepagesConfig struct { + // HugepageSize1g: Optional. Amount of 1G hugepages + HugepageSize1g int64 `json:"hugepageSize1g,omitempty"` + + // HugepageSize2m: Optional. Amount of 2M hugepages + HugepageSize2m int64 `json:"hugepageSize2m,omitempty"` + + // ForceSendFields is a list of field names (e.g. "HugepageSize1g") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "HugepageSize1g") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *HugepagesConfig) MarshalJSON() ([]byte, error) { + type NoMethod HugepagesConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ILBSubsettingConfig: ILBSubsettingConfig contains the desired config // of L4 Internal LoadBalancer subsetting on this cluster. type ILBSubsettingConfig struct { @@ -4046,6 +4266,9 @@ type LinuxNodeConfig struct { // cgroup configuration on the node image. CgroupMode string `json:"cgroupMode,omitempty"` + // Hugepages: Optional. Amounts for 2M and 1G hugepages + Hugepages *HugepagesConfig `json:"hugepages,omitempty"` + // Sysctls: The Linux kernel parameters to be applied to the nodes and // all pods running on the nodes. The following parameters are // supported. net.core.busy_poll net.core.busy_read @@ -5240,6 +5463,9 @@ type NodeConfig struct { // node pool will be Confidential VM once enabled. ConfidentialNodes *ConfidentialNodes `json:"confidentialNodes,omitempty"` + // ContainerdConfig: Parameters for containerd customization. + ContainerdConfig *ContainerdConfig `json:"containerdConfig,omitempty"` + // DiskSizeGb: Size of the disk attached to each node, specified in GB. // The smallest allowed disk size is 10GB. If unspecified, the default // disk size is 100GB. @@ -5453,6 +5679,9 @@ func (s *NodeConfig) MarshalJSON() ([]byte, error) { // NodeConfigDefaults: Subset of NodeConfig message that has defaults. type NodeConfigDefaults struct { + // ContainerdConfig: Parameters for containerd customization. + ContainerdConfig *ContainerdConfig `json:"containerdConfig,omitempty"` + // GcfsConfig: GCFS (Google Container File System, also known as // Riptide) options. GcfsConfig *GcfsConfig `json:"gcfsConfig,omitempty"` @@ -5464,7 +5693,7 @@ type NodeConfigDefaults struct { // LoggingConfig: Logging configuration for node pools. LoggingConfig *NodePoolLoggingConfig `json:"loggingConfig,omitempty"` - // ForceSendFields is a list of field names (e.g. "GcfsConfig") to + // ForceSendFields is a list of field names (e.g. "ContainerdConfig") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -5472,12 +5701,13 @@ type NodeConfigDefaults struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "GcfsConfig") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "ContainerdConfig") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. NullFields []string `json:"-"` } @@ -6706,6 +6936,41 @@ func (s *PrivateClusterMasterGlobalAccessConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PrivateRegistryAccessConfig: PrivateRegistryAccessConfig contains +// access configuration for private container registries. +type PrivateRegistryAccessConfig struct { + // CertificateAuthorityDomainConfig: Private registry access + // configuration. + CertificateAuthorityDomainConfig []*CertificateAuthorityDomainConfig `json:"certificateAuthorityDomainConfig,omitempty"` + + // Enabled: Private registry access is enabled. + Enabled bool `json:"enabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CertificateAuthorityDomainConfig") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "CertificateAuthorityDomainConfig") to include in API requests with + // the JSON null value. By default, fields with empty values are omitted + // from API requests. However, any field with an empty value appearing + // in NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PrivateRegistryAccessConfig) MarshalJSON() ([]byte, error) { + type NoMethod PrivateRegistryAccessConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ProtectConfig: ProtectConfig defines the flags needed to // enable/disable features for the Protect API. type ProtectConfig struct { @@ -8849,6 +9114,11 @@ func (s *UpdateMasterRequest) MarshalJSON() ([]byte, error) { // UpdateNodePoolRequest: SetNodePoolVersionRequest updates the version // of a node pool. type UpdateNodePoolRequest struct { + // Accelerators: A list of hardware accelerators to be attached to each + // node. See https://cloud.google.com/compute/docs/gpus for more + // information about support for GPUs. + Accelerators []*AcceleratorConfig `json:"accelerators,omitempty"` + // ClusterId: Required. Deprecated. The name of the cluster to upgrade. // This field has been deprecated and replaced by the name field. ClusterId string `json:"clusterId,omitempty"` @@ -8857,6 +9127,11 @@ type UpdateNodePoolRequest struct { // node pool will be Confidential VM once enabled. ConfidentialNodes *ConfidentialNodes `json:"confidentialNodes,omitempty"` + // ContainerdConfig: The desired containerd config for nodes in the node + // pool. Initiates an upgrade operation that recreates the nodes with + // the new config. + ContainerdConfig *ContainerdConfig `json:"containerdConfig,omitempty"` + // DiskSizeGb: Optional. The desired disk size for nodes in the node // pool. Initiates an upgrade operation that migrates the nodes in the // node pool to the specified disk size. @@ -8988,7 +9263,7 @@ type UpdateNodePoolRequest struct { // the name field. Zone string `json:"zone,omitempty"` - // ForceSendFields is a list of field names (e.g. "ClusterId") to + // ForceSendFields is a list of field names (e.g. "Accelerators") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -8996,10 +9271,10 @@ type UpdateNodePoolRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ClusterId") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Accelerators") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` diff --git a/osconfig/v1/osconfig-api.json b/osconfig/v1/osconfig-api.json index 0b2d174652..772dad842e 100644 --- a/osconfig/v1/osconfig-api.json +++ b/osconfig/v1/osconfig-api.json @@ -112,7 +112,7 @@ "global": { "methods": { "getProjectFeatureSettings": { - "description": "GetProjectFeatureSettings returns the feature settings for a project", + "description": "GetProjectFeatureSettings returns the VM Manager feature settings for a project.", "flatPath": "v1/projects/{projectsId}/locations/global/projectFeatureSettings", "httpMethod": "GET", "id": "osconfig.projects.locations.global.getProjectFeatureSettings", @@ -121,7 +121,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the billing config. \"projects//locations/global/projectFeatureSettings\"", + "description": "Required. Name specifies the URL for the ProjectFeatureSettings resource: projects/project_id/locations/global/projectFeatureSettings.", "location": "path", "pattern": "^projects/[^/]+/locations/global/projectFeatureSettings$", "required": true, @@ -137,7 +137,7 @@ ] }, "updateProjectFeatureSettings": { - "description": "UpdateProjectFeatureSettings sets the feature settings for a project.", + "description": "UpdateProjectFeatureSettings sets the VM Manager features for a project.", "flatPath": "v1/projects/{projectsId}/locations/global/projectFeatureSettings", "httpMethod": "PATCH", "id": "osconfig.projects.locations.global.updateProjectFeatureSettings", @@ -146,7 +146,7 @@ ], "parameters": { "name": { - "description": "Required. Immutable. Name of the config, e.g. projects/12345/locations/global/projectFeatureSettings", + "description": "Required. Immutable. Name specifies the URL for the ProjectFeatureSettings resource: projects/project_id/locations/global/projectFeatureSettings.", "location": "path", "pattern": "^projects/[^/]+/locations/global/projectFeatureSettings$", "required": true, @@ -1063,7 +1063,7 @@ } } }, - "revision": "20240314", + "revision": "20240407", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "AptSettings": { @@ -3357,15 +3357,15 @@ "type": "object" }, "ProjectFeatureSettings": { - "description": "ProjectFeatureSettings represents the features settings for the VM Manager. The project features settings can be set for a project.", + "description": "ProjectFeatureSettings represents the VM Manager feature settings in a project. For more information, see Enable full VM Manager functionality.", "id": "ProjectFeatureSettings", "properties": { "name": { - "description": "Required. Immutable. Name of the config, e.g. projects/12345/locations/global/projectFeatureSettings", + "description": "Required. Immutable. Name specifies the URL for the ProjectFeatureSettings resource: projects/project_id/locations/global/projectFeatureSettings.", "type": "string" }, "patchAndConfigFeatureSet": { - "description": "Currently set PatchAndConfigFeatureSet for name.", + "description": "Set PatchAndConfigFeatureSet for the project.", "enum": [ "PATCH_AND_CONFIG_FEATURE_SET_UNSPECIFIED", "OSCONFIG_B", @@ -3373,8 +3373,8 @@ ], "enumDescriptions": [ "Not specified placeholder", - "Basic feature set. Enables only the basic set of features.", - "Classic set of functionality." + "Enables only the basic set of VM Manager features in the project.", + "Enables all VM Manager features in the project." ], "type": "string" } diff --git a/osconfig/v1/osconfig-gen.go b/osconfig/v1/osconfig-gen.go index 792395bc7b..b269013680 100644 --- a/osconfig/v1/osconfig-gen.go +++ b/osconfig/v1/osconfig-gen.go @@ -3889,23 +3889,24 @@ func (s *PatchRollout) MarshalJSON() ([]byte, error) { type PausePatchDeploymentRequest struct { } -// ProjectFeatureSettings: ProjectFeatureSettings represents the -// features settings for the VM Manager. The project features settings -// can be set for a project. +// ProjectFeatureSettings: ProjectFeatureSettings represents the VM +// Manager feature settings in a project. For more information, see +// Enable full VM Manager functionality. type ProjectFeatureSettings struct { - // Name: Required. Immutable. Name of the config, e.g. - // projects/12345/locations/global/projectFeatureSettings + // Name: Required. Immutable. Name specifies the URL for the + // ProjectFeatureSettings resource: + // projects/project_id/locations/global/projectFeatureSettings. Name string `json:"name,omitempty"` - // PatchAndConfigFeatureSet: Currently set PatchAndConfigFeatureSet for - // name. + // PatchAndConfigFeatureSet: Set PatchAndConfigFeatureSet for the + // project. // // Possible values: // "PATCH_AND_CONFIG_FEATURE_SET_UNSPECIFIED" - Not specified // placeholder - // "OSCONFIG_B" - Basic feature set. Enables only the basic set of - // features. - // "OSCONFIG_C" - Classic set of functionality. + // "OSCONFIG_B" - Enables only the basic set of VM Manager features in + // the project. + // "OSCONFIG_C" - Enables all VM Manager features in the project. PatchAndConfigFeatureSet string `json:"patchAndConfigFeatureSet,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -4652,11 +4653,12 @@ type ProjectsLocationsGlobalGetProjectFeatureSettingsCall struct { header_ http.Header } -// GetProjectFeatureSettings: GetProjectFeatureSettings returns the -// feature settings for a project +// GetProjectFeatureSettings: GetProjectFeatureSettings returns the VM +// Manager feature settings for a project. // -// - name: Name of the billing config. -// "projects//locations/global/projectFeatureSettings". +// - name: Name specifies the URL for the ProjectFeatureSettings +// resource: +// projects/project_id/locations/global/projectFeatureSettings. func (r *ProjectsLocationsGlobalService) GetProjectFeatureSettings(name string) *ProjectsLocationsGlobalGetProjectFeatureSettingsCall { c := &ProjectsLocationsGlobalGetProjectFeatureSettingsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -4762,7 +4764,7 @@ func (c *ProjectsLocationsGlobalGetProjectFeatureSettingsCall) Do(opts ...google } return ret, nil // { - // "description": "GetProjectFeatureSettings returns the feature settings for a project", + // "description": "GetProjectFeatureSettings returns the VM Manager feature settings for a project.", // "flatPath": "v1/projects/{projectsId}/locations/global/projectFeatureSettings", // "httpMethod": "GET", // "id": "osconfig.projects.locations.global.getProjectFeatureSettings", @@ -4771,7 +4773,7 @@ func (c *ProjectsLocationsGlobalGetProjectFeatureSettingsCall) Do(opts ...google // ], // "parameters": { // "name": { - // "description": "Required. Name of the billing config. \"projects//locations/global/projectFeatureSettings\"", + // "description": "Required. Name specifies the URL for the ProjectFeatureSettings resource: projects/project_id/locations/global/projectFeatureSettings.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/projectFeatureSettings$", // "required": true, @@ -4801,10 +4803,11 @@ type ProjectsLocationsGlobalUpdateProjectFeatureSettingsCall struct { } // UpdateProjectFeatureSettings: UpdateProjectFeatureSettings sets the -// feature settings for a project. +// VM Manager features for a project. // -// - name: Immutable. Name of the config, e.g. -// projects/12345/locations/global/projectFeatureSettings. +// - name: Immutable. Name specifies the URL for the +// ProjectFeatureSettings resource: +// projects/project_id/locations/global/projectFeatureSettings. func (r *ProjectsLocationsGlobalService) UpdateProjectFeatureSettings(name string, projectfeaturesettings *ProjectFeatureSettings) *ProjectsLocationsGlobalUpdateProjectFeatureSettingsCall { c := &ProjectsLocationsGlobalUpdateProjectFeatureSettingsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -4911,7 +4914,7 @@ func (c *ProjectsLocationsGlobalUpdateProjectFeatureSettingsCall) Do(opts ...goo } return ret, nil // { - // "description": "UpdateProjectFeatureSettings sets the feature settings for a project.", + // "description": "UpdateProjectFeatureSettings sets the VM Manager features for a project.", // "flatPath": "v1/projects/{projectsId}/locations/global/projectFeatureSettings", // "httpMethod": "PATCH", // "id": "osconfig.projects.locations.global.updateProjectFeatureSettings", @@ -4920,7 +4923,7 @@ func (c *ProjectsLocationsGlobalUpdateProjectFeatureSettingsCall) Do(opts ...goo // ], // "parameters": { // "name": { - // "description": "Required. Immutable. Name of the config, e.g. projects/12345/locations/global/projectFeatureSettings", + // "description": "Required. Immutable. Name specifies the URL for the ProjectFeatureSettings resource: projects/project_id/locations/global/projectFeatureSettings.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/projectFeatureSettings$", // "required": true,