Skip to content

Commit 8cc495b

Browse files
feat(container)!: update the API
BREAKING CHANGE: This release has breaking changes. #### container:v1beta1 The following keys were deleted: - schemas.NodeNetworkConfig.properties.subnetwork.readOnly The following keys were added: - schemas.DisruptionEvent.description - schemas.DisruptionEvent.id - schemas.DisruptionEvent.properties.disruptionType.description - schemas.DisruptionEvent.properties.disruptionType.enum - schemas.DisruptionEvent.properties.disruptionType.enumDescriptions - schemas.DisruptionEvent.properties.disruptionType.type - schemas.DisruptionEvent.properties.pdbBlockedNode.description - schemas.DisruptionEvent.properties.pdbBlockedNode.type - schemas.DisruptionEvent.properties.pdbBlockedPod.description - schemas.DisruptionEvent.properties.pdbBlockedPod.items.$ref - schemas.DisruptionEvent.properties.pdbBlockedPod.type - schemas.DisruptionEvent.properties.pdbViolationTimeout.description - schemas.DisruptionEvent.properties.pdbViolationTimeout.format - schemas.DisruptionEvent.properties.pdbViolationTimeout.type - schemas.DisruptionEvent.type - schemas.NodeDrainConfig.description - schemas.NodeDrainConfig.id - schemas.NodeDrainConfig.properties.respectPdbDuringNodePoolDeletion.description - schemas.NodeDrainConfig.properties.respectPdbDuringNodePoolDeletion.type - schemas.NodeDrainConfig.type - schemas.NodePool.properties.nodeDrainConfig.$ref - schemas.NodePool.properties.nodeDrainConfig.description - schemas.PdbBlockedPod.description - schemas.PdbBlockedPod.id - schemas.PdbBlockedPod.properties.name.description - schemas.PdbBlockedPod.properties.name.type - schemas.PdbBlockedPod.properties.namespace.description - schemas.PdbBlockedPod.properties.namespace.type - schemas.PdbBlockedPod.type - schemas.UpdateNodePoolRequest.properties.nodeDrainConfig.$ref - schemas.UpdateNodePoolRequest.properties.nodeDrainConfig.description - schemas.UpgradeInfoEvent.properties.disruptionEvent.$ref - schemas.UpgradeInfoEvent.properties.disruptionEvent.description The following keys were changed: - schemas.NodeNetworkConfig.properties.subnetwork.description - schemas.UpgradeInfoEvent.properties.eventType.enum - schemas.UpgradeInfoEvent.properties.eventType.enumDescriptions
1 parent cb8806d commit 8cc495b

File tree

2 files changed

+141
-6
lines changed

2 files changed

+141
-6
lines changed

discovery/container-v1beta1.json

Lines changed: 81 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2741,7 +2741,7 @@
27412741
}
27422742
}
27432743
},
2744-
"revision": "20251104",
2744+
"revision": "20251125",
27452745
"rootUrl": "https://container.googleapis.com/",
27462746
"schemas": {
27472747
"AcceleratorConfig": {
@@ -5101,6 +5101,43 @@
51015101
},
51025102
"type": "object"
51035103
},
5104+
"DisruptionEvent": {
5105+
"description": "DisruptionEvent is a notification sent to customers about the disruption event of a resource.",
5106+
"id": "DisruptionEvent",
5107+
"properties": {
5108+
"disruptionType": {
5109+
"description": "The type of the disruption event.",
5110+
"enum": [
5111+
"DISRUPTION_TYPE_UNSPECIFIED",
5112+
"POD_NOT_ENOUGH_PDB",
5113+
"POD_PDB_VIOLATION"
5114+
],
5115+
"enumDescriptions": [
5116+
"DISRUPTION_TYPE_UNSPECIFIED indicates the disruption type is unspecified.",
5117+
"POD_NOT_ENOUGH_PDB indicates there are still running pods on the node during node drain because their evictions are blocked by PDB.",
5118+
"POD_PDB_VIOLATION indicates that there are force pod evictions during node drain which violate the PDB."
5119+
],
5120+
"type": "string"
5121+
},
5122+
"pdbBlockedNode": {
5123+
"description": "The node whose drain is blocked by PDB. This field is set for both POD_PDB_VIOLATION and POD_NOT_ENOUGH_PDB event.",
5124+
"type": "string"
5125+
},
5126+
"pdbBlockedPod": {
5127+
"description": "The pods whose evictions are blocked by PDB. This field is set for both POD_PDB_VIOLATION and POD_NOT_ENOUGH_PDB event.",
5128+
"items": {
5129+
"$ref": "PdbBlockedPod"
5130+
},
5131+
"type": "array"
5132+
},
5133+
"pdbViolationTimeout": {
5134+
"description": "The timeout in seconds for which the node drain is blocked by PDB. After this timeout, pods are forcefully evicted. This field is only populated when event_type is POD_PDB_VIOLATION.",
5135+
"format": "google-duration",
5136+
"type": "string"
5137+
}
5138+
},
5139+
"type": "object"
5140+
},
51045141
"DnsCacheConfig": {
51055142
"description": "Configuration for NodeLocal DNSCache",
51065143
"id": "DnsCacheConfig",
@@ -7203,6 +7240,17 @@
72037240
},
72047241
"type": "object"
72057242
},
7243+
"NodeDrainConfig": {
7244+
"description": "NodeDrainConfig contains the node drain related configurations for this nodepool.",
7245+
"id": "NodeDrainConfig",
7246+
"properties": {
7247+
"respectPdbDuringNodePoolDeletion": {
7248+
"description": "Whether to respect PDB during node pool deletion.",
7249+
"type": "boolean"
7250+
}
7251+
},
7252+
"type": "object"
7253+
},
72067254
"NodeKernelModuleLoading": {
72077255
"description": "Configuration for kernel module loading on nodes.",
72087256
"id": "NodeKernelModuleLoading",
@@ -7411,8 +7459,7 @@
74117459
"type": "string"
74127460
},
74137461
"subnetwork": {
7414-
"description": "Output only. The subnetwork path for the node pool. Format: projects/{project}/regions/{region}/subnetworks/{subnetwork} If the cluster is associated with multiple subnetworks, the subnetwork for the node pool is picked based on the IP utilization during node pool creation and is immutable.",
7415-
"readOnly": true,
7462+
"description": "The subnetwork path for the node pool. Format: projects/{project}/regions/{region}/subnetworks/{subnetwork} If the cluster is associated with multiple subnetworks, the subnetwork for the node pool is picked based on the IP utilization during node pool creation and is immutable.",
74167463
"type": "string"
74177464
}
74187465
},
@@ -7485,6 +7532,10 @@
74857532
"$ref": "NodeNetworkConfig",
74867533
"description": "Networking configuration for this NodePool. If specified, it overrides the cluster-level defaults."
74877534
},
7535+
"nodeDrainConfig": {
7536+
"$ref": "NodeDrainConfig",
7537+
"description": "Specifies the node drain configuration for this node pool."
7538+
},
74887539
"placementPolicy": {
74897540
"$ref": "PlacementPolicy",
74907541
"description": "Specifies the node placement policy."
@@ -8050,6 +8101,21 @@
80508101
},
80518102
"type": "object"
80528103
},
8104+
"PdbBlockedPod": {
8105+
"description": "The namespace/name of the pod whose eviction is blocked by PDB.",
8106+
"id": "PdbBlockedPod",
8107+
"properties": {
8108+
"name": {
8109+
"description": "The name of the pod.",
8110+
"type": "string"
8111+
},
8112+
"namespace": {
8113+
"description": "The namespace of the pod.",
8114+
"type": "string"
8115+
}
8116+
},
8117+
"type": "object"
8118+
},
80538119
"PlacementPolicy": {
80548120
"description": "PlacementPolicy defines the placement policy used by the node pool.",
80558121
"id": "PlacementPolicy",
@@ -9806,6 +9872,10 @@
98069872
"description": "The name (project, location, cluster, node pool) of the node pool to update. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.",
98079873
"type": "string"
98089874
},
9875+
"nodeDrainConfig": {
9876+
"$ref": "NodeDrainConfig",
9877+
"description": "The desired node drain configuration for nodes in the node pool."
9878+
},
98099879
"nodeNetworkConfig": {
98109880
"$ref": "NodeNetworkConfig",
98119881
"description": "Node network config."
@@ -10040,6 +10110,10 @@
1004010110
"description": "A brief description of the event.",
1004110111
"type": "string"
1004210112
},
10113+
"disruptionEvent": {
10114+
"$ref": "DisruptionEvent",
10115+
"description": "The information about the disruption event. This field is only populated when event_type is DISRUPTION_EVENT."
10116+
},
1004310117
"endTime": {
1004410118
"description": "The time when the operation ended.",
1004510119
"format": "google-datetime",
@@ -10051,13 +10125,15 @@
1005110125
"EVENT_TYPE_UNSPECIFIED",
1005210126
"END_OF_SUPPORT",
1005310127
"COS_MILESTONE_VERSION_UPDATE",
10054-
"UPGRADE_LIFECYCLE"
10128+
"UPGRADE_LIFECYCLE",
10129+
"DISRUPTION_EVENT"
1005510130
],
1005610131
"enumDescriptions": [
1005710132
"EVENT_TYPE_UNSPECIFIED indicates the event type is unspecified.",
1005810133
"END_OF_SUPPORT indicates GKE version reaches end of support, check standard_support_end_time and extended_support_end_time for more details.",
1005910134
"COS_MILESTONE_VERSION_UPDATE indicates that the COS node image will update COS milestone version for new patch versions starting with the one in the description.",
10060-
"UPGRADE_LIFECYCLE indicates the event is about the upgrade lifecycle."
10135+
"UPGRADE_LIFECYCLE indicates the event is about the upgrade lifecycle.",
10136+
"DISRUPTION_EVENT indicates the event is about the disruption."
1006110137
],
1006210138
"type": "string"
1006310139
},

src/apis/container/v1beta1.ts

Lines changed: 60 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1822,6 +1822,27 @@ export namespace container_v1beta1 {
18221822
*/
18231823
desiredTier?: string | null;
18241824
}
1825+
/**
1826+
* DisruptionEvent is a notification sent to customers about the disruption event of a resource.
1827+
*/
1828+
export interface Schema$DisruptionEvent {
1829+
/**
1830+
* The type of the disruption event.
1831+
*/
1832+
disruptionType?: string | null;
1833+
/**
1834+
* The node whose drain is blocked by PDB. This field is set for both POD_PDB_VIOLATION and POD_NOT_ENOUGH_PDB event.
1835+
*/
1836+
pdbBlockedNode?: string | null;
1837+
/**
1838+
* The pods whose evictions are blocked by PDB. This field is set for both POD_PDB_VIOLATION and POD_NOT_ENOUGH_PDB event.
1839+
*/
1840+
pdbBlockedPod?: Schema$PdbBlockedPod[];
1841+
/**
1842+
* The timeout in seconds for which the node drain is blocked by PDB. After this timeout, pods are forcefully evicted. This field is only populated when event_type is POD_PDB_VIOLATION.
1843+
*/
1844+
pdbViolationTimeout?: string | null;
1845+
}
18251846
/**
18261847
* Configuration for NodeLocal DNSCache
18271848
*/
@@ -3268,6 +3289,15 @@ export namespace container_v1beta1 {
32683289
*/
32693290
nodeKubeletConfig?: Schema$NodeKubeletConfig;
32703291
}
3292+
/**
3293+
* NodeDrainConfig contains the node drain related configurations for this nodepool.
3294+
*/
3295+
export interface Schema$NodeDrainConfig {
3296+
/**
3297+
* Whether to respect PDB during node pool deletion.
3298+
*/
3299+
respectPdbDuringNodePoolDeletion?: boolean | null;
3300+
}
32713301
/**
32723302
* Configuration for kernel module loading on nodes.
32733303
*/
@@ -3437,7 +3467,7 @@ export namespace container_v1beta1 {
34373467
*/
34383468
podRange?: string | null;
34393469
/**
3440-
* Output only. The subnetwork path for the node pool. Format: projects/{project\}/regions/{region\}/subnetworks/{subnetwork\} If the cluster is associated with multiple subnetworks, the subnetwork for the node pool is picked based on the IP utilization during node pool creation and is immutable.
3470+
* The subnetwork path for the node pool. Format: projects/{project\}/regions/{region\}/subnetworks/{subnetwork\} If the cluster is associated with multiple subnetworks, the subnetwork for the node pool is picked based on the IP utilization during node pool creation and is immutable.
34413471
*/
34423472
subnetwork?: string | null;
34433473
}
@@ -3497,6 +3527,10 @@ export namespace container_v1beta1 {
34973527
* Networking configuration for this NodePool. If specified, it overrides the cluster-level defaults.
34983528
*/
34993529
networkConfig?: Schema$NodeNetworkConfig;
3530+
/**
3531+
* Specifies the node drain configuration for this node pool.
3532+
*/
3533+
nodeDrainConfig?: Schema$NodeDrainConfig;
35003534
/**
35013535
* Specifies the node placement policy.
35023536
*/
@@ -3816,6 +3850,19 @@ export namespace container_v1beta1 {
38163850
*/
38173851
productName?: string | null;
38183852
}
3853+
/**
3854+
* The namespace/name of the pod whose eviction is blocked by PDB.
3855+
*/
3856+
export interface Schema$PdbBlockedPod {
3857+
/**
3858+
* The name of the pod.
3859+
*/
3860+
name?: string | null;
3861+
/**
3862+
* The namespace of the pod.
3863+
*/
3864+
namespace?: string | null;
3865+
}
38193866
/**
38203867
* PlacementPolicy defines the placement policy used by the node pool.
38213868
*/
@@ -5088,6 +5135,10 @@ export namespace container_v1beta1 {
50885135
* The name (project, location, cluster, node pool) of the node pool to update. Specified in the format `projects/x/locations/x/clusters/x/nodePools/x`.
50895136
*/
50905137
name?: string | null;
5138+
/**
5139+
* The desired node drain configuration for nodes in the node pool.
5140+
*/
5141+
nodeDrainConfig?: Schema$NodeDrainConfig;
50915142
/**
50925143
* Node network config.
50935144
*/
@@ -5260,6 +5311,10 @@ export namespace container_v1beta1 {
52605311
* A brief description of the event.
52615312
*/
52625313
description?: string | null;
5314+
/**
5315+
* The information about the disruption event. This field is only populated when event_type is DISRUPTION_EVENT.
5316+
*/
5317+
disruptionEvent?: Schema$DisruptionEvent;
52635318
/**
52645319
* The time when the operation ended.
52655320
*/
@@ -10414,6 +10469,7 @@ export namespace container_v1beta1 {
1041410469
* // "maxPodsConstraint": {},
1041510470
* // "name": "my_name",
1041610471
* // "networkConfig": {},
10472+
* // "nodeDrainConfig": {},
1041710473
* // "placementPolicy": {},
1041810474
* // "podIpv4CidrSize": 0,
1041910475
* // "queuedProvisioning": {},
@@ -11386,6 +11442,7 @@ export namespace container_v1beta1 {
1138611442
* // "machineType": "my_machineType",
1138711443
* // "maxRunDuration": "my_maxRunDuration",
1138811444
* // "name": "my_name",
11445+
* // "nodeDrainConfig": {},
1138911446
* // "nodeNetworkConfig": {},
1139011447
* // "nodePoolId": "my_nodePoolId",
1139111448
* // "nodeVersion": "my_nodeVersion",
@@ -16740,6 +16797,7 @@ export namespace container_v1beta1 {
1674016797
* // "maxPodsConstraint": {},
1674116798
* // "name": "my_name",
1674216799
* // "networkConfig": {},
16800+
* // "nodeDrainConfig": {},
1674316801
* // "placementPolicy": {},
1674416802
* // "podIpv4CidrSize": 0,
1674516803
* // "queuedProvisioning": {},
@@ -17570,6 +17628,7 @@ export namespace container_v1beta1 {
1757017628
* // "machineType": "my_machineType",
1757117629
* // "maxRunDuration": "my_maxRunDuration",
1757217630
* // "name": "my_name",
17631+
* // "nodeDrainConfig": {},
1757317632
* // "nodeNetworkConfig": {},
1757417633
* // "nodePoolId": "my_nodePoolId",
1757517634
* // "nodeVersion": "my_nodeVersion",

0 commit comments

Comments
 (0)