alibabacloud-polardb20170801 6.1.10__tar.gz → 6.2.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (17) hide show
  1. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/ChangeLog.md +32 -0
  2. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/PKG-INFO +1 -1
  3. alibabacloud_polardb20170801-6.2.1/alibabacloud_polardb20170801/__init__.py +1 -0
  4. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/alibabacloud_polardb20170801/client.py +208 -0
  5. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/alibabacloud_polardb20170801/models.py +291 -0
  6. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/alibabacloud_polardb20170801.egg-info/PKG-INFO +1 -1
  7. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/setup.py +1 -1
  8. alibabacloud_polardb20170801-6.1.10/alibabacloud_polardb20170801/__init__.py +0 -1
  9. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/LICENSE +0 -0
  10. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/MANIFEST.in +0 -0
  11. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/README-CN.md +0 -0
  12. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/README.md +0 -0
  13. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/alibabacloud_polardb20170801.egg-info/SOURCES.txt +0 -0
  14. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/alibabacloud_polardb20170801.egg-info/dependency_links.txt +0 -0
  15. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/alibabacloud_polardb20170801.egg-info/requires.txt +0 -0
  16. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/alibabacloud_polardb20170801.egg-info/top_level.txt +0 -0
  17. {alibabacloud_polardb20170801-6.1.10 → alibabacloud_polardb20170801-6.2.1}/setup.cfg +0 -0
@@ -1,3 +1,35 @@
1
+ 2025-12-10 Version: 6.2.0
2
+ - Support API CreateAINodes.
3
+ - Support API DeleteAINodes.
4
+
5
+
6
+ 2025-12-09 Version: 6.1.10
7
+ - Update API CreateApplication: add request parameters AutoUseCoupon.
8
+ - Update API CreateApplication: add request parameters PromotionCode.
9
+ - Update API CreateDBCluster: add request parameters AutoUseCoupon.
10
+ - Update API CreateDBCluster: add request parameters PromotionCode.
11
+ - Update API CreateDBNodes: add request parameters AutoUseCoupon.
12
+ - Update API CreateDBNodes: add request parameters PromotionCode.
13
+ - Update API CreateStoragePlan: add request parameters AutoUseCoupon.
14
+ - Update API CreateStoragePlan: add request parameters PromotionCode.
15
+ - Update API DescribeAIDBClusterAttribute: add response parameters Body.EcsSecurityGroupId.
16
+ - Update API DescribePolarFsAttribute: add response parameters Body.CustomBucketPath.
17
+ - Update API ModifyDBClusterArch: add request parameters AutoUseCoupon.
18
+ - Update API ModifyDBClusterArch: add request parameters PromotionCode.
19
+ - Update API ModifyDBClusterStoragePerformance: add request parameters AutoUseCoupon.
20
+ - Update API ModifyDBClusterStoragePerformance: add request parameters PromotionCode.
21
+ - Update API ModifyDBClusterStorageSpace: add request parameters AutoUseCoupon.
22
+ - Update API ModifyDBClusterStorageSpace: add request parameters PromotionCode.
23
+ - Update API ModifyDBNodeClass: add request parameters AutoUseCoupon.
24
+ - Update API ModifyDBNodeClass: add request parameters PromotionCode.
25
+ - Update API ModifyDBNodesClass: add request parameters AutoUseCoupon.
26
+ - Update API ModifyDBNodesClass: add request parameters PromotionCode.
27
+ - Update API TempModifyDBNode: add request parameters AutoUseCoupon.
28
+ - Update API TempModifyDBNode: add request parameters PromotionCode.
29
+ - Update API TransformDBClusterPayType: add request parameters AutoUseCoupon.
30
+ - Update API TransformDBClusterPayType: add request parameters PromotionCode.
31
+
32
+
1
33
  2025-11-28 Version: 6.1.9
2
34
  - Generated python 2017-08-01 for polardb.
3
35
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: alibabacloud_polardb20170801
3
- Version: 6.1.10
3
+ Version: 6.2.1
4
4
  Summary: Alibaba Cloud ApsaraDB for POLARDB (20170801) SDK Library for Python
5
5
  Home-page: https://github.com/aliyun/alibabacloud-python-sdk
6
6
  Author: Alibaba Cloud SDK
@@ -0,0 +1 @@
1
+ __version__ = '6.2.1'
@@ -2410,6 +2410,106 @@ class Client(OpenApiClient):
2410
2410
  runtime = util_models.RuntimeOptions()
2411
2411
  return await self.continue_dbcluster_migration_with_options_async(request, runtime)
2412
2412
 
2413
+ def create_ainodes_with_options(
2414
+ self,
2415
+ request: polardb_20170801_models.CreateAINodesRequest,
2416
+ runtime: util_models.RuntimeOptions,
2417
+ ) -> polardb_20170801_models.CreateAINodesResponse:
2418
+ """
2419
+ @summary 创建AI节点
2420
+
2421
+ @param request: CreateAINodesRequest
2422
+ @param runtime: runtime options for this request RuntimeOptions
2423
+ @return: CreateAINodesResponse
2424
+ """
2425
+ UtilClient.validate_model(request)
2426
+ query = {}
2427
+ if not UtilClient.is_unset(request.dbcluster_id):
2428
+ query['DBClusterId'] = request.dbcluster_id
2429
+ if not UtilClient.is_unset(request.dbnodes):
2430
+ query['DBNodes'] = request.dbnodes
2431
+ req = open_api_models.OpenApiRequest(
2432
+ query=OpenApiUtilClient.query(query)
2433
+ )
2434
+ params = open_api_models.Params(
2435
+ action='CreateAINodes',
2436
+ version='2017-08-01',
2437
+ protocol='HTTPS',
2438
+ pathname='/',
2439
+ method='POST',
2440
+ auth_type='AK',
2441
+ style='RPC',
2442
+ req_body_type='formData',
2443
+ body_type='json'
2444
+ )
2445
+ return TeaCore.from_map(
2446
+ polardb_20170801_models.CreateAINodesResponse(),
2447
+ self.call_api(params, req, runtime)
2448
+ )
2449
+
2450
+ async def create_ainodes_with_options_async(
2451
+ self,
2452
+ request: polardb_20170801_models.CreateAINodesRequest,
2453
+ runtime: util_models.RuntimeOptions,
2454
+ ) -> polardb_20170801_models.CreateAINodesResponse:
2455
+ """
2456
+ @summary 创建AI节点
2457
+
2458
+ @param request: CreateAINodesRequest
2459
+ @param runtime: runtime options for this request RuntimeOptions
2460
+ @return: CreateAINodesResponse
2461
+ """
2462
+ UtilClient.validate_model(request)
2463
+ query = {}
2464
+ if not UtilClient.is_unset(request.dbcluster_id):
2465
+ query['DBClusterId'] = request.dbcluster_id
2466
+ if not UtilClient.is_unset(request.dbnodes):
2467
+ query['DBNodes'] = request.dbnodes
2468
+ req = open_api_models.OpenApiRequest(
2469
+ query=OpenApiUtilClient.query(query)
2470
+ )
2471
+ params = open_api_models.Params(
2472
+ action='CreateAINodes',
2473
+ version='2017-08-01',
2474
+ protocol='HTTPS',
2475
+ pathname='/',
2476
+ method='POST',
2477
+ auth_type='AK',
2478
+ style='RPC',
2479
+ req_body_type='formData',
2480
+ body_type='json'
2481
+ )
2482
+ return TeaCore.from_map(
2483
+ polardb_20170801_models.CreateAINodesResponse(),
2484
+ await self.call_api_async(params, req, runtime)
2485
+ )
2486
+
2487
+ def create_ainodes(
2488
+ self,
2489
+ request: polardb_20170801_models.CreateAINodesRequest,
2490
+ ) -> polardb_20170801_models.CreateAINodesResponse:
2491
+ """
2492
+ @summary 创建AI节点
2493
+
2494
+ @param request: CreateAINodesRequest
2495
+ @return: CreateAINodesResponse
2496
+ """
2497
+ runtime = util_models.RuntimeOptions()
2498
+ return self.create_ainodes_with_options(request, runtime)
2499
+
2500
+ async def create_ainodes_async(
2501
+ self,
2502
+ request: polardb_20170801_models.CreateAINodesRequest,
2503
+ ) -> polardb_20170801_models.CreateAINodesResponse:
2504
+ """
2505
+ @summary 创建AI节点
2506
+
2507
+ @param request: CreateAINodesRequest
2508
+ @return: CreateAINodesResponse
2509
+ """
2510
+ runtime = util_models.RuntimeOptions()
2511
+ return await self.create_ainodes_with_options_async(request, runtime)
2512
+
2413
2513
  def create_account_with_options(
2414
2514
  self,
2415
2515
  request: polardb_20170801_models.CreateAccountRequest,
@@ -6278,6 +6378,106 @@ class Client(OpenApiClient):
6278
6378
  runtime = util_models.RuntimeOptions()
6279
6379
  return await self.delete_aidbcluster_with_options_async(request, runtime)
6280
6380
 
6381
+ def delete_ainodes_with_options(
6382
+ self,
6383
+ request: polardb_20170801_models.DeleteAINodesRequest,
6384
+ runtime: util_models.RuntimeOptions,
6385
+ ) -> polardb_20170801_models.DeleteAINodesResponse:
6386
+ """
6387
+ @summary 删除ai实例子节点
6388
+
6389
+ @param request: DeleteAINodesRequest
6390
+ @param runtime: runtime options for this request RuntimeOptions
6391
+ @return: DeleteAINodesResponse
6392
+ """
6393
+ UtilClient.validate_model(request)
6394
+ query = {}
6395
+ if not UtilClient.is_unset(request.dbcluster_id):
6396
+ query['DBClusterId'] = request.dbcluster_id
6397
+ if not UtilClient.is_unset(request.dbnode_id):
6398
+ query['DBNodeId'] = request.dbnode_id
6399
+ req = open_api_models.OpenApiRequest(
6400
+ query=OpenApiUtilClient.query(query)
6401
+ )
6402
+ params = open_api_models.Params(
6403
+ action='DeleteAINodes',
6404
+ version='2017-08-01',
6405
+ protocol='HTTPS',
6406
+ pathname='/',
6407
+ method='POST',
6408
+ auth_type='AK',
6409
+ style='RPC',
6410
+ req_body_type='formData',
6411
+ body_type='json'
6412
+ )
6413
+ return TeaCore.from_map(
6414
+ polardb_20170801_models.DeleteAINodesResponse(),
6415
+ self.call_api(params, req, runtime)
6416
+ )
6417
+
6418
+ async def delete_ainodes_with_options_async(
6419
+ self,
6420
+ request: polardb_20170801_models.DeleteAINodesRequest,
6421
+ runtime: util_models.RuntimeOptions,
6422
+ ) -> polardb_20170801_models.DeleteAINodesResponse:
6423
+ """
6424
+ @summary 删除ai实例子节点
6425
+
6426
+ @param request: DeleteAINodesRequest
6427
+ @param runtime: runtime options for this request RuntimeOptions
6428
+ @return: DeleteAINodesResponse
6429
+ """
6430
+ UtilClient.validate_model(request)
6431
+ query = {}
6432
+ if not UtilClient.is_unset(request.dbcluster_id):
6433
+ query['DBClusterId'] = request.dbcluster_id
6434
+ if not UtilClient.is_unset(request.dbnode_id):
6435
+ query['DBNodeId'] = request.dbnode_id
6436
+ req = open_api_models.OpenApiRequest(
6437
+ query=OpenApiUtilClient.query(query)
6438
+ )
6439
+ params = open_api_models.Params(
6440
+ action='DeleteAINodes',
6441
+ version='2017-08-01',
6442
+ protocol='HTTPS',
6443
+ pathname='/',
6444
+ method='POST',
6445
+ auth_type='AK',
6446
+ style='RPC',
6447
+ req_body_type='formData',
6448
+ body_type='json'
6449
+ )
6450
+ return TeaCore.from_map(
6451
+ polardb_20170801_models.DeleteAINodesResponse(),
6452
+ await self.call_api_async(params, req, runtime)
6453
+ )
6454
+
6455
+ def delete_ainodes(
6456
+ self,
6457
+ request: polardb_20170801_models.DeleteAINodesRequest,
6458
+ ) -> polardb_20170801_models.DeleteAINodesResponse:
6459
+ """
6460
+ @summary 删除ai实例子节点
6461
+
6462
+ @param request: DeleteAINodesRequest
6463
+ @return: DeleteAINodesResponse
6464
+ """
6465
+ runtime = util_models.RuntimeOptions()
6466
+ return self.delete_ainodes_with_options(request, runtime)
6467
+
6468
+ async def delete_ainodes_async(
6469
+ self,
6470
+ request: polardb_20170801_models.DeleteAINodesRequest,
6471
+ ) -> polardb_20170801_models.DeleteAINodesResponse:
6472
+ """
6473
+ @summary 删除ai实例子节点
6474
+
6475
+ @param request: DeleteAINodesRequest
6476
+ @return: DeleteAINodesResponse
6477
+ """
6478
+ runtime = util_models.RuntimeOptions()
6479
+ return await self.delete_ainodes_with_options_async(request, runtime)
6480
+
6281
6481
  def delete_account_with_options(
6282
6482
  self,
6283
6483
  request: polardb_20170801_models.DeleteAccountRequest,
@@ -6874,6 +7074,8 @@ class Client(OpenApiClient):
6874
7074
  query = {}
6875
7075
  if not UtilClient.is_unset(request.backup_retention_policy_on_cluster_deletion):
6876
7076
  query['BackupRetentionPolicyOnClusterDeletion'] = request.backup_retention_policy_on_cluster_deletion
7077
+ if not UtilClient.is_unset(request.cloud_provider):
7078
+ query['CloudProvider'] = request.cloud_provider
6877
7079
  if not UtilClient.is_unset(request.dbcluster_id):
6878
7080
  query['DBClusterId'] = request.dbcluster_id
6879
7081
  if not UtilClient.is_unset(request.owner_account):
@@ -6919,6 +7121,8 @@ class Client(OpenApiClient):
6919
7121
  query = {}
6920
7122
  if not UtilClient.is_unset(request.backup_retention_policy_on_cluster_deletion):
6921
7123
  query['BackupRetentionPolicyOnClusterDeletion'] = request.backup_retention_policy_on_cluster_deletion
7124
+ if not UtilClient.is_unset(request.cloud_provider):
7125
+ query['CloudProvider'] = request.cloud_provider
6922
7126
  if not UtilClient.is_unset(request.dbcluster_id):
6923
7127
  query['DBClusterId'] = request.dbcluster_id
6924
7128
  if not UtilClient.is_unset(request.owner_account):
@@ -32752,6 +32956,8 @@ class Client(OpenApiClient):
32752
32956
  query['ResourceOwnerId'] = request.resource_owner_id
32753
32957
  if not UtilClient.is_unset(request.security_token):
32754
32958
  query['SecurityToken'] = request.security_token
32959
+ if not UtilClient.is_unset(request.target_dbcluster_id):
32960
+ query['TargetDBClusterId'] = request.target_dbcluster_id
32755
32961
  req = open_api_models.OpenApiRequest(
32756
32962
  query=OpenApiUtilClient.query(query)
32757
32963
  )
@@ -32803,6 +33009,8 @@ class Client(OpenApiClient):
32803
33009
  query['ResourceOwnerId'] = request.resource_owner_id
32804
33010
  if not UtilClient.is_unset(request.security_token):
32805
33011
  query['SecurityToken'] = request.security_token
33012
+ if not UtilClient.is_unset(request.target_dbcluster_id):
33013
+ query['TargetDBClusterId'] = request.target_dbcluster_id
32806
33014
  req = open_api_models.OpenApiRequest(
32807
33015
  query=OpenApiUtilClient.query(query)
32808
33016
  )
@@ -2832,6 +2832,160 @@ class ContinueDBClusterMigrationResponse(TeaModel):
2832
2832
  return self
2833
2833
 
2834
2834
 
2835
+ class CreateAINodesRequestDBNodes(TeaModel):
2836
+ def __init__(
2837
+ self,
2838
+ dbnode_class: str = None,
2839
+ ):
2840
+ self.dbnode_class = dbnode_class
2841
+
2842
+ def validate(self):
2843
+ pass
2844
+
2845
+ def to_map(self):
2846
+ _map = super().to_map()
2847
+ if _map is not None:
2848
+ return _map
2849
+
2850
+ result = dict()
2851
+ if self.dbnode_class is not None:
2852
+ result['DBNodeClass'] = self.dbnode_class
2853
+ return result
2854
+
2855
+ def from_map(self, m: dict = None):
2856
+ m = m or dict()
2857
+ if m.get('DBNodeClass') is not None:
2858
+ self.dbnode_class = m.get('DBNodeClass')
2859
+ return self
2860
+
2861
+
2862
+ class CreateAINodesRequest(TeaModel):
2863
+ def __init__(
2864
+ self,
2865
+ dbcluster_id: str = None,
2866
+ dbnodes: List[CreateAINodesRequestDBNodes] = None,
2867
+ ):
2868
+ self.dbcluster_id = dbcluster_id
2869
+ self.dbnodes = dbnodes
2870
+
2871
+ def validate(self):
2872
+ if self.dbnodes:
2873
+ for k in self.dbnodes:
2874
+ if k:
2875
+ k.validate()
2876
+
2877
+ def to_map(self):
2878
+ _map = super().to_map()
2879
+ if _map is not None:
2880
+ return _map
2881
+
2882
+ result = dict()
2883
+ if self.dbcluster_id is not None:
2884
+ result['DBClusterId'] = self.dbcluster_id
2885
+ result['DBNodes'] = []
2886
+ if self.dbnodes is not None:
2887
+ for k in self.dbnodes:
2888
+ result['DBNodes'].append(k.to_map() if k else None)
2889
+ return result
2890
+
2891
+ def from_map(self, m: dict = None):
2892
+ m = m or dict()
2893
+ if m.get('DBClusterId') is not None:
2894
+ self.dbcluster_id = m.get('DBClusterId')
2895
+ self.dbnodes = []
2896
+ if m.get('DBNodes') is not None:
2897
+ for k in m.get('DBNodes'):
2898
+ temp_model = CreateAINodesRequestDBNodes()
2899
+ self.dbnodes.append(temp_model.from_map(k))
2900
+ return self
2901
+
2902
+
2903
+ class CreateAINodesResponseBody(TeaModel):
2904
+ def __init__(
2905
+ self,
2906
+ dbcluster_id: str = None,
2907
+ dbnode_ids: List[str] = None,
2908
+ order_id: str = None,
2909
+ request_id: str = None,
2910
+ ):
2911
+ self.dbcluster_id = dbcluster_id
2912
+ self.dbnode_ids = dbnode_ids
2913
+ self.order_id = order_id
2914
+ self.request_id = request_id
2915
+
2916
+ def validate(self):
2917
+ pass
2918
+
2919
+ def to_map(self):
2920
+ _map = super().to_map()
2921
+ if _map is not None:
2922
+ return _map
2923
+
2924
+ result = dict()
2925
+ if self.dbcluster_id is not None:
2926
+ result['DBClusterId'] = self.dbcluster_id
2927
+ if self.dbnode_ids is not None:
2928
+ result['DBNodeIds'] = self.dbnode_ids
2929
+ if self.order_id is not None:
2930
+ result['OrderId'] = self.order_id
2931
+ if self.request_id is not None:
2932
+ result['RequestId'] = self.request_id
2933
+ return result
2934
+
2935
+ def from_map(self, m: dict = None):
2936
+ m = m or dict()
2937
+ if m.get('DBClusterId') is not None:
2938
+ self.dbcluster_id = m.get('DBClusterId')
2939
+ if m.get('DBNodeIds') is not None:
2940
+ self.dbnode_ids = m.get('DBNodeIds')
2941
+ if m.get('OrderId') is not None:
2942
+ self.order_id = m.get('OrderId')
2943
+ if m.get('RequestId') is not None:
2944
+ self.request_id = m.get('RequestId')
2945
+ return self
2946
+
2947
+
2948
+ class CreateAINodesResponse(TeaModel):
2949
+ def __init__(
2950
+ self,
2951
+ headers: Dict[str, str] = None,
2952
+ status_code: int = None,
2953
+ body: CreateAINodesResponseBody = None,
2954
+ ):
2955
+ self.headers = headers
2956
+ self.status_code = status_code
2957
+ self.body = body
2958
+
2959
+ def validate(self):
2960
+ if self.body:
2961
+ self.body.validate()
2962
+
2963
+ def to_map(self):
2964
+ _map = super().to_map()
2965
+ if _map is not None:
2966
+ return _map
2967
+
2968
+ result = dict()
2969
+ if self.headers is not None:
2970
+ result['headers'] = self.headers
2971
+ if self.status_code is not None:
2972
+ result['statusCode'] = self.status_code
2973
+ if self.body is not None:
2974
+ result['body'] = self.body.to_map()
2975
+ return result
2976
+
2977
+ def from_map(self, m: dict = None):
2978
+ m = m or dict()
2979
+ if m.get('headers') is not None:
2980
+ self.headers = m.get('headers')
2981
+ if m.get('statusCode') is not None:
2982
+ self.status_code = m.get('statusCode')
2983
+ if m.get('body') is not None:
2984
+ temp_model = CreateAINodesResponseBody()
2985
+ self.body = temp_model.from_map(m['body'])
2986
+ return self
2987
+
2988
+
2835
2989
  class CreateAccountRequest(TeaModel):
2836
2990
  def __init__(
2837
2991
  self,
@@ -8818,6 +8972,119 @@ class DeleteAIDBClusterResponse(TeaModel):
8818
8972
  return self
8819
8973
 
8820
8974
 
8975
+ class DeleteAINodesRequest(TeaModel):
8976
+ def __init__(
8977
+ self,
8978
+ dbcluster_id: str = None,
8979
+ dbnode_id: List[str] = None,
8980
+ ):
8981
+ self.dbcluster_id = dbcluster_id
8982
+ self.dbnode_id = dbnode_id
8983
+
8984
+ def validate(self):
8985
+ pass
8986
+
8987
+ def to_map(self):
8988
+ _map = super().to_map()
8989
+ if _map is not None:
8990
+ return _map
8991
+
8992
+ result = dict()
8993
+ if self.dbcluster_id is not None:
8994
+ result['DBClusterId'] = self.dbcluster_id
8995
+ if self.dbnode_id is not None:
8996
+ result['DBNodeId'] = self.dbnode_id
8997
+ return result
8998
+
8999
+ def from_map(self, m: dict = None):
9000
+ m = m or dict()
9001
+ if m.get('DBClusterId') is not None:
9002
+ self.dbcluster_id = m.get('DBClusterId')
9003
+ if m.get('DBNodeId') is not None:
9004
+ self.dbnode_id = m.get('DBNodeId')
9005
+ return self
9006
+
9007
+
9008
+ class DeleteAINodesResponseBody(TeaModel):
9009
+ def __init__(
9010
+ self,
9011
+ dbcluster_id: str = None,
9012
+ order_id: str = None,
9013
+ request_id: str = None,
9014
+ ):
9015
+ self.dbcluster_id = dbcluster_id
9016
+ self.order_id = order_id
9017
+ self.request_id = request_id
9018
+
9019
+ def validate(self):
9020
+ pass
9021
+
9022
+ def to_map(self):
9023
+ _map = super().to_map()
9024
+ if _map is not None:
9025
+ return _map
9026
+
9027
+ result = dict()
9028
+ if self.dbcluster_id is not None:
9029
+ result['DBClusterId'] = self.dbcluster_id
9030
+ if self.order_id is not None:
9031
+ result['OrderId'] = self.order_id
9032
+ if self.request_id is not None:
9033
+ result['RequestId'] = self.request_id
9034
+ return result
9035
+
9036
+ def from_map(self, m: dict = None):
9037
+ m = m or dict()
9038
+ if m.get('DBClusterId') is not None:
9039
+ self.dbcluster_id = m.get('DBClusterId')
9040
+ if m.get('OrderId') is not None:
9041
+ self.order_id = m.get('OrderId')
9042
+ if m.get('RequestId') is not None:
9043
+ self.request_id = m.get('RequestId')
9044
+ return self
9045
+
9046
+
9047
+ class DeleteAINodesResponse(TeaModel):
9048
+ def __init__(
9049
+ self,
9050
+ headers: Dict[str, str] = None,
9051
+ status_code: int = None,
9052
+ body: DeleteAINodesResponseBody = None,
9053
+ ):
9054
+ self.headers = headers
9055
+ self.status_code = status_code
9056
+ self.body = body
9057
+
9058
+ def validate(self):
9059
+ if self.body:
9060
+ self.body.validate()
9061
+
9062
+ def to_map(self):
9063
+ _map = super().to_map()
9064
+ if _map is not None:
9065
+ return _map
9066
+
9067
+ result = dict()
9068
+ if self.headers is not None:
9069
+ result['headers'] = self.headers
9070
+ if self.status_code is not None:
9071
+ result['statusCode'] = self.status_code
9072
+ if self.body is not None:
9073
+ result['body'] = self.body.to_map()
9074
+ return result
9075
+
9076
+ def from_map(self, m: dict = None):
9077
+ m = m or dict()
9078
+ if m.get('headers') is not None:
9079
+ self.headers = m.get('headers')
9080
+ if m.get('statusCode') is not None:
9081
+ self.status_code = m.get('statusCode')
9082
+ if m.get('body') is not None:
9083
+ temp_model = DeleteAINodesResponseBody()
9084
+ self.body = temp_model.from_map(m['body'])
9085
+ return self
9086
+
9087
+
8821
9088
  class DeleteAccountRequest(TeaModel):
8822
9089
  def __init__(
8823
9090
  self,
@@ -9433,6 +9700,7 @@ class DeleteDBClusterRequest(TeaModel):
9433
9700
  def __init__(
9434
9701
  self,
9435
9702
  backup_retention_policy_on_cluster_deletion: str = None,
9703
+ cloud_provider: str = None,
9436
9704
  dbcluster_id: str = None,
9437
9705
  owner_account: str = None,
9438
9706
  owner_id: int = None,
@@ -9445,6 +9713,7 @@ class DeleteDBClusterRequest(TeaModel):
9445
9713
  # * **LATEST**: permanently retains the most recent backup set that is automatically created before the cluster is released.
9446
9714
  # * **NONE**: does not retain backup sets.
9447
9715
  self.backup_retention_policy_on_cluster_deletion = backup_retention_policy_on_cluster_deletion
9716
+ self.cloud_provider = cloud_provider
9448
9717
  # The cluster ID.
9449
9718
  #
9450
9719
  # This parameter is required.
@@ -9465,6 +9734,8 @@ class DeleteDBClusterRequest(TeaModel):
9465
9734
  result = dict()
9466
9735
  if self.backup_retention_policy_on_cluster_deletion is not None:
9467
9736
  result['BackupRetentionPolicyOnClusterDeletion'] = self.backup_retention_policy_on_cluster_deletion
9737
+ if self.cloud_provider is not None:
9738
+ result['CloudProvider'] = self.cloud_provider
9468
9739
  if self.dbcluster_id is not None:
9469
9740
  result['DBClusterId'] = self.dbcluster_id
9470
9741
  if self.owner_account is not None:
@@ -9481,6 +9752,8 @@ class DeleteDBClusterRequest(TeaModel):
9481
9752
  m = m or dict()
9482
9753
  if m.get('BackupRetentionPolicyOnClusterDeletion') is not None:
9483
9754
  self.backup_retention_policy_on_cluster_deletion = m.get('BackupRetentionPolicyOnClusterDeletion')
9755
+ if m.get('CloudProvider') is not None:
9756
+ self.cloud_provider = m.get('CloudProvider')
9484
9757
  if m.get('DBClusterId') is not None:
9485
9758
  self.dbcluster_id = m.get('DBClusterId')
9486
9759
  if m.get('OwnerAccount') is not None:
@@ -12555,6 +12828,7 @@ class DescribeAIDBClusterAttributeResponseBody(TeaModel):
12555
12828
  lock_mode: str = None,
12556
12829
  max_qpm: str = None,
12557
12830
  model_name: str = None,
12831
+ model_type: str = None,
12558
12832
  pay_type: str = None,
12559
12833
  public_ip: str = None,
12560
12834
  region_id: str = None,
@@ -12584,6 +12858,7 @@ class DescribeAIDBClusterAttributeResponseBody(TeaModel):
12584
12858
  self.lock_mode = lock_mode
12585
12859
  self.max_qpm = max_qpm
12586
12860
  self.model_name = model_name
12861
+ self.model_type = model_type
12587
12862
  self.pay_type = pay_type
12588
12863
  self.public_ip = public_ip
12589
12864
  self.region_id = region_id
@@ -12655,6 +12930,8 @@ class DescribeAIDBClusterAttributeResponseBody(TeaModel):
12655
12930
  result['MaxQPM'] = self.max_qpm
12656
12931
  if self.model_name is not None:
12657
12932
  result['ModelName'] = self.model_name
12933
+ if self.model_type is not None:
12934
+ result['ModelType'] = self.model_type
12658
12935
  if self.pay_type is not None:
12659
12936
  result['PayType'] = self.pay_type
12660
12937
  if self.public_ip is not None:
@@ -12723,6 +13000,8 @@ class DescribeAIDBClusterAttributeResponseBody(TeaModel):
12723
13000
  self.max_qpm = m.get('MaxQPM')
12724
13001
  if m.get('ModelName') is not None:
12725
13002
  self.model_name = m.get('ModelName')
13003
+ if m.get('ModelType') is not None:
13004
+ self.model_type = m.get('ModelType')
12726
13005
  if m.get('PayType') is not None:
12727
13006
  self.pay_type = m.get('PayType')
12728
13007
  if m.get('PublicIp') is not None:
@@ -13280,6 +13559,7 @@ class DescribeAIDBClustersResponseBodyItemsDBCluster(TeaModel):
13280
13559
  expired: bool = None,
13281
13560
  kube_cluster_id: str = None,
13282
13561
  lock_mode: str = None,
13562
+ model_type: str = None,
13283
13563
  pay_type: str = None,
13284
13564
  region_id: str = None,
13285
13565
  relative_dbcluster_id: str = None,
@@ -13302,6 +13582,7 @@ class DescribeAIDBClustersResponseBodyItemsDBCluster(TeaModel):
13302
13582
  self.expired = expired
13303
13583
  self.kube_cluster_id = kube_cluster_id
13304
13584
  self.lock_mode = lock_mode
13585
+ self.model_type = model_type
13305
13586
  self.pay_type = pay_type
13306
13587
  self.region_id = region_id
13307
13588
  self.relative_dbcluster_id = relative_dbcluster_id
@@ -13345,6 +13626,8 @@ class DescribeAIDBClustersResponseBodyItemsDBCluster(TeaModel):
13345
13626
  result['KubeClusterId'] = self.kube_cluster_id
13346
13627
  if self.lock_mode is not None:
13347
13628
  result['LockMode'] = self.lock_mode
13629
+ if self.model_type is not None:
13630
+ result['ModelType'] = self.model_type
13348
13631
  if self.pay_type is not None:
13349
13632
  result['PayType'] = self.pay_type
13350
13633
  if self.region_id is not None:
@@ -13391,6 +13674,8 @@ class DescribeAIDBClustersResponseBodyItemsDBCluster(TeaModel):
13391
13674
  self.kube_cluster_id = m.get('KubeClusterId')
13392
13675
  if m.get('LockMode') is not None:
13393
13676
  self.lock_mode = m.get('LockMode')
13677
+ if m.get('ModelType') is not None:
13678
+ self.model_type = m.get('ModelType')
13394
13679
  if m.get('PayType') is not None:
13395
13680
  self.pay_type = m.get('PayType')
13396
13681
  if m.get('RegionId') is not None:
@@ -60485,6 +60770,7 @@ class RemoveDBClusterFromGDNRequest(TeaModel):
60485
60770
  resource_owner_account: str = None,
60486
60771
  resource_owner_id: int = None,
60487
60772
  security_token: str = None,
60773
+ target_dbcluster_id: str = None,
60488
60774
  ):
60489
60775
  # The ID of the cluster in the GDN.
60490
60776
  #
@@ -60502,6 +60788,7 @@ class RemoveDBClusterFromGDNRequest(TeaModel):
60502
60788
  self.resource_owner_account = resource_owner_account
60503
60789
  self.resource_owner_id = resource_owner_id
60504
60790
  self.security_token = security_token
60791
+ self.target_dbcluster_id = target_dbcluster_id
60505
60792
 
60506
60793
  def validate(self):
60507
60794
  pass
@@ -60528,6 +60815,8 @@ class RemoveDBClusterFromGDNRequest(TeaModel):
60528
60815
  result['ResourceOwnerId'] = self.resource_owner_id
60529
60816
  if self.security_token is not None:
60530
60817
  result['SecurityToken'] = self.security_token
60818
+ if self.target_dbcluster_id is not None:
60819
+ result['TargetDBClusterId'] = self.target_dbcluster_id
60531
60820
  return result
60532
60821
 
60533
60822
  def from_map(self, m: dict = None):
@@ -60548,6 +60837,8 @@ class RemoveDBClusterFromGDNRequest(TeaModel):
60548
60837
  self.resource_owner_id = m.get('ResourceOwnerId')
60549
60838
  if m.get('SecurityToken') is not None:
60550
60839
  self.security_token = m.get('SecurityToken')
60840
+ if m.get('TargetDBClusterId') is not None:
60841
+ self.target_dbcluster_id = m.get('TargetDBClusterId')
60551
60842
  return self
60552
60843
 
60553
60844
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: alibabacloud-polardb20170801
3
- Version: 6.1.10
3
+ Version: 6.2.1
4
4
  Summary: Alibaba Cloud ApsaraDB for POLARDB (20170801) SDK Library for Python
5
5
  Home-page: https://github.com/aliyun/alibabacloud-python-sdk
6
6
  Author: Alibaba Cloud SDK
@@ -24,7 +24,7 @@ from setuptools import setup, find_packages
24
24
  """
25
25
  setup module for alibabacloud_polardb20170801.
26
26
 
27
- Created on 09/12/2025
27
+ Created on 11/12/2025
28
28
 
29
29
  @author: Alibaba Cloud SDK
30
30
  """
@@ -1 +0,0 @@
1
- __version__ = '6.1.10'