|
14 | 14 | LKEClusterControlPlaneACLAddressesOptions, |
15 | 15 | LKEClusterControlPlaneACLOptions, |
16 | 16 | LKEClusterControlPlaneOptions, |
| 17 | + TieredKubeVersion, |
17 | 18 | ) |
18 | 19 | from linode_api4.common import RegionPrice |
19 | 20 | from linode_api4.errors import ApiError |
@@ -136,6 +137,35 @@ def lke_cluster_with_apl(test_linode_client): |
136 | 137 | cluster.delete() |
137 | 138 |
|
138 | 139 |
|
| 140 | +@pytest.fixture(scope="session") |
| 141 | +def lke_cluster_enterprise(test_linode_client): |
| 142 | + version = test_linode_client.lke.tier("enterprise").versions()[0] |
| 143 | + |
| 144 | + region = get_region( |
| 145 | + test_linode_client, {"Kubernetes Enterprise", "Disk Encryption"} |
| 146 | + ) |
| 147 | + |
| 148 | + node_pools = test_linode_client.lke.node_pool( |
| 149 | + "g6-dedicated-2", |
| 150 | + 3, |
| 151 | + k8s_version=version.id, |
| 152 | + update_strategy="rolling_update", |
| 153 | + ) |
| 154 | + label = get_test_label() + "_cluster" |
| 155 | + |
| 156 | + cluster = test_linode_client.lke.cluster_create( |
| 157 | + region, |
| 158 | + label, |
| 159 | + node_pools, |
| 160 | + version.id, |
| 161 | + tier="enterprise", |
| 162 | + ) |
| 163 | + |
| 164 | + yield cluster |
| 165 | + |
| 166 | + cluster.delete() |
| 167 | + |
| 168 | + |
139 | 169 | def get_cluster_status(cluster: LKECluster, status: str): |
140 | 170 | return cluster._raw_json["status"] == status |
141 | 171 |
|
@@ -398,6 +428,42 @@ def test_lke_cluster_with_apl(lke_cluster_with_apl): |
398 | 428 | ) |
399 | 429 |
|
400 | 430 |
|
| 431 | +def test_lke_cluster_enterprise(lke_cluster_enterprise): |
| 432 | + lke_cluster_enterprise.invalidate() |
| 433 | + assert lke_cluster_enterprise.tier == "enterprise" |
| 434 | + |
| 435 | + pool = lke_cluster_enterprise.pools[0] |
| 436 | + assert str(pool.k8s_version) == lke_cluster_enterprise.k8s_version.id |
| 437 | + assert pool.update_strategy == "rolling_update" |
| 438 | + |
| 439 | + pool.update_strategy = "on_delete" |
| 440 | + pool.k8s_version = "" |
| 441 | + |
| 442 | + |
| 443 | +def test_lke_tiered_versions(test_linode_client): |
| 444 | + def __assert_version(tier: str, version: TieredKubeVersion): |
| 445 | + assert version.tier == tier |
| 446 | + assert len(version.id) > 0 |
| 447 | + |
| 448 | + standard_versions = test_linode_client.lke.tier("standard").versions() |
| 449 | + assert len(standard_versions) > 0 |
| 450 | + |
| 451 | + standard_version = standard_versions[0] |
| 452 | + __assert_version("standard", standard_version) |
| 453 | + |
| 454 | + standard_version.invalidate() |
| 455 | + __assert_version("standard", standard_version) |
| 456 | + |
| 457 | + enterprise_versions = test_linode_client.lke.tier("enterprise").versions() |
| 458 | + assert len(enterprise_versions) > 0 |
| 459 | + |
| 460 | + enterprise_version = enterprise_versions[0] |
| 461 | + __assert_version("enterprise", enterprise_version) |
| 462 | + |
| 463 | + enterprise_version.invalidate() |
| 464 | + __assert_version("enterprise", enterprise_version) |
| 465 | + |
| 466 | + |
401 | 467 | def test_lke_types(test_linode_client): |
402 | 468 | types = test_linode_client.lke.types() |
403 | 469 |
|
|
0 commit comments