|
50 | 50 | CreateClusterRequest, |
51 | 51 | UpdateClusterRequest, |
52 | 52 | UpgradeClusterRequest, |
| 53 | + SetClusterTypeRequest, |
53 | 54 | CreatePoolRequest, |
54 | 55 | UpgradePoolRequest, |
55 | 56 | UpdatePoolRequest, |
|
62 | 63 | from .marshalling import ( |
63 | 64 | marshal_CreateClusterRequest, |
64 | 65 | marshal_CreatePoolRequest, |
| 66 | + marshal_SetClusterTypeRequest, |
65 | 67 | marshal_UpdateClusterRequest, |
66 | 68 | marshal_UpdatePoolRequest, |
67 | 69 | marshal_UpgradeClusterRequest, |
@@ -492,7 +494,7 @@ async def upgrade_cluster( |
492 | 494 | :param version: New Kubernetes version of the cluster. |
493 | 495 | New Kubernetes version of the cluster. Note that the version shoud either be a higher patch version of the same minor version or the direct minor version after the current one. |
494 | 496 | :param upgrade_pools: Enablement of the pools upgrade. |
495 | | - This field makes the upgrade upgrades the pool once the Kubernetes master in upgrade. |
| 497 | + This field also trigger pools upgrade once the control plane is upgraded. |
496 | 498 | :return: :class:`Cluster <Cluster>` |
497 | 499 |
|
498 | 500 | Usage: |
@@ -527,6 +529,52 @@ async def upgrade_cluster( |
527 | 529 | self._throw_on_error(res) |
528 | 530 | return unmarshal_Cluster(res.json()) |
529 | 531 |
|
| 532 | + async def set_cluster_type( |
| 533 | + self, |
| 534 | + *, |
| 535 | + cluster_id: str, |
| 536 | + type_: str, |
| 537 | + region: Optional[Region] = None, |
| 538 | + ) -> Cluster: |
| 539 | + """ |
| 540 | + Change type of a cluster. |
| 541 | + Change type of a specific Kubernetes cluster. |
| 542 | + :param region: Region to target. If none is passed will use default region from the config. |
| 543 | + :param cluster_id: ID of the cluster to migrate from one type to another. |
| 544 | + :param type_: Type of the cluster. |
| 545 | + Type of the cluster. Note that some migrations are not possible (please refer to product documentation). |
| 546 | + :return: :class:`Cluster <Cluster>` |
| 547 | +
|
| 548 | + Usage: |
| 549 | + :: |
| 550 | +
|
| 551 | + result = await api.set_cluster_type( |
| 552 | + cluster_id="example", |
| 553 | + type_="example", |
| 554 | + ) |
| 555 | + """ |
| 556 | + |
| 557 | + param_region = validate_path_param( |
| 558 | + "region", region or self.client.default_region |
| 559 | + ) |
| 560 | + param_cluster_id = validate_path_param("cluster_id", cluster_id) |
| 561 | + |
| 562 | + res = self._request( |
| 563 | + "POST", |
| 564 | + f"/k8s/v1/regions/{param_region}/clusters/{param_cluster_id}/set-type", |
| 565 | + body=marshal_SetClusterTypeRequest( |
| 566 | + SetClusterTypeRequest( |
| 567 | + cluster_id=cluster_id, |
| 568 | + type_=type_, |
| 569 | + region=region, |
| 570 | + ), |
| 571 | + self.client, |
| 572 | + ), |
| 573 | + ) |
| 574 | + |
| 575 | + self._throw_on_error(res) |
| 576 | + return unmarshal_Cluster(res.json()) |
| 577 | + |
530 | 578 | async def list_cluster_available_versions( |
531 | 579 | self, |
532 | 580 | *, |
|
0 commit comments