From 7de834cac03cd495d26a6e8ed3245f810d343dd8 Mon Sep 17 00:00:00 2001 From: rpotla Date: Wed, 20 Aug 2025 18:42:09 -0400 Subject: [PATCH 1/2] add label to nodepool --- linode_api4/objects/lke.py | 19 +++++++++++-------- .../lke_clusters_18881_pools_456.json | 1 + .../lke_clusters_18882_pools_789.json | 1 + test/unit/objects/lke_test.py | 7 +++++++ 4 files changed, 20 insertions(+), 8 deletions(-) diff --git a/linode_api4/objects/lke.py b/linode_api4/objects/lke.py index 7086b1113..c85afffca 100644 --- a/linode_api4/objects/lke.py +++ b/linode_api4/objects/lke.py @@ -13,7 +13,7 @@ Property, Region, Type, -) +) from linode_api4.objects.base import _flatten_request_body_recursive from linode_api4.util import drop_null_keys @@ -187,6 +187,7 @@ class LKENodePool(DerivedBase): properties = { "id": Property(identifier=True), "cluster_id": Property(identifier=True), + "label": Property(mutable=True), "type": Property(slug_relationship=Type), "disks": Property(), "disk_encryption": Property(), @@ -419,6 +420,7 @@ def node_pool_create( Union[str, KubeVersion, TieredKubeVersion] ] = None, update_strategy: Optional[str] = None, + label: str = None, **kwargs, ): """ @@ -444,25 +446,26 @@ def node_pool_create( for possible values. :returns: The new Node Pool + :param label: The name of the node pool. + :type label: str :rtype: LKENodePool """ params = { "type": node_type, + "label": label, "count": node_count, "labels": labels, "taints": taints, "k8s_version": k8s_version, "update_strategy": update_strategy, } - - if labels is not None: - params["labels"] = labels - - if taints is not None: - params["taints"] = taints - params.update(kwargs) + print(params) + print("-----") + print(drop_null_keys(_flatten_request_body_recursive(params))) + # exit(0) + result = self._client.post( "{}/pools".format(LKECluster.api_endpoint), model=self, diff --git a/test/fixtures/lke_clusters_18881_pools_456.json b/test/fixtures/lke_clusters_18881_pools_456.json index f904b9c95..9aa5fb0f0 100644 --- a/test/fixtures/lke_clusters_18881_pools_456.json +++ b/test/fixtures/lke_clusters_18881_pools_456.json @@ -34,6 +34,7 @@ "foo": "bar", "bar": "foo" }, + "label": "example-node-pool", "type": "g6-standard-4", "disk_encryption": "enabled" } \ No newline at end of file diff --git a/test/fixtures/lke_clusters_18882_pools_789.json b/test/fixtures/lke_clusters_18882_pools_789.json index a7bbc4749..d3c17eedb 100644 --- a/test/fixtures/lke_clusters_18882_pools_789.json +++ b/test/fixtures/lke_clusters_18882_pools_789.json @@ -1,6 +1,7 @@ { "id": 789, "type": "g6-standard-2", + "label": "enterprise-node-pool", "count": 3, "nodes": [], "disks": [], diff --git a/test/unit/objects/lke_test.py b/test/unit/objects/lke_test.py index a0ad63288..862e87a0b 100644 --- a/test/unit/objects/lke_test.py +++ b/test/unit/objects/lke_test.py @@ -51,6 +51,7 @@ def test_get_pool(self): assert pool.id == 456 assert pool.cluster_id == 18881 assert pool.type.id == "g6-standard-4" + assert pool.label == "example-node-pool" assert pool.disk_encryption == InstanceDiskEncryptionType.enabled assert pool.disks is not None @@ -162,6 +163,7 @@ def test_load_node_pool(self): self.assertEqual(pool.id, 456) self.assertEqual(pool.cluster_id, 18881) self.assertEqual(pool.type.id, "g6-standard-4") + self.assertEqual(pool.label, "example-node-pool") self.assertIsNotNone(pool.disks) self.assertIsNotNone(pool.nodes) self.assertIsNotNone(pool.autoscaler) @@ -251,6 +253,7 @@ def test_lke_node_pool_update(self): pool.tags = ["foobar"] pool.count = 5 + pool.label = "testing-label" pool.autoscaler = { "enabled": True, "min": 2, @@ -266,6 +269,8 @@ def test_lke_node_pool_update(self): with self.mock_put("lke/clusters/18881/pools/456") as m: pool.save() + print(m.call_data) + assert m.call_data == { "tags": ["foobar"], "count": 5, @@ -274,6 +279,7 @@ def test_lke_node_pool_update(self): "min": 2, "max": 10, }, + "label": "testing-label", "labels": { "updated-key": "updated-value", }, @@ -546,6 +552,7 @@ def test_cluster_enterprise(self): pool = LKENodePool(self.client, 789, 18882) assert pool.k8s_version == "1.31.1+lke1" assert pool.update_strategy == "rolling_update" + assert pool.label == "enterprise-node-pool" def test_lke_tiered_version(self): version = TieredKubeVersion(self.client, "1.32", "standard") From edf6794861d4fe12a2c82f03fb75fc20df7d311b Mon Sep 17 00:00:00 2001 From: rpotla Date: Wed, 20 Aug 2025 18:54:46 -0400 Subject: [PATCH 2/2] remove redundant prints --- linode_api4/objects/lke.py | 7 +------ test/unit/objects/lke_test.py | 2 -- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/linode_api4/objects/lke.py b/linode_api4/objects/lke.py index c85afffca..792aed988 100644 --- a/linode_api4/objects/lke.py +++ b/linode_api4/objects/lke.py @@ -13,7 +13,7 @@ Property, Region, Type, -) +) from linode_api4.objects.base import _flatten_request_body_recursive from linode_api4.util import drop_null_keys @@ -461,11 +461,6 @@ def node_pool_create( } params.update(kwargs) - print(params) - print("-----") - print(drop_null_keys(_flatten_request_body_recursive(params))) - # exit(0) - result = self._client.post( "{}/pools".format(LKECluster.api_endpoint), model=self, diff --git a/test/unit/objects/lke_test.py b/test/unit/objects/lke_test.py index 862e87a0b..cb9589cfb 100644 --- a/test/unit/objects/lke_test.py +++ b/test/unit/objects/lke_test.py @@ -269,8 +269,6 @@ def test_lke_node_pool_update(self): with self.mock_put("lke/clusters/18881/pools/456") as m: pool.save() - print(m.call_data) - assert m.call_data == { "tags": ["foobar"], "count": 5,