alibabacloud-emr-serverless-spark20230808 1.13.0__tar.gz → 1.14.0__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.

Potentially problematic release.


This version of alibabacloud-emr-serverless-spark20230808 might be problematic. Click here for more details.

Files changed (17) hide show
  1. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/ChangeLog.md +14 -0
  2. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/PKG-INFO +1 -1
  3. alibabacloud_emr-serverless-spark20230808-1.14.0/alibabacloud_emr_serverless_spark20230808/__init__.py +1 -0
  4. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/alibabacloud_emr_serverless_spark20230808/client.py +128 -0
  5. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/alibabacloud_emr_serverless_spark20230808/models.py +467 -0
  6. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/alibabacloud_emr_serverless_spark20230808.egg-info/PKG-INFO +1 -1
  7. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/setup.py +1 -1
  8. alibabacloud_emr-serverless-spark20230808-1.13.0/alibabacloud_emr_serverless_spark20230808/__init__.py +0 -1
  9. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/LICENSE +0 -0
  10. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/MANIFEST.in +0 -0
  11. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/README-CN.md +0 -0
  12. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/README.md +0 -0
  13. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/alibabacloud_emr_serverless_spark20230808.egg-info/SOURCES.txt +0 -0
  14. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/alibabacloud_emr_serverless_spark20230808.egg-info/dependency_links.txt +0 -0
  15. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/alibabacloud_emr_serverless_spark20230808.egg-info/requires.txt +0 -0
  16. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/alibabacloud_emr_serverless_spark20230808.egg-info/top_level.txt +0 -0
  17. {alibabacloud_emr-serverless-spark20230808-1.13.0 → alibabacloud_emr-serverless-spark20230808-1.14.0}/setup.cfg +0 -0
@@ -1,3 +1,17 @@
1
+ 2025-08-19 Version: 1.13.1
2
+ - Update API CreateSessionCluster: add request parameters body.clientToken.
3
+ - Update API ListJobRuns: add request parameters applicationConfigs.
4
+ - Update API ListJobRuns: add request parameters runtimeConfigs.
5
+ - Update API ListKyuubiServices: add response parameters Body.data.kyuubiServices.$.kyuubiReleaseVersion.
6
+ - Update API ListKyuubiSparkApplications: add response parameters Body.applications.$.exitReason.
7
+ - Update API ListKyuubiToken: add response parameters Body.data.tokens.$.accountNames.
8
+ - Update API ListKyuubiToken: add response parameters Body.data.tokens.$.memberArns.
9
+
10
+
11
+ 2025-08-15 Version: 1.13.0
12
+ - Support API ListSqlStatementContents.
13
+
14
+
1
15
  2025-07-24 Version: 1.12.1
2
16
  - Update API ListKyuubiSparkApplications: add response parameters Body.applications.$.latestSqlStatementStatus.
3
17
  - Update API ListSessionClusters: add response parameters Body.sessionClusters.$.connectionToken.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: alibabacloud_emr-serverless-spark20230808
3
- Version: 1.13.0
3
+ Version: 1.14.0
4
4
  Summary: Alibaba Cloud emr-serverless-spark (20230808) SDK Library for Python
5
5
  Home-page: https://github.com/aliyun/alibabacloud-python-sdk
6
6
  Author: Alibaba Cloud SDK
@@ -791,6 +791,8 @@ class Client(OpenApiClient):
791
791
  body['autoStartConfiguration'] = request.auto_start_configuration
792
792
  if not UtilClient.is_unset(request.auto_stop_configuration):
793
793
  body['autoStopConfiguration'] = request.auto_stop_configuration
794
+ if not UtilClient.is_unset(request.client_token):
795
+ body['clientToken'] = request.client_token
794
796
  if not UtilClient.is_unset(request.display_release_version):
795
797
  body['displayReleaseVersion'] = request.display_release_version
796
798
  if not UtilClient.is_unset(request.env_id):
@@ -854,6 +856,8 @@ class Client(OpenApiClient):
854
856
  body['autoStartConfiguration'] = request.auto_start_configuration
855
857
  if not UtilClient.is_unset(request.auto_stop_configuration):
856
858
  body['autoStopConfiguration'] = request.auto_stop_configuration
859
+ if not UtilClient.is_unset(request.client_token):
860
+ body['clientToken'] = request.client_token
857
861
  if not UtilClient.is_unset(request.display_release_version):
858
862
  body['displayReleaseVersion'] = request.display_release_version
859
863
  if not UtilClient.is_unset(request.env_id):
@@ -2636,6 +2640,8 @@ class Client(OpenApiClient):
2636
2640
  if not UtilClient.is_unset(tmp_req.tags):
2637
2641
  request.tags_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.tags, 'tags', 'json')
2638
2642
  query = {}
2643
+ if not UtilClient.is_unset(request.application_configs):
2644
+ query['applicationConfigs'] = request.application_configs
2639
2645
  if not UtilClient.is_unset(request.creator):
2640
2646
  query['creator'] = request.creator
2641
2647
  if not UtilClient.is_unset(request.end_time_shrink):
@@ -2658,6 +2664,8 @@ class Client(OpenApiClient):
2658
2664
  query['regionId'] = request.region_id
2659
2665
  if not UtilClient.is_unset(request.resource_queue_id):
2660
2666
  query['resourceQueueId'] = request.resource_queue_id
2667
+ if not UtilClient.is_unset(request.runtime_configs):
2668
+ query['runtimeConfigs'] = request.runtime_configs
2661
2669
  if not UtilClient.is_unset(request.start_time_shrink):
2662
2670
  query['startTime'] = request.start_time_shrink
2663
2671
  if not UtilClient.is_unset(request.states_shrink):
@@ -2711,6 +2719,8 @@ class Client(OpenApiClient):
2711
2719
  if not UtilClient.is_unset(tmp_req.tags):
2712
2720
  request.tags_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.tags, 'tags', 'json')
2713
2721
  query = {}
2722
+ if not UtilClient.is_unset(request.application_configs):
2723
+ query['applicationConfigs'] = request.application_configs
2714
2724
  if not UtilClient.is_unset(request.creator):
2715
2725
  query['creator'] = request.creator
2716
2726
  if not UtilClient.is_unset(request.end_time_shrink):
@@ -2733,6 +2743,8 @@ class Client(OpenApiClient):
2733
2743
  query['regionId'] = request.region_id
2734
2744
  if not UtilClient.is_unset(request.resource_queue_id):
2735
2745
  query['resourceQueueId'] = request.resource_queue_id
2746
+ if not UtilClient.is_unset(request.runtime_configs):
2747
+ query['runtimeConfigs'] = request.runtime_configs
2736
2748
  if not UtilClient.is_unset(request.start_time_shrink):
2737
2749
  query['startTime'] = request.start_time_shrink
2738
2750
  if not UtilClient.is_unset(request.states_shrink):
@@ -3491,6 +3503,122 @@ class Client(OpenApiClient):
3491
3503
  headers = {}
3492
3504
  return await self.list_log_contents_with_options_async(workspace_id, request, headers, runtime)
3493
3505
 
3506
+ def list_members_with_options(
3507
+ self,
3508
+ workspace_id: str,
3509
+ request: emr_serverless_spark_20230808_models.ListMembersRequest,
3510
+ headers: Dict[str, str],
3511
+ runtime: util_models.RuntimeOptions,
3512
+ ) -> emr_serverless_spark_20230808_models.ListMembersResponse:
3513
+ """
3514
+ @summary 查询用户列表
3515
+
3516
+ @param request: ListMembersRequest
3517
+ @param headers: map
3518
+ @param runtime: runtime options for this request RuntimeOptions
3519
+ @return: ListMembersResponse
3520
+ """
3521
+ UtilClient.validate_model(request)
3522
+ query = {}
3523
+ if not UtilClient.is_unset(request.max_results):
3524
+ query['maxResults'] = request.max_results
3525
+ if not UtilClient.is_unset(request.next_token):
3526
+ query['nextToken'] = request.next_token
3527
+ if not UtilClient.is_unset(request.region_id):
3528
+ query['regionId'] = request.region_id
3529
+ req = open_api_models.OpenApiRequest(
3530
+ headers=headers,
3531
+ query=OpenApiUtilClient.query(query)
3532
+ )
3533
+ params = open_api_models.Params(
3534
+ action='ListMembers',
3535
+ version='2023-08-08',
3536
+ protocol='HTTPS',
3537
+ pathname=f'/api/v1/auth/{OpenApiUtilClient.get_encode_param(workspace_id)}/members',
3538
+ method='GET',
3539
+ auth_type='AK',
3540
+ style='ROA',
3541
+ req_body_type='json',
3542
+ body_type='json'
3543
+ )
3544
+ return TeaCore.from_map(
3545
+ emr_serverless_spark_20230808_models.ListMembersResponse(),
3546
+ self.call_api(params, req, runtime)
3547
+ )
3548
+
3549
+ async def list_members_with_options_async(
3550
+ self,
3551
+ workspace_id: str,
3552
+ request: emr_serverless_spark_20230808_models.ListMembersRequest,
3553
+ headers: Dict[str, str],
3554
+ runtime: util_models.RuntimeOptions,
3555
+ ) -> emr_serverless_spark_20230808_models.ListMembersResponse:
3556
+ """
3557
+ @summary 查询用户列表
3558
+
3559
+ @param request: ListMembersRequest
3560
+ @param headers: map
3561
+ @param runtime: runtime options for this request RuntimeOptions
3562
+ @return: ListMembersResponse
3563
+ """
3564
+ UtilClient.validate_model(request)
3565
+ query = {}
3566
+ if not UtilClient.is_unset(request.max_results):
3567
+ query['maxResults'] = request.max_results
3568
+ if not UtilClient.is_unset(request.next_token):
3569
+ query['nextToken'] = request.next_token
3570
+ if not UtilClient.is_unset(request.region_id):
3571
+ query['regionId'] = request.region_id
3572
+ req = open_api_models.OpenApiRequest(
3573
+ headers=headers,
3574
+ query=OpenApiUtilClient.query(query)
3575
+ )
3576
+ params = open_api_models.Params(
3577
+ action='ListMembers',
3578
+ version='2023-08-08',
3579
+ protocol='HTTPS',
3580
+ pathname=f'/api/v1/auth/{OpenApiUtilClient.get_encode_param(workspace_id)}/members',
3581
+ method='GET',
3582
+ auth_type='AK',
3583
+ style='ROA',
3584
+ req_body_type='json',
3585
+ body_type='json'
3586
+ )
3587
+ return TeaCore.from_map(
3588
+ emr_serverless_spark_20230808_models.ListMembersResponse(),
3589
+ await self.call_api_async(params, req, runtime)
3590
+ )
3591
+
3592
+ def list_members(
3593
+ self,
3594
+ workspace_id: str,
3595
+ request: emr_serverless_spark_20230808_models.ListMembersRequest,
3596
+ ) -> emr_serverless_spark_20230808_models.ListMembersResponse:
3597
+ """
3598
+ @summary 查询用户列表
3599
+
3600
+ @param request: ListMembersRequest
3601
+ @return: ListMembersResponse
3602
+ """
3603
+ runtime = util_models.RuntimeOptions()
3604
+ headers = {}
3605
+ return self.list_members_with_options(workspace_id, request, headers, runtime)
3606
+
3607
+ async def list_members_async(
3608
+ self,
3609
+ workspace_id: str,
3610
+ request: emr_serverless_spark_20230808_models.ListMembersRequest,
3611
+ ) -> emr_serverless_spark_20230808_models.ListMembersResponse:
3612
+ """
3613
+ @summary 查询用户列表
3614
+
3615
+ @param request: ListMembersRequest
3616
+ @return: ListMembersResponse
3617
+ """
3618
+ runtime = util_models.RuntimeOptions()
3619
+ headers = {}
3620
+ return await self.list_members_with_options_async(workspace_id, request, headers, runtime)
3621
+
3494
3622
  def list_release_versions_with_options(
3495
3623
  self,
3496
3624
  request: emr_serverless_spark_20230808_models.ListReleaseVersionsRequest,
@@ -3348,6 +3348,7 @@ class CreateSessionClusterRequest(TeaModel):
3348
3348
  application_configs: List[CreateSessionClusterRequestApplicationConfigs] = None,
3349
3349
  auto_start_configuration: CreateSessionClusterRequestAutoStartConfiguration = None,
3350
3350
  auto_stop_configuration: CreateSessionClusterRequestAutoStopConfiguration = None,
3351
+ client_token: str = None,
3351
3352
  display_release_version: str = None,
3352
3353
  env_id: str = None,
3353
3354
  fusion: bool = None,
@@ -3367,6 +3368,7 @@ class CreateSessionClusterRequest(TeaModel):
3367
3368
  self.auto_start_configuration = auto_start_configuration
3368
3369
  # The automatic termination configuration.
3369
3370
  self.auto_stop_configuration = auto_stop_configuration
3371
+ self.client_token = client_token
3370
3372
  # The version of the Spark engine.
3371
3373
  self.display_release_version = display_release_version
3372
3374
  # The ID of the Python environment. This parameter takes effect only for notebook sessions.
@@ -3412,6 +3414,8 @@ class CreateSessionClusterRequest(TeaModel):
3412
3414
  result['autoStartConfiguration'] = self.auto_start_configuration.to_map()
3413
3415
  if self.auto_stop_configuration is not None:
3414
3416
  result['autoStopConfiguration'] = self.auto_stop_configuration.to_map()
3417
+ if self.client_token is not None:
3418
+ result['clientToken'] = self.client_token
3415
3419
  if self.display_release_version is not None:
3416
3420
  result['displayReleaseVersion'] = self.display_release_version
3417
3421
  if self.env_id is not None:
@@ -3445,6 +3449,8 @@ class CreateSessionClusterRequest(TeaModel):
3445
3449
  if m.get('autoStopConfiguration') is not None:
3446
3450
  temp_model = CreateSessionClusterRequestAutoStopConfiguration()
3447
3451
  self.auto_stop_configuration = temp_model.from_map(m['autoStopConfiguration'])
3452
+ if m.get('clientToken') is not None:
3453
+ self.client_token = m.get('clientToken')
3448
3454
  if m.get('displayReleaseVersion') is not None:
3449
3455
  self.display_release_version = m.get('displayReleaseVersion')
3450
3456
  if m.get('envId') is not None:
@@ -6614,6 +6620,7 @@ class ListJobRunsRequestTags(TeaModel):
6614
6620
  class ListJobRunsRequest(TeaModel):
6615
6621
  def __init__(
6616
6622
  self,
6623
+ application_configs: str = None,
6617
6624
  creator: str = None,
6618
6625
  end_time: ListJobRunsRequestEndTime = None,
6619
6626
  is_workflow: str = None,
@@ -6625,10 +6632,12 @@ class ListJobRunsRequest(TeaModel):
6625
6632
  next_token: str = None,
6626
6633
  region_id: str = None,
6627
6634
  resource_queue_id: str = None,
6635
+ runtime_configs: str = None,
6628
6636
  start_time: ListJobRunsRequestStartTime = None,
6629
6637
  states: List[str] = None,
6630
6638
  tags: List[ListJobRunsRequestTags] = None,
6631
6639
  ):
6640
+ self.application_configs = application_configs
6632
6641
  # The ID of the user who created the job.
6633
6642
  self.creator = creator
6634
6643
  # The range of end time.
@@ -6650,6 +6659,7 @@ class ListJobRunsRequest(TeaModel):
6650
6659
  self.region_id = region_id
6651
6660
  # The name of the resource queue on which the Spark jobs run.
6652
6661
  self.resource_queue_id = resource_queue_id
6662
+ self.runtime_configs = runtime_configs
6653
6663
  # The range of start time.
6654
6664
  self.start_time = start_time
6655
6665
  # The job states.
@@ -6673,6 +6683,8 @@ class ListJobRunsRequest(TeaModel):
6673
6683
  return _map
6674
6684
 
6675
6685
  result = dict()
6686
+ if self.application_configs is not None:
6687
+ result['applicationConfigs'] = self.application_configs
6676
6688
  if self.creator is not None:
6677
6689
  result['creator'] = self.creator
6678
6690
  if self.end_time is not None:
@@ -6695,6 +6707,8 @@ class ListJobRunsRequest(TeaModel):
6695
6707
  result['regionId'] = self.region_id
6696
6708
  if self.resource_queue_id is not None:
6697
6709
  result['resourceQueueId'] = self.resource_queue_id
6710
+ if self.runtime_configs is not None:
6711
+ result['runtimeConfigs'] = self.runtime_configs
6698
6712
  if self.start_time is not None:
6699
6713
  result['startTime'] = self.start_time.to_map()
6700
6714
  if self.states is not None:
@@ -6707,6 +6721,8 @@ class ListJobRunsRequest(TeaModel):
6707
6721
 
6708
6722
  def from_map(self, m: dict = None):
6709
6723
  m = m or dict()
6724
+ if m.get('applicationConfigs') is not None:
6725
+ self.application_configs = m.get('applicationConfigs')
6710
6726
  if m.get('creator') is not None:
6711
6727
  self.creator = m.get('creator')
6712
6728
  if m.get('endTime') is not None:
@@ -6730,6 +6746,8 @@ class ListJobRunsRequest(TeaModel):
6730
6746
  self.region_id = m.get('regionId')
6731
6747
  if m.get('resourceQueueId') is not None:
6732
6748
  self.resource_queue_id = m.get('resourceQueueId')
6749
+ if m.get('runtimeConfigs') is not None:
6750
+ self.runtime_configs = m.get('runtimeConfigs')
6733
6751
  if m.get('startTime') is not None:
6734
6752
  temp_model = ListJobRunsRequestStartTime()
6735
6753
  self.start_time = temp_model.from_map(m['startTime'])
@@ -6746,6 +6764,7 @@ class ListJobRunsRequest(TeaModel):
6746
6764
  class ListJobRunsShrinkRequest(TeaModel):
6747
6765
  def __init__(
6748
6766
  self,
6767
+ application_configs: str = None,
6749
6768
  creator: str = None,
6750
6769
  end_time_shrink: str = None,
6751
6770
  is_workflow: str = None,
@@ -6757,10 +6776,12 @@ class ListJobRunsShrinkRequest(TeaModel):
6757
6776
  next_token: str = None,
6758
6777
  region_id: str = None,
6759
6778
  resource_queue_id: str = None,
6779
+ runtime_configs: str = None,
6760
6780
  start_time_shrink: str = None,
6761
6781
  states_shrink: str = None,
6762
6782
  tags_shrink: str = None,
6763
6783
  ):
6784
+ self.application_configs = application_configs
6764
6785
  # The ID of the user who created the job.
6765
6786
  self.creator = creator
6766
6787
  # The range of end time.
@@ -6782,6 +6803,7 @@ class ListJobRunsShrinkRequest(TeaModel):
6782
6803
  self.region_id = region_id
6783
6804
  # The name of the resource queue on which the Spark jobs run.
6784
6805
  self.resource_queue_id = resource_queue_id
6806
+ self.runtime_configs = runtime_configs
6785
6807
  # The range of start time.
6786
6808
  self.start_time_shrink = start_time_shrink
6787
6809
  # The job states.
@@ -6798,6 +6820,8 @@ class ListJobRunsShrinkRequest(TeaModel):
6798
6820
  return _map
6799
6821
 
6800
6822
  result = dict()
6823
+ if self.application_configs is not None:
6824
+ result['applicationConfigs'] = self.application_configs
6801
6825
  if self.creator is not None:
6802
6826
  result['creator'] = self.creator
6803
6827
  if self.end_time_shrink is not None:
@@ -6820,6 +6844,8 @@ class ListJobRunsShrinkRequest(TeaModel):
6820
6844
  result['regionId'] = self.region_id
6821
6845
  if self.resource_queue_id is not None:
6822
6846
  result['resourceQueueId'] = self.resource_queue_id
6847
+ if self.runtime_configs is not None:
6848
+ result['runtimeConfigs'] = self.runtime_configs
6823
6849
  if self.start_time_shrink is not None:
6824
6850
  result['startTime'] = self.start_time_shrink
6825
6851
  if self.states_shrink is not None:
@@ -6830,6 +6856,8 @@ class ListJobRunsShrinkRequest(TeaModel):
6830
6856
 
6831
6857
  def from_map(self, m: dict = None):
6832
6858
  m = m or dict()
6859
+ if m.get('applicationConfigs') is not None:
6860
+ self.application_configs = m.get('applicationConfigs')
6833
6861
  if m.get('creator') is not None:
6834
6862
  self.creator = m.get('creator')
6835
6863
  if m.get('endTime') is not None:
@@ -6852,6 +6880,8 @@ class ListJobRunsShrinkRequest(TeaModel):
6852
6880
  self.region_id = m.get('regionId')
6853
6881
  if m.get('resourceQueueId') is not None:
6854
6882
  self.resource_queue_id = m.get('resourceQueueId')
6883
+ if m.get('runtimeConfigs') is not None:
6884
+ self.runtime_configs = m.get('runtimeConfigs')
6855
6885
  if m.get('startTime') is not None:
6856
6886
  self.start_time_shrink = m.get('startTime')
6857
6887
  if m.get('states') is not None:
@@ -7239,6 +7269,7 @@ class ListKyuubiServicesResponseBodyDataKyuubiServices(TeaModel):
7239
7269
  creator: str = None,
7240
7270
  inner_endpoint: str = None,
7241
7271
  kyuubi_configs: str = None,
7272
+ kyuubi_release_version: str = None,
7242
7273
  kyuubi_service_id: str = None,
7243
7274
  name: str = None,
7244
7275
  public_endpoint: str = None,
@@ -7254,6 +7285,7 @@ class ListKyuubiServicesResponseBodyDataKyuubiServices(TeaModel):
7254
7285
  self.creator = creator
7255
7286
  self.inner_endpoint = inner_endpoint
7256
7287
  self.kyuubi_configs = kyuubi_configs
7288
+ self.kyuubi_release_version = kyuubi_release_version
7257
7289
  # KyuubiServer ID。
7258
7290
  self.kyuubi_service_id = kyuubi_service_id
7259
7291
  self.name = name
@@ -7284,6 +7316,8 @@ class ListKyuubiServicesResponseBodyDataKyuubiServices(TeaModel):
7284
7316
  result['innerEndpoint'] = self.inner_endpoint
7285
7317
  if self.kyuubi_configs is not None:
7286
7318
  result['kyuubiConfigs'] = self.kyuubi_configs
7319
+ if self.kyuubi_release_version is not None:
7320
+ result['kyuubiReleaseVersion'] = self.kyuubi_release_version
7287
7321
  if self.kyuubi_service_id is not None:
7288
7322
  result['kyuubiServiceId'] = self.kyuubi_service_id
7289
7323
  if self.name is not None:
@@ -7316,6 +7350,8 @@ class ListKyuubiServicesResponseBodyDataKyuubiServices(TeaModel):
7316
7350
  self.inner_endpoint = m.get('innerEndpoint')
7317
7351
  if m.get('kyuubiConfigs') is not None:
7318
7352
  self.kyuubi_configs = m.get('kyuubiConfigs')
7353
+ if m.get('kyuubiReleaseVersion') is not None:
7354
+ self.kyuubi_release_version = m.get('kyuubiReleaseVersion')
7319
7355
  if m.get('kyuubiServiceId') is not None:
7320
7356
  self.kyuubi_service_id = m.get('kyuubiServiceId')
7321
7357
  if m.get('name') is not None:
@@ -7652,6 +7688,7 @@ class ListKyuubiSparkApplicationsResponseBodyApplications(TeaModel):
7652
7688
  application_name: str = None,
7653
7689
  cu_hours: float = None,
7654
7690
  end_time: str = None,
7691
+ exit_reason: str = None,
7655
7692
  latest_sql_statement_status: str = None,
7656
7693
  mb_seconds: int = None,
7657
7694
  resource_queue_id: str = None,
@@ -7668,6 +7705,7 @@ class ListKyuubiSparkApplicationsResponseBodyApplications(TeaModel):
7668
7705
  self.cu_hours = cu_hours
7669
7706
  # The time when the task ended.
7670
7707
  self.end_time = end_time
7708
+ self.exit_reason = exit_reason
7671
7709
  self.latest_sql_statement_status = latest_sql_statement_status
7672
7710
  # The total amount of memory allocated to the job multiplied by the running duration (seconds).
7673
7711
  self.mb_seconds = mb_seconds
@@ -7703,6 +7741,8 @@ class ListKyuubiSparkApplicationsResponseBodyApplications(TeaModel):
7703
7741
  result['cuHours'] = self.cu_hours
7704
7742
  if self.end_time is not None:
7705
7743
  result['endTime'] = self.end_time
7744
+ if self.exit_reason is not None:
7745
+ result['exitReason'] = self.exit_reason
7706
7746
  if self.latest_sql_statement_status is not None:
7707
7747
  result['latestSqlStatementStatus'] = self.latest_sql_statement_status
7708
7748
  if self.mb_seconds is not None:
@@ -7729,6 +7769,8 @@ class ListKyuubiSparkApplicationsResponseBodyApplications(TeaModel):
7729
7769
  self.cu_hours = m.get('cuHours')
7730
7770
  if m.get('endTime') is not None:
7731
7771
  self.end_time = m.get('endTime')
7772
+ if m.get('exitReason') is not None:
7773
+ self.exit_reason = m.get('exitReason')
7732
7774
  if m.get('latestSqlStatementStatus') is not None:
7733
7775
  self.latest_sql_statement_status = m.get('latestSqlStatementStatus')
7734
7776
  if m.get('mbSeconds') is not None:
@@ -7881,18 +7923,22 @@ class ListKyuubiTokenRequest(TeaModel):
7881
7923
  class ListKyuubiTokenResponseBodyDataTokens(TeaModel):
7882
7924
  def __init__(
7883
7925
  self,
7926
+ account_names: List[str] = None,
7884
7927
  create_time: int = None,
7885
7928
  created_by: str = None,
7886
7929
  expire_time: int = None,
7887
7930
  last_used_time: int = None,
7931
+ member_arns: List[str] = None,
7888
7932
  name: str = None,
7889
7933
  token: str = None,
7890
7934
  token_id: str = None,
7891
7935
  ):
7936
+ self.account_names = account_names
7892
7937
  self.create_time = create_time
7893
7938
  self.created_by = created_by
7894
7939
  self.expire_time = expire_time
7895
7940
  self.last_used_time = last_used_time
7941
+ self.member_arns = member_arns
7896
7942
  self.name = name
7897
7943
  self.token = token
7898
7944
  # Token ID。
@@ -7907,6 +7953,8 @@ class ListKyuubiTokenResponseBodyDataTokens(TeaModel):
7907
7953
  return _map
7908
7954
 
7909
7955
  result = dict()
7956
+ if self.account_names is not None:
7957
+ result['accountNames'] = self.account_names
7910
7958
  if self.create_time is not None:
7911
7959
  result['createTime'] = self.create_time
7912
7960
  if self.created_by is not None:
@@ -7915,6 +7963,8 @@ class ListKyuubiTokenResponseBodyDataTokens(TeaModel):
7915
7963
  result['expireTime'] = self.expire_time
7916
7964
  if self.last_used_time is not None:
7917
7965
  result['lastUsedTime'] = self.last_used_time
7966
+ if self.member_arns is not None:
7967
+ result['memberArns'] = self.member_arns
7918
7968
  if self.name is not None:
7919
7969
  result['name'] = self.name
7920
7970
  if self.token is not None:
@@ -7925,6 +7975,8 @@ class ListKyuubiTokenResponseBodyDataTokens(TeaModel):
7925
7975
 
7926
7976
  def from_map(self, m: dict = None):
7927
7977
  m = m or dict()
7978
+ if m.get('accountNames') is not None:
7979
+ self.account_names = m.get('accountNames')
7928
7980
  if m.get('createTime') is not None:
7929
7981
  self.create_time = m.get('createTime')
7930
7982
  if m.get('createdBy') is not None:
@@ -7933,6 +7985,8 @@ class ListKyuubiTokenResponseBodyDataTokens(TeaModel):
7933
7985
  self.expire_time = m.get('expireTime')
7934
7986
  if m.get('lastUsedTime') is not None:
7935
7987
  self.last_used_time = m.get('lastUsedTime')
7988
+ if m.get('memberArns') is not None:
7989
+ self.member_arns = m.get('memberArns')
7936
7990
  if m.get('name') is not None:
7937
7991
  self.name = m.get('name')
7938
7992
  if m.get('token') is not None:
@@ -8696,6 +8750,419 @@ class ListLogContentsResponse(TeaModel):
8696
8750
  return self
8697
8751
 
8698
8752
 
8753
+ class ListMembersRequest(TeaModel):
8754
+ def __init__(
8755
+ self,
8756
+ max_results: int = None,
8757
+ next_token: str = None,
8758
+ region_id: str = None,
8759
+ ):
8760
+ # 一次获取的最大记录数。
8761
+ self.max_results = max_results
8762
+ # 标记当前开始读取的位置,置空表示从头开始。
8763
+ self.next_token = next_token
8764
+ self.region_id = region_id
8765
+
8766
+ def validate(self):
8767
+ pass
8768
+
8769
+ def to_map(self):
8770
+ _map = super().to_map()
8771
+ if _map is not None:
8772
+ return _map
8773
+
8774
+ result = dict()
8775
+ if self.max_results is not None:
8776
+ result['maxResults'] = self.max_results
8777
+ if self.next_token is not None:
8778
+ result['nextToken'] = self.next_token
8779
+ if self.region_id is not None:
8780
+ result['regionId'] = self.region_id
8781
+ return result
8782
+
8783
+ def from_map(self, m: dict = None):
8784
+ m = m or dict()
8785
+ if m.get('maxResults') is not None:
8786
+ self.max_results = m.get('maxResults')
8787
+ if m.get('nextToken') is not None:
8788
+ self.next_token = m.get('nextToken')
8789
+ if m.get('regionId') is not None:
8790
+ self.region_id = m.get('regionId')
8791
+ return self
8792
+
8793
+
8794
+ class ListMembersResponseBodyMembersActions(TeaModel):
8795
+ def __init__(
8796
+ self,
8797
+ action_arn: str = None,
8798
+ action_name: str = None,
8799
+ dependencies: List[str] = None,
8800
+ description: str = None,
8801
+ display_name: str = None,
8802
+ ):
8803
+ # 行为 arn。
8804
+ self.action_arn = action_arn
8805
+ # 权限名称。
8806
+ self.action_name = action_name
8807
+ # action 依赖列表。
8808
+ self.dependencies = dependencies
8809
+ # action 描述。
8810
+ self.description = description
8811
+ # 权限展示名称。
8812
+ self.display_name = display_name
8813
+
8814
+ def validate(self):
8815
+ pass
8816
+
8817
+ def to_map(self):
8818
+ _map = super().to_map()
8819
+ if _map is not None:
8820
+ return _map
8821
+
8822
+ result = dict()
8823
+ if self.action_arn is not None:
8824
+ result['actionArn'] = self.action_arn
8825
+ if self.action_name is not None:
8826
+ result['actionName'] = self.action_name
8827
+ if self.dependencies is not None:
8828
+ result['dependencies'] = self.dependencies
8829
+ if self.description is not None:
8830
+ result['description'] = self.description
8831
+ if self.display_name is not None:
8832
+ result['displayName'] = self.display_name
8833
+ return result
8834
+
8835
+ def from_map(self, m: dict = None):
8836
+ m = m or dict()
8837
+ if m.get('actionArn') is not None:
8838
+ self.action_arn = m.get('actionArn')
8839
+ if m.get('actionName') is not None:
8840
+ self.action_name = m.get('actionName')
8841
+ if m.get('dependencies') is not None:
8842
+ self.dependencies = m.get('dependencies')
8843
+ if m.get('description') is not None:
8844
+ self.description = m.get('description')
8845
+ if m.get('displayName') is not None:
8846
+ self.display_name = m.get('displayName')
8847
+ return self
8848
+
8849
+
8850
+ class ListMembersResponseBodyMembersRolesActions(TeaModel):
8851
+ def __init__(
8852
+ self,
8853
+ action_arn: str = None,
8854
+ action_name: str = None,
8855
+ dependencies: List[str] = None,
8856
+ description: str = None,
8857
+ display_name: str = None,
8858
+ ):
8859
+ # 行为 arn。
8860
+ self.action_arn = action_arn
8861
+ # 权限名称。
8862
+ self.action_name = action_name
8863
+ # action 依赖列表。
8864
+ self.dependencies = dependencies
8865
+ # action 描述。
8866
+ self.description = description
8867
+ # 权限展示名称。
8868
+ self.display_name = display_name
8869
+
8870
+ def validate(self):
8871
+ pass
8872
+
8873
+ def to_map(self):
8874
+ _map = super().to_map()
8875
+ if _map is not None:
8876
+ return _map
8877
+
8878
+ result = dict()
8879
+ if self.action_arn is not None:
8880
+ result['actionArn'] = self.action_arn
8881
+ if self.action_name is not None:
8882
+ result['actionName'] = self.action_name
8883
+ if self.dependencies is not None:
8884
+ result['dependencies'] = self.dependencies
8885
+ if self.description is not None:
8886
+ result['description'] = self.description
8887
+ if self.display_name is not None:
8888
+ result['displayName'] = self.display_name
8889
+ return result
8890
+
8891
+ def from_map(self, m: dict = None):
8892
+ m = m or dict()
8893
+ if m.get('actionArn') is not None:
8894
+ self.action_arn = m.get('actionArn')
8895
+ if m.get('actionName') is not None:
8896
+ self.action_name = m.get('actionName')
8897
+ if m.get('dependencies') is not None:
8898
+ self.dependencies = m.get('dependencies')
8899
+ if m.get('description') is not None:
8900
+ self.description = m.get('description')
8901
+ if m.get('displayName') is not None:
8902
+ self.display_name = m.get('displayName')
8903
+ return self
8904
+
8905
+
8906
+ class ListMembersResponseBodyMembersRoles(TeaModel):
8907
+ def __init__(
8908
+ self,
8909
+ actions: List[ListMembersResponseBodyMembersRolesActions] = None,
8910
+ create_time: int = None,
8911
+ description: str = None,
8912
+ role_arn: str = None,
8913
+ role_name: str = None,
8914
+ ):
8915
+ # 权限列表。
8916
+ self.actions = actions
8917
+ # 创建时间。
8918
+ self.create_time = create_time
8919
+ # 描述。
8920
+ self.description = description
8921
+ # 角色 arn。
8922
+ self.role_arn = role_arn
8923
+ # 角色名称。
8924
+ self.role_name = role_name
8925
+
8926
+ def validate(self):
8927
+ if self.actions:
8928
+ for k in self.actions:
8929
+ if k:
8930
+ k.validate()
8931
+
8932
+ def to_map(self):
8933
+ _map = super().to_map()
8934
+ if _map is not None:
8935
+ return _map
8936
+
8937
+ result = dict()
8938
+ result['actions'] = []
8939
+ if self.actions is not None:
8940
+ for k in self.actions:
8941
+ result['actions'].append(k.to_map() if k else None)
8942
+ if self.create_time is not None:
8943
+ result['createTime'] = self.create_time
8944
+ if self.description is not None:
8945
+ result['description'] = self.description
8946
+ if self.role_arn is not None:
8947
+ result['roleArn'] = self.role_arn
8948
+ if self.role_name is not None:
8949
+ result['roleName'] = self.role_name
8950
+ return result
8951
+
8952
+ def from_map(self, m: dict = None):
8953
+ m = m or dict()
8954
+ self.actions = []
8955
+ if m.get('actions') is not None:
8956
+ for k in m.get('actions'):
8957
+ temp_model = ListMembersResponseBodyMembersRolesActions()
8958
+ self.actions.append(temp_model.from_map(k))
8959
+ if m.get('createTime') is not None:
8960
+ self.create_time = m.get('createTime')
8961
+ if m.get('description') is not None:
8962
+ self.description = m.get('description')
8963
+ if m.get('roleArn') is not None:
8964
+ self.role_arn = m.get('roleArn')
8965
+ if m.get('roleName') is not None:
8966
+ self.role_name = m.get('roleName')
8967
+ return self
8968
+
8969
+
8970
+ class ListMembersResponseBodyMembers(TeaModel):
8971
+ def __init__(
8972
+ self,
8973
+ actions: List[ListMembersResponseBodyMembersActions] = None,
8974
+ create_time: str = None,
8975
+ display_name: str = None,
8976
+ member_arn: str = None,
8977
+ roles: List[ListMembersResponseBodyMembersRoles] = None,
8978
+ user_name: str = None,
8979
+ user_type: str = None,
8980
+ visible: bool = None,
8981
+ ):
8982
+ # 针对此用户允许的操作列表。
8983
+ self.actions = actions
8984
+ self.create_time = create_time
8985
+ # 用户展示名称。
8986
+ self.display_name = display_name
8987
+ # 用户 arn。
8988
+ self.member_arn = member_arn
8989
+ # 用户角色列表。
8990
+ self.roles = roles
8991
+ # 用户名称。
8992
+ self.user_name = user_name
8993
+ # 用户类型。
8994
+ self.user_type = user_type
8995
+ self.visible = visible
8996
+
8997
+ def validate(self):
8998
+ if self.actions:
8999
+ for k in self.actions:
9000
+ if k:
9001
+ k.validate()
9002
+ if self.roles:
9003
+ for k in self.roles:
9004
+ if k:
9005
+ k.validate()
9006
+
9007
+ def to_map(self):
9008
+ _map = super().to_map()
9009
+ if _map is not None:
9010
+ return _map
9011
+
9012
+ result = dict()
9013
+ result['actions'] = []
9014
+ if self.actions is not None:
9015
+ for k in self.actions:
9016
+ result['actions'].append(k.to_map() if k else None)
9017
+ if self.create_time is not None:
9018
+ result['createTime'] = self.create_time
9019
+ if self.display_name is not None:
9020
+ result['displayName'] = self.display_name
9021
+ if self.member_arn is not None:
9022
+ result['memberArn'] = self.member_arn
9023
+ result['roles'] = []
9024
+ if self.roles is not None:
9025
+ for k in self.roles:
9026
+ result['roles'].append(k.to_map() if k else None)
9027
+ if self.user_name is not None:
9028
+ result['userName'] = self.user_name
9029
+ if self.user_type is not None:
9030
+ result['userType'] = self.user_type
9031
+ if self.visible is not None:
9032
+ result['visible'] = self.visible
9033
+ return result
9034
+
9035
+ def from_map(self, m: dict = None):
9036
+ m = m or dict()
9037
+ self.actions = []
9038
+ if m.get('actions') is not None:
9039
+ for k in m.get('actions'):
9040
+ temp_model = ListMembersResponseBodyMembersActions()
9041
+ self.actions.append(temp_model.from_map(k))
9042
+ if m.get('createTime') is not None:
9043
+ self.create_time = m.get('createTime')
9044
+ if m.get('displayName') is not None:
9045
+ self.display_name = m.get('displayName')
9046
+ if m.get('memberArn') is not None:
9047
+ self.member_arn = m.get('memberArn')
9048
+ self.roles = []
9049
+ if m.get('roles') is not None:
9050
+ for k in m.get('roles'):
9051
+ temp_model = ListMembersResponseBodyMembersRoles()
9052
+ self.roles.append(temp_model.from_map(k))
9053
+ if m.get('userName') is not None:
9054
+ self.user_name = m.get('userName')
9055
+ if m.get('userType') is not None:
9056
+ self.user_type = m.get('userType')
9057
+ if m.get('visible') is not None:
9058
+ self.visible = m.get('visible')
9059
+ return self
9060
+
9061
+
9062
+ class ListMembersResponseBody(TeaModel):
9063
+ def __init__(
9064
+ self,
9065
+ max_results: int = None,
9066
+ members: List[ListMembersResponseBodyMembers] = None,
9067
+ next_token: str = None,
9068
+ request_id: str = None,
9069
+ total_count: int = None,
9070
+ ):
9071
+ # 一次获取的最大记录数。
9072
+ self.max_results = max_results
9073
+ self.members = members
9074
+ # 下一页TOKEN。
9075
+ self.next_token = next_token
9076
+ # 请求ID。
9077
+ self.request_id = request_id
9078
+ # 记录总数。
9079
+ self.total_count = total_count
9080
+
9081
+ def validate(self):
9082
+ if self.members:
9083
+ for k in self.members:
9084
+ if k:
9085
+ k.validate()
9086
+
9087
+ def to_map(self):
9088
+ _map = super().to_map()
9089
+ if _map is not None:
9090
+ return _map
9091
+
9092
+ result = dict()
9093
+ if self.max_results is not None:
9094
+ result['maxResults'] = self.max_results
9095
+ result['members'] = []
9096
+ if self.members is not None:
9097
+ for k in self.members:
9098
+ result['members'].append(k.to_map() if k else None)
9099
+ if self.next_token is not None:
9100
+ result['nextToken'] = self.next_token
9101
+ if self.request_id is not None:
9102
+ result['requestId'] = self.request_id
9103
+ if self.total_count is not None:
9104
+ result['totalCount'] = self.total_count
9105
+ return result
9106
+
9107
+ def from_map(self, m: dict = None):
9108
+ m = m or dict()
9109
+ if m.get('maxResults') is not None:
9110
+ self.max_results = m.get('maxResults')
9111
+ self.members = []
9112
+ if m.get('members') is not None:
9113
+ for k in m.get('members'):
9114
+ temp_model = ListMembersResponseBodyMembers()
9115
+ self.members.append(temp_model.from_map(k))
9116
+ if m.get('nextToken') is not None:
9117
+ self.next_token = m.get('nextToken')
9118
+ if m.get('requestId') is not None:
9119
+ self.request_id = m.get('requestId')
9120
+ if m.get('totalCount') is not None:
9121
+ self.total_count = m.get('totalCount')
9122
+ return self
9123
+
9124
+
9125
+ class ListMembersResponse(TeaModel):
9126
+ def __init__(
9127
+ self,
9128
+ headers: Dict[str, str] = None,
9129
+ status_code: int = None,
9130
+ body: ListMembersResponseBody = None,
9131
+ ):
9132
+ self.headers = headers
9133
+ self.status_code = status_code
9134
+ self.body = body
9135
+
9136
+ def validate(self):
9137
+ if self.body:
9138
+ self.body.validate()
9139
+
9140
+ def to_map(self):
9141
+ _map = super().to_map()
9142
+ if _map is not None:
9143
+ return _map
9144
+
9145
+ result = dict()
9146
+ if self.headers is not None:
9147
+ result['headers'] = self.headers
9148
+ if self.status_code is not None:
9149
+ result['statusCode'] = self.status_code
9150
+ if self.body is not None:
9151
+ result['body'] = self.body.to_map()
9152
+ return result
9153
+
9154
+ def from_map(self, m: dict = None):
9155
+ m = m or dict()
9156
+ if m.get('headers') is not None:
9157
+ self.headers = m.get('headers')
9158
+ if m.get('statusCode') is not None:
9159
+ self.status_code = m.get('statusCode')
9160
+ if m.get('body') is not None:
9161
+ temp_model = ListMembersResponseBody()
9162
+ self.body = temp_model.from_map(m['body'])
9163
+ return self
9164
+
9165
+
8699
9166
  class ListReleaseVersionsRequest(TeaModel):
8700
9167
  def __init__(
8701
9168
  self,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: alibabacloud-emr-serverless-spark20230808
3
- Version: 1.13.0
3
+ Version: 1.14.0
4
4
  Summary: Alibaba Cloud emr-serverless-spark (20230808) 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_emr-serverless-spark20230808.
26
26
 
27
- Created on 15/08/2025
27
+ Created on 20/08/2025
28
28
 
29
29
  @author: Alibaba Cloud SDK
30
30
  """