Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package aws-cli for openSUSE:Factory checked in at 2024-09-24 17:31:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/aws-cli (Old) and /work/SRC/openSUSE:Factory/.aws-cli.new.29891 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "aws-cli" Tue Sep 24 17:31:40 2024 rev:99 rq:1202212 version:1.34.21 Changes: -------- --- /work/SRC/openSUSE:Factory/aws-cli/aws-cli.changes 2024-09-06 17:19:17.693760878 +0200 +++ /work/SRC/openSUSE:Factory/.aws-cli.new.29891/aws-cli.changes 2024-09-24 17:31:56.325719726 +0200 @@ -1,0 +2,131 @@ +Fri Sep 20 10:01:33 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaub...@suse.com> + +- Update to 1.34.21 + * api-change:``codebuild``: GitLab Enhancements - Add support for Self-Hosted GitLab runners in + CodeBuild. Add group webhooks + * api-change:``ecr``: The `DescribeImageScanning` API now includes `fixAvailable`, + `exploitAvailable`, and `fixedInVersion` fields to provide more detailed information about the + availability of fixes, exploits, and fixed versions for identified image vulnerabilities. + * api-change:``ecs``: This is a documentation only release to address various tickets. + * api-change:``lambda``: Support for JSON resource-based policies and block public access + * api-change:``rds``: Updates Amazon RDS documentation with configuration information about the + BYOL model for RDS for Db2. + * api-change:``ssm``: Support for additional levels of cross-account, cross-Region organizational + units in Automation. Various documentation updates. +- from version 1.34.20 + * api-change:``bedrock``: This feature adds cross account s3 bucket and VPC support to + ModelInvocation jobs. To use a cross account bucket, pass in the accountId of the bucket to + s3BucketOwner in the ModelInvocationJobInputDataConfig or ModelInvocationJobOutputDataConfig. + * api-change:``iot``: This release adds additional enhancements to AWS IoT Device Management + Software Package Catalog and Jobs. It also adds SBOM support in Software Package Version. + * api-change:``medialive``: Removing the ON_PREMISE enum from the input settings field. + * api-change:``organizations``: Doc only update for AWS Organizations that fixes several + customer-reported issues + * api-change:``pca-connector-scep``: This is a general availability (GA) release of Connector for + SCEP, a feature of AWS Private CA. Connector for SCEP links your SCEP-enabled and mobile device + management systems to AWS Private CA for digital signature installation and certificate management. + * api-change:``rds``: Launching Global Cluster tagging. +- from version 1.34.19 + * api-change:``amplify``: Doc only update to Amplify to explain platform setting for Next.js 14 SSG + only applications + * api-change:``ivs``: Updates to all tags descriptions. + * api-change:``ivschat``: Updates to all tags descriptions. +- from version 1.34.18 + * api-change:``cognito-idp``: Added email MFA option to user pools with advanced security features. + * api-change:``elbv2``: Correct incorrectly mapped error in ELBv2 waiters + * api-change:``emr``: Update APIs to allow modification of ODCR options, allocation strategy, and + InstanceTypeConfigs on running InstanceFleet clusters. + * api-change:``glue``: AWS Glue is introducing two new optimizers for Apache Iceberg tables: + snapshot retention and orphan file deletion. Customers can enable these optimizers and customize + their configurations to perform daily maintenance tasks on their Iceberg tables based on their + specific requirements. + * api-change:``mediaconvert``: This release includes support for dynamic video overlay workflows, + including picture-in-picture and squeezeback + * api-change:``rds``: This release adds support for the os-upgrade pending maintenance action for + Amazon Aurora DB clusters. + * api-change:``storagegateway``: The S3 File Gateway now supports DSSE-KMS encryption. A new + parameter EncryptionType is added to these APIs: CreateSmbFileShare, CreateNfsFileShare, + UpdateSmbFileShare, UpdateNfsFileShare, DescribeSmbFileShares, DescribeNfsFileShares. Also, in + favor of EncryptionType, KmsEncrypted is deprecated. + * api-change:``synthetics``: This release introduces two features. The first is tag replication, + which allows for the propagation of canary tags onto Synthetics related resources, such as Lambda + functions. The second is a limit increase in canary name length, which has now been increased from + 21 to 255 characters. +- from version 1.34.17 + * api-change:``bedrock-agent``: Amazon Bedrock Knowledge Bases now supports using inference + profiles to increase throughput and improve resilience. + * api-change:``bedrock-agent-runtime``: Amazon Bedrock Knowledge Bases now supports using inference + profiles to increase throughput and improve resilience. + * api-change:``ecr``: Added KMS_DSSE to EncryptionType + * api-change:``guardduty``: Add support for new statistic types in GetFindingsStatistics. + * api-change:``lexv2-models``: Support new Polly voice engines in VoiceSettings: long-form and + generative + * api-change:``medialive``: Adds AV1 Codec support, SRT ouputs, and MediaLive Anywhere support. +- from version 1.34.16 + * api-change:``chime-sdk-voice``: Documentation-only update that clarifies the ValidateE911Address + action of the Amazon Chime SDK Voice APIs. + * api-change:``cognito-identity``: This release adds sensitive trait to some required shapes. + * api-change:``pipes``: This release adds support for customer managed KMS keys in Amazon + EventBridge Pipe + * api-change:``securityhub``: Documentation update for Security Hub +- from version 1.34.15 + * api-change:``dynamodb``: Doc-only update for DynamoDB. Added information about async behavior for + TagResource and UntagResource APIs and updated the description of ResourceInUseException. + * api-change:``elbv2``: Add paginators for the ELBv2 DescribeListenerCertificates and DescribeRules + APIs. Fix broken waiter for the ELBv2 DescribeLoadBalancers API. + * api-change:``ivs-realtime``: IVS Real-Time now offers customers the ability to broadcast to + Stages using RTMP(S). + * api-change:``kafka``: Amazon MSK Replicator can now replicate data to identically named topics + between MSK clusters within the same AWS Region or across different AWS Regions. + * api-change:``sagemaker``: Amazon Sagemaker supports orchestrating SageMaker HyperPod clusters + with Amazon EKS + * api-change:``sagemaker-runtime``: AWS SageMaker Runtime feature: Add sticky routing to support + stateful inference models. +- from version 1.34.14 + * api-change:``qapps``: Adds UpdateLibraryItemMetadata api to change status of app for admin + verification feature and returns isVerified field in any api returning the app or library item. +- from version 1.34.13 + * api-change:``application-signals``: Amazon CloudWatch Application Signals now supports creating + Service Level Objectives using a new calculation type. Users can now create SLOs which are + configured with request-based SLIs to help meet their specific business requirements. + * api-change:``codepipeline``: Updates to add recent notes to APIs and to replace example S3 bucket + names globally. + * api-change:``connect``: Amazon Connect Custom Vocabulary now supports Catalan (Spain), Danish + (Denmark), Dutch (Netherlands), Finnish (Finland), Indonesian (Indonesia), Malay (Malaysia), + Norwegian Bokmal (Norway), Polish (Poland), Swedish (Sweden), and Tagalog/Filipino (Philippines). + * api-change:``gamelift``: Amazon GameLift provides additional events for tracking the fleet + creation process. + * api-change:``kinesisanalyticsv2``: Support for Flink 1.20 in Managed Service for Apache Flink + * api-change:``sagemaker``: Amazon SageMaker now supports idle shutdown of JupyterLab and + CodeEditor applications on SageMaker Studio. +- from version 1.34.12 + * api-change:``appsync``: Adds new logging levels (INFO and DEBUG) for additional log output control + * api-change:``bedrock-agent``: Add support for user metadata inside PromptVariant. + * api-change:``finspace``: Updates Finspace documentation for smaller instances. + * api-change:``fis``: This release adds safety levers, a new mechanism to stop all running + experiments and prevent new experiments from starting. + * api-change:``logs``: Update to support new APIs for delivery of logs from AWS services. + * api-change:``s3control``: Amazon Simple Storage Service /S3 Access Grants / Features : This + release launches new Access Grants API - ListCallerAccessGrants. +- from version 1.34.11 + * api-change:``connect``: Release ReplicaConfiguration as part of DescribeInstance + * api-change:``datazone``: Add support to let data publisher specify a subset of the data asset + that a subscriber will have access to based on the asset filters provided, when accepting a + subscription request. + * api-change:``elbv2``: This release adds support for configuring TCP idle timeout on NLB and GWLB + listeners. + * api-change:``mediaconnect``: AWS Elemental MediaConnect introduces thumbnails for Flow source + monitoring. Thumbnails provide still image previews of the live content feeding your MediaConnect + Flow allowing you to easily verify that your source is operating as expected. + * api-change:``medialive``: Added MinQP as a Rate Control option for H264 and H265 encodes. + * api-change:``sagemaker``: Amazon SageMaker now supports automatic mounting of a user's home + folder in the Amazon Elastic File System (EFS) associated with the SageMaker Studio domain to their + Studio Spaces to enable users to share data between their own private spaces. + * api-change:``timestream-influxdb``: Timestream for InfluxDB now supports compute scaling and + deployment type conversion. This release adds the DbInstanceType and DeploymentType parameters to + the UpdateDbInstance API. +- Refresh patches for new version + * ac_update-docutils.patch +- Update Requires from setup.py + +------------------------------------------------------------------- Old: ---- 1.34.10.tar.gz New: ---- 1.34.21.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ aws-cli.spec ++++++ --- /var/tmp/diff_new_pack.HGzUCF/_old 2024-09-24 17:31:57.201756400 +0200 +++ /var/tmp/diff_new_pack.HGzUCF/_new 2024-09-24 17:31:57.201756400 +0200 @@ -24,7 +24,7 @@ %global _sitelibdir %{%{pythons}_sitelib} Name: aws-cli -Version: 1.34.10 +Version: 1.34.21 Release: 0 Summary: Amazon Web Services Command Line Interface License: Apache-2.0 @@ -42,7 +42,7 @@ BuildRequires: %{pythons}-setuptools BuildRequires: %{pythons}-wheel Requires: %{pythons} -Requires: %{pythons}-botocore >= 1.35.10 +Requires: %{pythons}-botocore >= 1.35.21 Requires: %{pythons}-six Requires: (%{pythons}-PyYAML >= 3.10 with %{pythons}-PyYAML <= 6.1) Requires: (%{pythons}-colorama >= 0.2.5 with %{pythons}-colorama <= 0.5.0) ++++++ 1.34.10.tar.gz -> 1.34.21.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.11.json new/aws-cli-1.34.21/.changes/1.34.11.json --- old/aws-cli-1.34.10/.changes/1.34.11.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.11.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,37 @@ +[ + { + "category": "``connect``", + "description": "Release ReplicaConfiguration as part of DescribeInstance", + "type": "api-change" + }, + { + "category": "``datazone``", + "description": "Add support to let data publisher specify a subset of the data asset that a subscriber will have access to based on the asset filters provided, when accepting a subscription request.", + "type": "api-change" + }, + { + "category": "``elbv2``", + "description": "This release adds support for configuring TCP idle timeout on NLB and GWLB listeners.", + "type": "api-change" + }, + { + "category": "``mediaconnect``", + "description": "AWS Elemental MediaConnect introduces thumbnails for Flow source monitoring. Thumbnails provide still image previews of the live content feeding your MediaConnect Flow allowing you to easily verify that your source is operating as expected.", + "type": "api-change" + }, + { + "category": "``medialive``", + "description": "Added MinQP as a Rate Control option for H264 and H265 encodes.", + "type": "api-change" + }, + { + "category": "``sagemaker``", + "description": "Amazon SageMaker now supports automatic mounting of a user's home folder in the Amazon Elastic File System (EFS) associated with the SageMaker Studio domain to their Studio Spaces to enable users to share data between their own private spaces.", + "type": "api-change" + }, + { + "category": "``timestream-influxdb``", + "description": "Timestream for InfluxDB now supports compute scaling and deployment type conversion. This release adds the DbInstanceType and DeploymentType parameters to the UpdateDbInstance API.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.12.json new/aws-cli-1.34.21/.changes/1.34.12.json --- old/aws-cli-1.34.10/.changes/1.34.12.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.12.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,32 @@ +[ + { + "category": "``appsync``", + "description": "Adds new logging levels (INFO and DEBUG) for additional log output control", + "type": "api-change" + }, + { + "category": "``bedrock-agent``", + "description": "Add support for user metadata inside PromptVariant.", + "type": "api-change" + }, + { + "category": "``finspace``", + "description": "Updates Finspace documentation for smaller instances.", + "type": "api-change" + }, + { + "category": "``fis``", + "description": "This release adds safety levers, a new mechanism to stop all running experiments and prevent new experiments from starting.", + "type": "api-change" + }, + { + "category": "``logs``", + "description": "Update to support new APIs for delivery of logs from AWS services.", + "type": "api-change" + }, + { + "category": "``s3control``", + "description": "Amazon Simple Storage Service /S3 Access Grants / Features : This release launches new Access Grants API - ListCallerAccessGrants.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.13.json new/aws-cli-1.34.21/.changes/1.34.13.json --- old/aws-cli-1.34.10/.changes/1.34.13.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.13.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,32 @@ +[ + { + "category": "``application-signals``", + "description": "Amazon CloudWatch Application Signals now supports creating Service Level Objectives using a new calculation type. Users can now create SLOs which are configured with request-based SLIs to help meet their specific business requirements.", + "type": "api-change" + }, + { + "category": "``codepipeline``", + "description": "Updates to add recent notes to APIs and to replace example S3 bucket names globally.", + "type": "api-change" + }, + { + "category": "``connect``", + "description": "Amazon Connect Custom Vocabulary now supports Catalan (Spain), Danish (Denmark), Dutch (Netherlands), Finnish (Finland), Indonesian (Indonesia), Malay (Malaysia), Norwegian Bokmal (Norway), Polish (Poland), Swedish (Sweden), and Tagalog/Filipino (Philippines).", + "type": "api-change" + }, + { + "category": "``gamelift``", + "description": "Amazon GameLift provides additional events for tracking the fleet creation process.", + "type": "api-change" + }, + { + "category": "``kinesisanalyticsv2``", + "description": "Support for Flink 1.20 in Managed Service for Apache Flink", + "type": "api-change" + }, + { + "category": "``sagemaker``", + "description": "Amazon SageMaker now supports idle shutdown of JupyterLab and CodeEditor applications on SageMaker Studio.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.14.json new/aws-cli-1.34.21/.changes/1.34.14.json --- old/aws-cli-1.34.10/.changes/1.34.14.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.14.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,7 @@ +[ + { + "category": "``qapps``", + "description": "Adds UpdateLibraryItemMetadata api to change status of app for admin verification feature and returns isVerified field in any api returning the app or library item.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.15.json new/aws-cli-1.34.21/.changes/1.34.15.json --- old/aws-cli-1.34.10/.changes/1.34.15.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.15.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,32 @@ +[ + { + "category": "``dynamodb``", + "description": "Doc-only update for DynamoDB. Added information about async behavior for TagResource and UntagResource APIs and updated the description of ResourceInUseException.", + "type": "api-change" + }, + { + "category": "``elbv2``", + "description": "Add paginators for the ELBv2 DescribeListenerCertificates and DescribeRules APIs. Fix broken waiter for the ELBv2 DescribeLoadBalancers API.", + "type": "api-change" + }, + { + "category": "``ivs-realtime``", + "description": "IVS Real-Time now offers customers the ability to broadcast to Stages using RTMP(S).", + "type": "api-change" + }, + { + "category": "``kafka``", + "description": "Amazon MSK Replicator can now replicate data to identically named topics between MSK clusters within the same AWS Region or across different AWS Regions.", + "type": "api-change" + }, + { + "category": "``sagemaker``", + "description": "Amazon Sagemaker supports orchestrating SageMaker HyperPod clusters with Amazon EKS", + "type": "api-change" + }, + { + "category": "``sagemaker-runtime``", + "description": "AWS SageMaker Runtime feature: Add sticky routing to support stateful inference models.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.16.json new/aws-cli-1.34.21/.changes/1.34.16.json --- old/aws-cli-1.34.10/.changes/1.34.16.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.16.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,22 @@ +[ + { + "category": "``chime-sdk-voice``", + "description": "Documentation-only update that clarifies the ValidateE911Address action of the Amazon Chime SDK Voice APIs.", + "type": "api-change" + }, + { + "category": "``cognito-identity``", + "description": "This release adds sensitive trait to some required shapes.", + "type": "api-change" + }, + { + "category": "``pipes``", + "description": "This release adds support for customer managed KMS keys in Amazon EventBridge Pipe", + "type": "api-change" + }, + { + "category": "``securityhub``", + "description": "Documentation update for Security Hub", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.17.json new/aws-cli-1.34.21/.changes/1.34.17.json --- old/aws-cli-1.34.10/.changes/1.34.17.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.17.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,32 @@ +[ + { + "category": "``bedrock-agent``", + "description": "Amazon Bedrock Knowledge Bases now supports using inference profiles to increase throughput and improve resilience.", + "type": "api-change" + }, + { + "category": "``bedrock-agent-runtime``", + "description": "Amazon Bedrock Knowledge Bases now supports using inference profiles to increase throughput and improve resilience.", + "type": "api-change" + }, + { + "category": "``ecr``", + "description": "Added KMS_DSSE to EncryptionType", + "type": "api-change" + }, + { + "category": "``guardduty``", + "description": "Add support for new statistic types in GetFindingsStatistics.", + "type": "api-change" + }, + { + "category": "``lexv2-models``", + "description": "Support new Polly voice engines in VoiceSettings: long-form and generative", + "type": "api-change" + }, + { + "category": "``medialive``", + "description": "Adds AV1 Codec support, SRT ouputs, and MediaLive Anywhere support.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.18.json new/aws-cli-1.34.21/.changes/1.34.18.json --- old/aws-cli-1.34.10/.changes/1.34.18.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.18.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,42 @@ +[ + { + "category": "``cognito-idp``", + "description": "Added email MFA option to user pools with advanced security features.", + "type": "api-change" + }, + { + "category": "``elbv2``", + "description": "Correct incorrectly mapped error in ELBv2 waiters", + "type": "api-change" + }, + { + "category": "``emr``", + "description": "Update APIs to allow modification of ODCR options, allocation strategy, and InstanceTypeConfigs on running InstanceFleet clusters.", + "type": "api-change" + }, + { + "category": "``glue``", + "description": "AWS Glue is introducing two new optimizers for Apache Iceberg tables: snapshot retention and orphan file deletion. Customers can enable these optimizers and customize their configurations to perform daily maintenance tasks on their Iceberg tables based on their specific requirements.", + "type": "api-change" + }, + { + "category": "``mediaconvert``", + "description": "This release includes support for dynamic video overlay workflows, including picture-in-picture and squeezeback", + "type": "api-change" + }, + { + "category": "``rds``", + "description": "This release adds support for the os-upgrade pending maintenance action for Amazon Aurora DB clusters.", + "type": "api-change" + }, + { + "category": "``storagegateway``", + "description": "The S3 File Gateway now supports DSSE-KMS encryption. A new parameter EncryptionType is added to these APIs: CreateSmbFileShare, CreateNfsFileShare, UpdateSmbFileShare, UpdateNfsFileShare, DescribeSmbFileShares, DescribeNfsFileShares. Also, in favor of EncryptionType, KmsEncrypted is deprecated.", + "type": "api-change" + }, + { + "category": "``synthetics``", + "description": "This release introduces two features. The first is tag replication, which allows for the propagation of canary tags onto Synthetics related resources, such as Lambda functions. The second is a limit increase in canary name length, which has now been increased from 21 to 255 characters.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.19.json new/aws-cli-1.34.21/.changes/1.34.19.json --- old/aws-cli-1.34.10/.changes/1.34.19.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.19.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,17 @@ +[ + { + "category": "``amplify``", + "description": "Doc only update to Amplify to explain platform setting for Next.js 14 SSG only applications", + "type": "api-change" + }, + { + "category": "``ivs``", + "description": "Updates to all tags descriptions.", + "type": "api-change" + }, + { + "category": "``ivschat``", + "description": "Updates to all tags descriptions.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.20.json new/aws-cli-1.34.21/.changes/1.34.20.json --- old/aws-cli-1.34.10/.changes/1.34.20.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.20.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,32 @@ +[ + { + "category": "``bedrock``", + "description": "This feature adds cross account s3 bucket and VPC support to ModelInvocation jobs. To use a cross account bucket, pass in the accountId of the bucket to s3BucketOwner in the ModelInvocationJobInputDataConfig or ModelInvocationJobOutputDataConfig.", + "type": "api-change" + }, + { + "category": "``iot``", + "description": "This release adds additional enhancements to AWS IoT Device Management Software Package Catalog and Jobs. It also adds SBOM support in Software Package Version.", + "type": "api-change" + }, + { + "category": "``medialive``", + "description": "Removing the ON_PREMISE enum from the input settings field.", + "type": "api-change" + }, + { + "category": "``organizations``", + "description": "Doc only update for AWS Organizations that fixes several customer-reported issues", + "type": "api-change" + }, + { + "category": "``pca-connector-scep``", + "description": "This is a general availability (GA) release of Connector for SCEP, a feature of AWS Private CA. Connector for SCEP links your SCEP-enabled and mobile device management systems to AWS Private CA for digital signature installation and certificate management.", + "type": "api-change" + }, + { + "category": "``rds``", + "description": "Launching Global Cluster tagging.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/.changes/1.34.21.json new/aws-cli-1.34.21/.changes/1.34.21.json --- old/aws-cli-1.34.10/.changes/1.34.21.json 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/.changes/1.34.21.json 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,32 @@ +[ + { + "category": "``codebuild``", + "description": "GitLab Enhancements - Add support for Self-Hosted GitLab runners in CodeBuild. Add group webhooks", + "type": "api-change" + }, + { + "category": "``ecr``", + "description": "The `DescribeImageScanning` API now includes `fixAvailable`, `exploitAvailable`, and `fixedInVersion` fields to provide more detailed information about the availability of fixes, exploits, and fixed versions for identified image vulnerabilities.", + "type": "api-change" + }, + { + "category": "``ecs``", + "description": "This is a documentation only release to address various tickets.", + "type": "api-change" + }, + { + "category": "``lambda``", + "description": "Support for JSON resource-based policies and block public access", + "type": "api-change" + }, + { + "category": "``rds``", + "description": "Updates Amazon RDS documentation with configuration information about the BYOL model for RDS for Db2.", + "type": "api-change" + }, + { + "category": "``ssm``", + "description": "Support for additional levels of cross-account, cross-Region organizational units in Automation. Various documentation updates.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/CHANGELOG.rst new/aws-cli-1.34.21/CHANGELOG.rst --- old/aws-cli-1.34.10/CHANGELOG.rst 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/CHANGELOG.rst 2024-09-17 20:09:24.000000000 +0200 @@ -2,6 +2,120 @@ CHANGELOG ========= +1.34.21 +======= + +* api-change:``codebuild``: GitLab Enhancements - Add support for Self-Hosted GitLab runners in CodeBuild. Add group webhooks +* api-change:``ecr``: The `DescribeImageScanning` API now includes `fixAvailable`, `exploitAvailable`, and `fixedInVersion` fields to provide more detailed information about the availability of fixes, exploits, and fixed versions for identified image vulnerabilities. +* api-change:``ecs``: This is a documentation only release to address various tickets. +* api-change:``lambda``: Support for JSON resource-based policies and block public access +* api-change:``rds``: Updates Amazon RDS documentation with configuration information about the BYOL model for RDS for Db2. +* api-change:``ssm``: Support for additional levels of cross-account, cross-Region organizational units in Automation. Various documentation updates. + + +1.34.20 +======= + +* api-change:``bedrock``: This feature adds cross account s3 bucket and VPC support to ModelInvocation jobs. To use a cross account bucket, pass in the accountId of the bucket to s3BucketOwner in the ModelInvocationJobInputDataConfig or ModelInvocationJobOutputDataConfig. +* api-change:``iot``: This release adds additional enhancements to AWS IoT Device Management Software Package Catalog and Jobs. It also adds SBOM support in Software Package Version. +* api-change:``medialive``: Removing the ON_PREMISE enum from the input settings field. +* api-change:``organizations``: Doc only update for AWS Organizations that fixes several customer-reported issues +* api-change:``pca-connector-scep``: This is a general availability (GA) release of Connector for SCEP, a feature of AWS Private CA. Connector for SCEP links your SCEP-enabled and mobile device management systems to AWS Private CA for digital signature installation and certificate management. +* api-change:``rds``: Launching Global Cluster tagging. + + +1.34.19 +======= + +* api-change:``amplify``: Doc only update to Amplify to explain platform setting for Next.js 14 SSG only applications +* api-change:``ivs``: Updates to all tags descriptions. +* api-change:``ivschat``: Updates to all tags descriptions. + + +1.34.18 +======= + +* api-change:``cognito-idp``: Added email MFA option to user pools with advanced security features. +* api-change:``elbv2``: Correct incorrectly mapped error in ELBv2 waiters +* api-change:``emr``: Update APIs to allow modification of ODCR options, allocation strategy, and InstanceTypeConfigs on running InstanceFleet clusters. +* api-change:``glue``: AWS Glue is introducing two new optimizers for Apache Iceberg tables: snapshot retention and orphan file deletion. Customers can enable these optimizers and customize their configurations to perform daily maintenance tasks on their Iceberg tables based on their specific requirements. +* api-change:``mediaconvert``: This release includes support for dynamic video overlay workflows, including picture-in-picture and squeezeback +* api-change:``rds``: This release adds support for the os-upgrade pending maintenance action for Amazon Aurora DB clusters. +* api-change:``storagegateway``: The S3 File Gateway now supports DSSE-KMS encryption. A new parameter EncryptionType is added to these APIs: CreateSmbFileShare, CreateNfsFileShare, UpdateSmbFileShare, UpdateNfsFileShare, DescribeSmbFileShares, DescribeNfsFileShares. Also, in favor of EncryptionType, KmsEncrypted is deprecated. +* api-change:``synthetics``: This release introduces two features. The first is tag replication, which allows for the propagation of canary tags onto Synthetics related resources, such as Lambda functions. The second is a limit increase in canary name length, which has now been increased from 21 to 255 characters. + + +1.34.17 +======= + +* api-change:``bedrock-agent``: Amazon Bedrock Knowledge Bases now supports using inference profiles to increase throughput and improve resilience. +* api-change:``bedrock-agent-runtime``: Amazon Bedrock Knowledge Bases now supports using inference profiles to increase throughput and improve resilience. +* api-change:``ecr``: Added KMS_DSSE to EncryptionType +* api-change:``guardduty``: Add support for new statistic types in GetFindingsStatistics. +* api-change:``lexv2-models``: Support new Polly voice engines in VoiceSettings: long-form and generative +* api-change:``medialive``: Adds AV1 Codec support, SRT ouputs, and MediaLive Anywhere support. + + +1.34.16 +======= + +* api-change:``chime-sdk-voice``: Documentation-only update that clarifies the ValidateE911Address action of the Amazon Chime SDK Voice APIs. +* api-change:``cognito-identity``: This release adds sensitive trait to some required shapes. +* api-change:``pipes``: This release adds support for customer managed KMS keys in Amazon EventBridge Pipe +* api-change:``securityhub``: Documentation update for Security Hub + + +1.34.15 +======= + +* api-change:``dynamodb``: Doc-only update for DynamoDB. Added information about async behavior for TagResource and UntagResource APIs and updated the description of ResourceInUseException. +* api-change:``elbv2``: Add paginators for the ELBv2 DescribeListenerCertificates and DescribeRules APIs. Fix broken waiter for the ELBv2 DescribeLoadBalancers API. +* api-change:``ivs-realtime``: IVS Real-Time now offers customers the ability to broadcast to Stages using RTMP(S). +* api-change:``kafka``: Amazon MSK Replicator can now replicate data to identically named topics between MSK clusters within the same AWS Region or across different AWS Regions. +* api-change:``sagemaker``: Amazon Sagemaker supports orchestrating SageMaker HyperPod clusters with Amazon EKS +* api-change:``sagemaker-runtime``: AWS SageMaker Runtime feature: Add sticky routing to support stateful inference models. + + +1.34.14 +======= + +* api-change:``qapps``: Adds UpdateLibraryItemMetadata api to change status of app for admin verification feature and returns isVerified field in any api returning the app or library item. + + +1.34.13 +======= + +* api-change:``application-signals``: Amazon CloudWatch Application Signals now supports creating Service Level Objectives using a new calculation type. Users can now create SLOs which are configured with request-based SLIs to help meet their specific business requirements. +* api-change:``codepipeline``: Updates to add recent notes to APIs and to replace example S3 bucket names globally. +* api-change:``connect``: Amazon Connect Custom Vocabulary now supports Catalan (Spain), Danish (Denmark), Dutch (Netherlands), Finnish (Finland), Indonesian (Indonesia), Malay (Malaysia), Norwegian Bokmal (Norway), Polish (Poland), Swedish (Sweden), and Tagalog/Filipino (Philippines). +* api-change:``gamelift``: Amazon GameLift provides additional events for tracking the fleet creation process. +* api-change:``kinesisanalyticsv2``: Support for Flink 1.20 in Managed Service for Apache Flink +* api-change:``sagemaker``: Amazon SageMaker now supports idle shutdown of JupyterLab and CodeEditor applications on SageMaker Studio. + + +1.34.12 +======= + +* api-change:``appsync``: Adds new logging levels (INFO and DEBUG) for additional log output control +* api-change:``bedrock-agent``: Add support for user metadata inside PromptVariant. +* api-change:``finspace``: Updates Finspace documentation for smaller instances. +* api-change:``fis``: This release adds safety levers, a new mechanism to stop all running experiments and prevent new experiments from starting. +* api-change:``logs``: Update to support new APIs for delivery of logs from AWS services. +* api-change:``s3control``: Amazon Simple Storage Service /S3 Access Grants / Features : This release launches new Access Grants API - ListCallerAccessGrants. + + +1.34.11 +======= + +* api-change:``connect``: Release ReplicaConfiguration as part of DescribeInstance +* api-change:``datazone``: Add support to let data publisher specify a subset of the data asset that a subscriber will have access to based on the asset filters provided, when accepting a subscription request. +* api-change:``elbv2``: This release adds support for configuring TCP idle timeout on NLB and GWLB listeners. +* api-change:``mediaconnect``: AWS Elemental MediaConnect introduces thumbnails for Flow source monitoring. Thumbnails provide still image previews of the live content feeding your MediaConnect Flow allowing you to easily verify that your source is operating as expected. +* api-change:``medialive``: Added MinQP as a Rate Control option for H264 and H265 encodes. +* api-change:``sagemaker``: Amazon SageMaker now supports automatic mounting of a user's home folder in the Amazon Elastic File System (EFS) associated with the SageMaker Studio domain to their Studio Spaces to enable users to share data between their own private spaces. +* api-change:``timestream-influxdb``: Timestream for InfluxDB now supports compute scaling and deployment type conversion. This release adds the DbInstanceType and DeploymentType parameters to the UpdateDbInstance API. + + 1.34.10 ======= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/awscli/__init__.py new/aws-cli-1.34.21/awscli/__init__.py --- old/aws-cli-1.34.10/awscli/__init__.py 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/awscli/__init__.py 2024-09-17 20:09:24.000000000 +0200 @@ -18,7 +18,7 @@ import os -__version__ = '1.34.10' +__version__ = '1.34.21' # # Get our data path to be added to botocore's search path diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/awscli/customizations/emr/argumentschema.py new/aws-cli-1.34.21/awscli/customizations/emr/argumentschema.py --- old/aws-cli-1.34.10/awscli/customizations/emr/argumentschema.py 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/awscli/customizations/emr/argumentschema.py 2024-09-17 20:09:24.000000000 +0200 @@ -57,6 +57,41 @@ "description": "Instance group application configurations." } +ONDEMAND_CAPACITY_RESERVATION_OPTIONS_SCHEMA = { + "type": "object", + "properties" : { + "UsageStrategy": { + "type": "string", + "description": "The strategy of whether to use available capacity reservations to fulfill On-Demand capacity.", + "enum": ["use-capacity-reservations-first"] + }, + "CapacityReservationPreference": { + "type": "string", + "description": "The preference of the capacity reservation of the instance.", + "enum": [ + "open", + "none" + ] + }, + "CapacityReservationResourceGroupArn": { + "type": "string", + "description": "The ARN of the capacity reservation resource group in which to run the instance." + } + } +} + +SPOT_ALLOCATION_STRATEGY_SCHEMA = { + "type": "string", + "description": "The strategy to use to launch Spot instance fleets.", + "enum": ["capacity-optimized", "price-capacity-optimized", "lowest-price", "diversified", "capacity-optimized-prioritized"] +} + +ONDEMAND_ALLOCATION_STRATEGY_SCHEMA = { + "type": "string", + "description": "The strategy to use to launch On-Demand instance fleets.", + "enum": ["lowest-price", "prioritized"] +} + INSTANCE_GROUPS_SCHEMA = { "type": "array", "items": { @@ -411,33 +446,8 @@ "OnDemandSpecification": { "type": "object", "properties": { - "AllocationStrategy": { - "type": "string", - "description": "The strategy to use in launching On-Demand instance fleets.", - "enum": ["lowest-price", "prioritized"] - }, - "CapacityReservationOptions": { - "type": "object", - "properties" : { - "UsageStrategy": { - "type": "string", - "description": "The strategy of whether to use unused Capacity Reservations for fulfilling On-Demand capacity.", - "enum": ["use-capacity-reservations-first"] - }, - "CapacityReservationPreference": { - "type": "string", - "description": "The preference of the instance's Capacity Reservation.", - "enum": [ - "open", - "none" - ] - }, - "CapacityReservationResourceGroupArn": { - "type": "string", - "description": "The ARN of the Capacity Reservation resource group in which to run the instance." - } - } - } + "AllocationStrategy": ONDEMAND_ALLOCATION_STRATEGY_SCHEMA, + "CapacityReservationOptions": ONDEMAND_CAPACITY_RESERVATION_OPTIONS_SCHEMA } }, "SpotSpecification": { @@ -459,11 +469,7 @@ "type": "integer", "description": "Block duration in minutes." }, - "AllocationStrategy": { - "type": "string", - "description": "The strategy to use in launching Spot instance fleets.", - "enum": ["capacity-optimized", "price-capacity-optimized", "lowest-price", "diversified", "capacity-optimized-prioritized"] - } + "AllocationStrategy": SPOT_ALLOCATION_STRATEGY_SCHEMA } } } @@ -477,7 +483,8 @@ "TimeoutDurationMinutes": { "type" : "integer", "description": "The time, in minutes, after which the resize will be stopped if requested resources are unavailable." - } + }, + "AllocationStrategy": SPOT_ALLOCATION_STRATEGY_SCHEMA } }, "OnDemandResizeSpecification": { @@ -486,7 +493,9 @@ "TimeoutDurationMinutes": { "type" : "integer", "description": "The time, in minutes, after which the resize will be stopped if requested resources are unavailable." - } + }, + "AllocationStrategy": ONDEMAND_ALLOCATION_STRATEGY_SCHEMA, + "CapacityReservationOptions": ONDEMAND_CAPACITY_RESERVATION_OPTIONS_SCHEMA } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/awscli/examples/medical-imaging/copy-image-set.rst new/aws-cli-1.34.21/awscli/examples/medical-imaging/copy-image-set.rst --- old/aws-cli-1.34.10/awscli/examples/medical-imaging/copy-image-set.rst 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/awscli/examples/medical-imaging/copy-image-set.rst 2024-09-17 20:09:24.000000000 +0200 @@ -1,14 +1,12 @@ **Example 1: To copy an image set without a destination.** -The following ``copy-image-set`` code example makes a duplicate copy of an image set without a destination. :: +The following ``copy-image-set`` example makes a duplicate copy of an image set without a destination. :: aws medical-imaging copy-image-set \ --datastore-id 12345678901234567890123456789012 \ --source-image-set-id ea92b0d8838c72a3f25d00d13616f87e \ --copy-image-set-information '{"sourceImageSet": {"latestVersionId": "1" } }' - - Output:: { @@ -33,15 +31,45 @@ **Example 2: To copy an image set with a destination.** -The following ``copy-image-set`` code example makes a duplicate copy of an image set with a destination. :: +The following ``copy-image-set`` example makes a duplicate copy of an image set with a destination. :: aws medical-imaging copy-image-set \ --datastore-id 12345678901234567890123456789012 \ --source-image-set-id ea92b0d8838c72a3f25d00d13616f87e \ --copy-image-set-information '{"sourceImageSet": {"latestVersionId": "1" }, "destinationImageSet": { "imageSetId": "b9a06fef182a5f992842f77f8e0868e5", "latestVersionId": "1"} }' +Output:: + + { + "destinationImageSetProperties": { + "latestVersionId": "2", + "imageSetWorkflowStatus": "COPYING", + "updatedAt": 1680042505.135, + "imageSetId": "b9a06fef182a5f992842f77f8e0868e5", + "imageSetState": "LOCKED", + "createdAt": 1680042357.432 + }, + "sourceImageSetProperties": { + "latestVersionId": "1", + "imageSetWorkflowStatus": "COPYING_WITH_READ_ONLY_ACCESS", + "updatedAt": 1680042505.135, + "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", + "imageSetState": "LOCKED", + "createdAt": 1680027126.436 + }, + "datastoreId": "12345678901234567890123456789012" + } + +**Example 3: To copy a subset of instances from a source image set to a destination image set.** +The following ``copy-image-set`` example copies one DICOM instance from the source image set to the destination image set. +The force parameter is provided to override inconsistencies in the Patient, Study, and Series level attributes. :: + aws medical-imaging copy-image-set \ + --datastore-id 12345678901234567890123456789012 \ + --source-image-set-id ea92b0d8838c72a3f25d00d13616f87e \ + --copy-image-set-information '{"sourceImageSet": {"latestVersionId": "1","DICOMCopies": {"copiableAttributes": "{\"SchemaVersion\":\"1.1\",\"Study\":{\"Series\":{\"1.3.6.1.4.1.5962.99.1.3673257865.2104868982.1369432891697.3666.0\":{\"Instances\":{\"1.3.6.1.4.1.5962.99.1.3673257865.2104868982.1369432891697.3669.0\":{}}}}}}"}},"destinationImageSet": {"imageSetId": "b9eb50d8ee682eb9fcf4acbf92f62bb7","latestVersionId": "1"}}' \ + --force Output:: @@ -50,7 +78,7 @@ "latestVersionId": "2", "imageSetWorkflowStatus": "COPYING", "updatedAt": 1680042505.135, - "imageSetId": "b9a06fef182a5f992842f77f8e0868e5", + "imageSetId": "b9eb50d8ee682eb9fcf4acbf92f62bb7", "imageSetState": "LOCKED", "createdAt": 1680042357.432 }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/awscli/examples/medical-imaging/update-image-set-metadata.rst new/aws-cli-1.34.21/awscli/examples/medical-imaging/update-image-set-metadata.rst --- old/aws-cli-1.34.10/awscli/examples/medical-imaging/update-image-set-metadata.rst 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/awscli/examples/medical-imaging/update-image-set-metadata.rst 2024-09-17 20:09:24.000000000 +0200 @@ -1,24 +1,52 @@ -**To insert or update an attribute in image set metadata** +**Example 1: To insert or update an attribute in image set metadata** -The following ``update-image-set-metadata`` code example inserts or updates an attribute in image set metadata. :: +The following ``update-image-set-metadata`` example inserts or updates an attribute in image set metadata. :: aws medical-imaging update-image-set-metadata \ --datastore-id 12345678901234567890123456789012 \ --image-set-id ea92b0d8838c72a3f25d00d13616f87e \ --latest-version-id 1 \ + --cli-binary-format raw-in-base64-out \ --update-image-set-metadata-updates file://metadata-updates.json Contents of ``metadata-updates.json`` :: { "DICOMUpdates": { - "updatableAttributes": "eyJTY2hlbWFWZXJzaW9uIjoxLjEsIlBhdGllbnQiOnsiRElDT00iOnsiUGF0aWVudE5hbWUiOiJNWF5NWCJ9fX0=" + "updatableAttributes": "{\"SchemaVersion\":1.1,\"Patient\":{\"DICOM\":{\"PatientName\":\"MX^MX\"}}}" } } -Note: ``updatableAttributes`` is a Base64 encoded JSON string. Here is the unencoded JSON string. +Output:: + + { + "latestVersionId": "2", + "imageSetWorkflowStatus": "UPDATING", + "updatedAt": 1680042257.908, + "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", + "imageSetState": "LOCKED", + "createdAt": 1680027126.436, + "datastoreId": "12345678901234567890123456789012" + } -{"SchemaVersion":1.1,"Patient":{"DICOM":{"PatientName":"MX^MX"}}} +**Example 2: To remove an attribute from image set metadata** + +The following ``update-image-set-metadata`` example removes an attribute from image set metadata. :: + + aws medical-imaging update-image-set-metadata \ + --datastore-id 12345678901234567890123456789012 \ + --image-set-id ea92b0d8838c72a3f25d00d13616f87e \ + --latest-version-id 1 \ + --cli-binary-format raw-in-base64-out \ + --update-image-set-metadata-updates file://metadata-updates.json + +Contents of ``metadata-updates.json`` :: + + { + "DICOMUpdates": { + "removableAttributes": "{\"SchemaVersion\":1.1,\"Study\":{\"DICOM\":{\"StudyDescription\":\"CHEST\"}}}" + } + } Output:: @@ -32,27 +60,81 @@ "datastoreId": "12345678901234567890123456789012" } -**To remove an attribute from image set metadata** +**Example 3: To remove an instance from image set metadata** -The following ``update-image-set-metadata`` code example removes an attribute from image set metadata. :: +The following ``update-image-set-metadata`` example removes an instance from image set metadata. :: aws medical-imaging update-image-set-metadata \ --datastore-id 12345678901234567890123456789012 \ --image-set-id ea92b0d8838c72a3f25d00d13616f87e \ --latest-version-id 1 \ + --cli-binary-format raw-in-base64-out \ --update-image-set-metadata-updates file://metadata-updates.json Contents of ``metadata-updates.json`` :: { "DICOMUpdates": { - "removableAttributes": "e1NjaGVtYVZlcnNpb246MS4xLFN0dWR5OntESUNPTTp7U3R1ZHlEZXNjcmlwdGlvbjpDSEVTVH19fQo=" + "removableAttributes": "{\"SchemaVersion\": 1.1,\"Study\": {\"Series\": {\"1.1.1.1.1.1.12345.123456789012.123.12345678901234.1\": {\"Instances\": {\"1.1.1.1.1.1.12345.123456789012.123.12345678901234.1\": {}}}}}}" } } -Note: ``removableAttributes`` is a Base64 encoded JSON string. Here is the unencoded JSON string. The key and value must match the attribute to be removed. +Output:: + + { + "latestVersionId": "2", + "imageSetWorkflowStatus": "UPDATING", + "updatedAt": 1680042257.908, + "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", + "imageSetState": "LOCKED", + "createdAt": 1680027126.436, + "datastoreId": "12345678901234567890123456789012" + } + + +**Example 4: To revert an image set to a previous version** + +The following ``update-image-set-metadata`` example shows how to revert an image set to a prior version. CopyImageSet and UpdateImageSetMetadata actions create new versions of image sets. :: + + aws medical-imaging update-image-set-metadata \ + --datastore-id 12345678901234567890123456789012 \ + --image-set-id 53d5fdb05ca4d46ac7ca64b06545c66e \ + --latest-version-id 3 \ + --cli-binary-format raw-in-base64-out \ + --update-image-set-metadata-updates '{"revertToVersionId": "1"}' + +Output:: + + { + "datastoreId": "12345678901234567890123456789012", + "imageSetId": "53d5fdb05ca4d46ac7ca64b06545c66e", + "latestVersionId": "4", + "imageSetState": "LOCKED", + "imageSetWorkflowStatus": "UPDATING", + "createdAt": 1680027126.436, + "updatedAt": 1680042257.908 + } + +**Example 5: To add a private DICOM data element to an instance** + +The following ``update-image-set-metadata`` example shows how to add a private element to a specified instance within an image set. The DICOM standard permits private data elements for communication of information that cannot be contained in standard data elements. You can create, update, and delete private data elements with the +UpdateImageSetMetadata action. :: + + aws medical-imaging update-image-set-metadata \ + --datastore-id 12345678901234567890123456789012 \ + --image-set-id 53d5fdb05ca4d46ac7ca64b06545c66e \ + --latest-version-id 1 \ + --cli-binary-format raw-in-base64-out \ + --force \ + --update-image-set-metadata-updates file://metadata-updates.json + +Contents of ``metadata-updates.json`` :: -{"SchemaVersion":1.1,"Study":{"DICOM":{"StudyDescription":"CHEST"}}} + { + "DICOMUpdates": { + "updatableAttributes": "{\"SchemaVersion\": 1.1,\"Study\": {\"Series\": {\"1.1.1.1.1.1.12345.123456789012.123.12345678901234.1\": {\"Instances\": {\"1.1.1.1.1.1.12345.123456789012.123.12345678901234.1\": {\"DICOM\": {\"001910F9\": \"97\"},\"DICOMVRs\": {\"001910F9\": \"DS\"}}}}}}}" + } + } Output:: @@ -60,33 +142,63 @@ "latestVersionId": "2", "imageSetWorkflowStatus": "UPDATING", "updatedAt": 1680042257.908, - "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", + "imageSetId": "53d5fdb05ca4d46ac7ca64b06545c66e", "imageSetState": "LOCKED", "createdAt": 1680027126.436, "datastoreId": "12345678901234567890123456789012" } -**To remove an instance from image set metadata** +**Example 6: To update a private DICOM data element to an instance** -The following ``update-image-set-metadata`` code example removes an instance from image set metadata. :: +The following ``update-image-set-metadata`` example shows how to update the value of a private data element belonging to an instance within an image set. :: aws medical-imaging update-image-set-metadata \ --datastore-id 12345678901234567890123456789012 \ - --image-set-id ea92b0d8838c72a3f25d00d13616f87e \ + --image-set-id 53d5fdb05ca4d46ac7ca64b06545c66e \ --latest-version-id 1 \ + --cli-binary-format raw-in-base64-out \ + --force \ --update-image-set-metadata-updates file://metadata-updates.json Contents of ``metadata-updates.json`` :: { "DICOMUpdates": { - "removableAttributes": "eezEuMS4xLjEuMS4xLjEyMzQ1LjEyMzQ1Njc4OTAxMi4xMjMuMTIzNDU2Nzg5MDEyMzQuMTp7SW5zdGFuY2VzOnsxLjEuMS4xLjEuMS4xMjM0NS4xMjM0NTY3ODkwMTIuMTIzLjEyMzQ1Njc4OTAxMjM0LjE6e319fX19fQo=" + "updatableAttributes": "{\"SchemaVersion\": 1.1,\"Study\": {\"Series\": {\"1.1.1.1.1.1.12345.123456789012.123.12345678901234.1\": {\"Instances\": {\"1.1.1.1.1.1.12345.123456789012.123.12345678901234.1\": {\"DICOM\": {\"00091001\": \"GE_GENESIS_DD\"}}}}}}}" } } -Note: ``removableAttributes`` is a Base64 encoded JSON string. Here is the unencoded JSON string. +Output:: + + { + "latestVersionId": "2", + "imageSetWorkflowStatus": "UPDATING", + "updatedAt": 1680042257.908, + "imageSetId": "53d5fdb05ca4d46ac7ca64b06545c66e", + "imageSetState": "LOCKED", + "createdAt": 1680027126.436, + "datastoreId": "12345678901234567890123456789012" + } + +**Example 7: To update a SOPInstanceUID with the force parameter** -{"1.1.1.1.1.1.12345.123456789012.123.12345678901234.1":{"Instances":{"1.1.1.1.1.1.12345.123456789012.123.12345678901234.1":{}}}}}} +The following ``update-image-set-metadata`` example shows how to update a SOPInstanceUID, using the force parameter to override the DICOM metadata constraints. :: + + aws medical-imaging update-image-set-metadata \ + --datastore-id 12345678901234567890123456789012 \ + --image-set-id 53d5fdb05ca4d46ac7ca64b06545c66e \ + --latest-version-id 1 \ + --cli-binary-format raw-in-base64-out \ + --force \ + --update-image-set-metadata-updates file://metadata-updates.json + +Contents of ``metadata-updates.json`` :: + + { + "DICOMUpdates": { + "updatableAttributes": "{\"SchemaVersion\":1.1,\"Study\":{\"Series\":{\"1.3.6.1.4.1.5962.99.1.3633258862.2104868982.1369432891697.3656.0\":{\"Instances\":{\"1.3.6.1.4.1.5962.99.1.3633258862.2104868982.1369432891697.3659.0\":{\"DICOM\":{\"SOPInstanceUID\":\"1.3.6.1.4.1.5962.99.1.3633258862.2104868982.1369432891697.3659.9\"}}}}}}}" + } + } Output:: @@ -94,7 +206,7 @@ "latestVersionId": "2", "imageSetWorkflowStatus": "UPDATING", "updatedAt": 1680042257.908, - "imageSetId": "ea92b0d8838c72a3f25d00d13616f87e", + "imageSetId": "53d5fdb05ca4d46ac7ca64b06545c66e", "imageSetState": "LOCKED", "createdAt": 1680027126.436, "datastoreId": "12345678901234567890123456789012" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/doc/source/conf.py new/aws-cli-1.34.21/doc/source/conf.py --- old/aws-cli-1.34.10/doc/source/conf.py 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/doc/source/conf.py 2024-09-17 20:09:24.000000000 +0200 @@ -52,7 +52,7 @@ # The short X.Y version. version = '1.34.' # The full version, including alpha/beta/rc tags. -release = '1.34.10' +release = '1.34.21' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/setup.cfg new/aws-cli-1.34.21/setup.cfg --- old/aws-cli-1.34.10/setup.cfg 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/setup.cfg 2024-09-17 20:09:24.000000000 +0200 @@ -3,7 +3,7 @@ [metadata] requires_dist = - botocore==1.35.10 + botocore==1.35.21 docutils>=0.10,<0.17 s3transfer>=0.10.0,<0.11.0 PyYAML>=3.10,<6.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/setup.py new/aws-cli-1.34.21/setup.py --- old/aws-cli-1.34.10/setup.py 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/setup.py 2024-09-17 20:09:24.000000000 +0200 @@ -24,7 +24,7 @@ install_requires = [ - 'botocore==1.35.10', + 'botocore==1.35.21', 'docutils>=0.10,<0.17', 's3transfer>=0.10.0,<0.11.0', 'PyYAML>=3.10,<6.1', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/tests/unit/customizations/emr/test_add_instance_fleet.py new/aws-cli-1.34.21/tests/unit/customizations/emr/test_add_instance_fleet.py --- old/aws-cli-1.34.10/tests/unit/customizations/emr/test_add_instance_fleet.py 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/tests/unit/customizations/emr/test_add_instance_fleet.py 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,33 @@ +# Copyright 2024 Amazon.com, Inc. or its affiliates. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"). You +# may not use this file except in compliance with the License. A copy of +# the License is located at +# +# http://aws.amazon.com/apache2.0/ +# +# or in the "license" file accompanying this file. This file is +# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF +# ANY KIND, either express or implied. See the License for the specific +# language governing permissions and limitations under the License. + +from tests.unit.customizations.emr import EMRBaseAWSCommandParamsTest as \ + BaseAWSCommandParamsTest +from tests.unit.customizations.emr import test_constants_instance_fleets as \ + CONSTANTS_FLEET + +class TestAddInstanceFleet(BaseAWSCommandParamsTest): + prefix = f"emr add-instance-fleet --cluster-id {CONSTANTS_FLEET.DEFAULT_CLUSTER_NAME} --instance-fleet " + + def test_add_instance_fleet_with_allocation_strategy_spot_and_od(self): + result = \ + { + "ClusterId": CONSTANTS_FLEET.DEFAULT_CLUSTER_NAME, + "InstanceFleet": CONSTANTS_FLEET.RES_TASK_INSTANCE_FLEET_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD + } + self.assert_params_for_cmd( + self.prefix + CONSTANTS_FLEET.TASK_INSTANCE_FLEET_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD, + result) + +if __name__ == "__main__": + unittest.main() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/tests/unit/customizations/emr/test_constants_instance_fleets.py new/aws-cli-1.34.21/tests/unit/customizations/emr/test_constants_instance_fleets.py --- old/aws-cli-1.34.10/tests/unit/customizations/emr/test_constants_instance_fleets.py 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/tests/unit/customizations/emr/test_constants_instance_fleets.py 2024-09-17 20:09:24.000000000 +0200 @@ -11,6 +11,9 @@ # ANY KIND, either express or implied. See the License for the specific # language governing permissions and limitations under the License. +DEFAULT_INSTANCE_FLEET_NAME = "if-XYZ123" +DEFAULT_CLUSTER_NAME = "j-ABC123456" + INSTANCE_FLEETS_WITH_ON_DEMAND_MASTER_ONLY = ( 'InstanceFleetType=MASTER,TargetOnDemandCapacity=1,InstanceTypeConfigs=[{InstanceType=d2.xlarge}],' 'LaunchSpecifications={OnDemandSpecification={AllocationStrategy=lowest-price,' @@ -70,17 +73,66 @@ 'TimeoutAction=TERMINATE_CLUSTER,AllocationStrategy=diversified}}') INSTANCE_FLEETS_WITH_PRIORITIZED_ALLOCATION_STRATEGY_SPOT_AND_OD = ( - 'InstanceFleetType=MASTER,TargetSpotCapacity=1,InstanceTypeConfigs=[{InstanceType=d2.xlarge,BidPrice=0.1,Priority=0.0}],' - 'LaunchSpecifications={SpotSpecification={TimeoutDurationMinutes=30,TimeoutAction=TERMINATE_CLUSTER,' - 'AllocationStrategy=capacity-optimized-prioritized},OnDemandSpecification={AllocationStrategy=prioritized}} ' - 'InstanceFleetType=CORE,TargetSpotCapacity=100,InstanceTypeConfigs=[{InstanceType=d2.xlarge,BidPrice=0.5,' - 'WeightedCapacity=1,Priority=0.0},{InstanceType=m3.2xlarge,BidPrice=0.2,WeightedCapacity=2,Priority=1.0},{InstanceType=m3.4xlarge,BidPrice=0.4,' - 'WeightedCapacity=4,Priority=99.0}],LaunchSpecifications={SpotSpecification={TimeoutDurationMinutes=32,' - 'TimeoutAction=TERMINATE_CLUSTER,AllocationStrategy=capacity-optimized-prioritized},OnDemandSpecification={AllocationStrategy=prioritized}} ' - 'InstanceFleetType=TASK,TargetSpotCapacity=100,InstanceTypeConfigs=[{InstanceType=d2.xlarge,BidPrice=0.5,' - 'WeightedCapacity=1,Priority=10.0},{InstanceType=m3.2xlarge,BidPrice=0.2,WeightedCapacity=2,Priority=0.0},{InstanceType=m3.4xlarge,BidPrice=0.4,' - 'WeightedCapacity=4,Priority=100.0}],LaunchSpecifications={SpotSpecification={TimeoutDurationMinutes=77,' - 'TimeoutAction=TERMINATE_CLUSTER,AllocationStrategy=capacity-optimized-prioritized},OnDemandSpecification={AllocationStrategy=prioritized}}') + 'InstanceFleetType=MASTER,TargetSpotCapacity=1,InstanceTypeConfigs=[{InstanceType=d2.xlarge,' + 'BidPrice=0.1,Priority=0.0}],LaunchSpecifications={SpotSpecification={TimeoutDurationMinutes=30,' + 'TimeoutAction=TERMINATE_CLUSTER,AllocationStrategy=capacity-optimized-prioritized},' + 'OnDemandSpecification={AllocationStrategy=prioritized}} ' + 'InstanceFleetType=CORE,TargetSpotCapacity=100,InstanceTypeConfigs=[{InstanceType=d2.xlarge,' + 'BidPrice=0.5,WeightedCapacity=1,Priority=0.0},{InstanceType=m3.2xlarge,BidPrice=0.2,' + 'WeightedCapacity=2,Priority=1.0},{InstanceType=m3.4xlarge,BidPrice=0.4,WeightedCapacity=4,' + 'Priority=99.0}],LaunchSpecifications={SpotSpecification={TimeoutDurationMinutes=32,' + 'TimeoutAction=TERMINATE_CLUSTER,AllocationStrategy=capacity-optimized-prioritized},' + 'OnDemandSpecification={AllocationStrategy=prioritized}} ' + 'InstanceFleetType=TASK,TargetSpotCapacity=100,InstanceTypeConfigs=[{InstanceType=d2.xlarge,' + 'BidPrice=0.5,WeightedCapacity=1,Priority=10.0},{InstanceType=m3.2xlarge,BidPrice=0.2,' + 'WeightedCapacity=2,Priority=0.0},{InstanceType=m3.4xlarge,BidPrice=0.4,WeightedCapacity=4,' + 'Priority=100.0}],LaunchSpecifications={SpotSpecification={TimeoutDurationMinutes=77,' + 'TimeoutAction=TERMINATE_CLUSTER,AllocationStrategy=' + 'capacity-optimized-prioritized},OnDemandSpecification={AllocationStrategy=prioritized}}') + +TASK_INSTANCE_FLEET_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD = ( + 'InstanceFleetType=TASK,TargetSpotCapacity=100,InstanceTypeConfigs=[{InstanceType=d2.xlarge,' + 'BidPrice=0.5,WeightedCapacity=1},{InstanceType=m3.2xlarge,BidPrice=0.2,WeightedCapacity=2},' + '{InstanceType=m3.4xlarge,BidPrice=0.4,WeightedCapacity=4}],LaunchSpecifications={' + 'SpotSpecification={TimeoutDurationMinutes=77,TimeoutAction=TERMINATE_CLUSTER,' + 'AllocationStrategy=capacity-optimized-prioritized},OnDemandSpecification={' + 'AllocationStrategy=lowest-price}},ResizeSpecifications={SpotResizeSpecification={' + 'AllocationStrategy=capacity-optimized},OnDemandResizeSpecification={' + 'AllocationStrategy=lowest-price,CapacityReservationOptions={' + 'UsageStrategy=use-capacity-reservations-first,CapacityReservationPreference=open}}}') + +INSTANCE_FLEETS_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD = ( + 'InstanceFleetType=MASTER,TargetSpotCapacity=1,InstanceTypeConfigs=[{InstanceType=d2.xlarge,' + 'BidPrice=0.1}],LaunchSpecifications={SpotSpecification={TimeoutDurationMinutes=30,' + 'TimeoutAction=TERMINATE_CLUSTER,AllocationStrategy=capacity-optimized-prioritized},' + 'OnDemandSpecification={AllocationStrategy=lowest-price}} ' + 'InstanceFleetType=CORE,TargetSpotCapacity=100,InstanceTypeConfigs=[{InstanceType=d2.xlarge,' + 'BidPrice=0.5,WeightedCapacity=1},{InstanceType=m3.2xlarge,BidPrice=0.2,WeightedCapacity=2},' + '{InstanceType=m3.4xlarge,BidPrice=0.4,WeightedCapacity=4}],LaunchSpecifications={' + 'SpotSpecification={TimeoutDurationMinutes=32,TimeoutAction=TERMINATE_CLUSTER,' + 'AllocationStrategy=capacity-optimized-prioritized},OnDemandSpecification={' + 'AllocationStrategy=lowest-price}},ResizeSpecifications={SpotResizeSpecification=' + '{AllocationStrategy=capacity-optimized},OnDemandResizeSpecification={' + 'AllocationStrategy=lowest-price,CapacityReservationOptions={' + 'UsageStrategy=use-capacity-reservations-first,CapacityReservationPreference=open}}} ' + f'{TASK_INSTANCE_FLEET_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD}') + +MODIFY_INSTANCE_FLEET_WITH_INSTANCE_TYPE_CONFIGS = ( + f'InstanceFleetId={DEFAULT_INSTANCE_FLEET_NAME},' + f'InstanceTypeConfigs=[{{InstanceType=d2.xlarge}}]') + +MODIFY_INSTANCE_FLEET_WITH_SPOT_AND_OD_RESIZE_SPECIFICATIONS = ( + f'InstanceFleetId={DEFAULT_INSTANCE_FLEET_NAME},ResizeSpecifications={{SpotResizeSpecification=' + f'{{AllocationStrategy=capacity-optimized}},OnDemandResizeSpecification={{' + f'AllocationStrategy=lowest-price,CapacityReservationOptions={{' + f'UsageStrategy=use-capacity-reservations-first,CapacityReservationPreference=open}}}}}}') + +MODIFY_INSTANCE_FLEET_WITH_INSTANCE_TYPE_CONFIGS_AND_SPOT_AND_OD_RESIZE_SPECIFICATIONS = ( + f'InstanceFleetId={DEFAULT_INSTANCE_FLEET_NAME},ResizeSpecifications={{SpotResizeSpecification=' + f'{{AllocationStrategy=capacity-optimized}},OnDemandResizeSpecification={{' + f'AllocationStrategy=lowest-price,CapacityReservationOptions={{' + f'UsageStrategy=use-capacity-reservations-first,CapacityReservationPreference=open}}}}}}' + f',InstanceTypeConfigs=[{{InstanceType=d2.xlarge}}]') RES_INSTANCE_FLEETS_WITH_ON_DEMAND_MASTER_ONLY = \ [{"InstanceTypeConfigs": [{"InstanceType": "d2.xlarge"}], @@ -256,36 +308,305 @@ "Name": "TASK" }] - RES_INSTANCE_FLEETS_WITH_PRIORITIZED_ALLOCATION_STRATEGY_SPOT_AND_OD = \ - [{"InstanceTypeConfigs": [{"InstanceType": "d2.xlarge","BidPrice": "0.1","Priority": 0.0}], + [ + { + "InstanceTypeConfigs": [ + { + "InstanceType": "d2.xlarge", + "BidPrice": "0.1", + "Priority": 0 + } + ], "LaunchSpecifications": { - "SpotSpecification": {"TimeoutDurationMinutes": 30, "TimeoutAction": "TERMINATE_CLUSTER", "AllocationStrategy": "capacity-optimized-prioritized"}, - "OnDemandSpecification": {"AllocationStrategy": "prioritized"} + "SpotSpecification": { + "TimeoutDurationMinutes": 30, + "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized" + }, + "OnDemandSpecification": { + "AllocationStrategy": "prioritized" + } }, "TargetSpotCapacity": 1, "InstanceFleetType": "MASTER", "Name": "MASTER" }, - {"InstanceTypeConfigs": [{"InstanceType": "d2.xlarge","BidPrice": "0.5","WeightedCapacity": 1,"Priority": 0.0}, - {"InstanceType": "m3.2xlarge","BidPrice": "0.2","WeightedCapacity": 2,"Priority": 1.0},{"InstanceType": "m3.4xlarge","BidPrice": "0.4", - "WeightedCapacity": 4,"Priority": 99.0}], - "LaunchSpecifications" : { - "SpotSpecification": {"TimeoutDurationMinutes": 32, "TimeoutAction": "TERMINATE_CLUSTER", "AllocationStrategy": "capacity-optimized-prioritized"}, - "OnDemandSpecification": {"AllocationStrategy": "prioritized"} + { + "InstanceTypeConfigs": [ + { + "InstanceType": "d2.xlarge", + "BidPrice": "0.5", + "WeightedCapacity": 1, + "Priority": 0 + }, + { + "InstanceType": "m3.2xlarge", + "BidPrice": "0.2", + "WeightedCapacity": 2, + "Priority": 1 + }, + { + "InstanceType": "m3.4xlarge", + "BidPrice": "0.4", + "WeightedCapacity": 4, + "Priority": 99 + } + ], + "LaunchSpecifications": { + "SpotSpecification": { + "TimeoutDurationMinutes": 32, + "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized" + }, + "OnDemandSpecification": { + "AllocationStrategy": "prioritized" + } }, "TargetSpotCapacity": 100, "InstanceFleetType": "CORE", "Name": "CORE" }, - {"InstanceTypeConfigs": [{"InstanceType": "d2.xlarge","BidPrice": "0.5","WeightedCapacity": 1,"Priority": 10.0}, - {"InstanceType": "m3.2xlarge","BidPrice": "0.2","WeightedCapacity": 2,"Priority": 0.0},{"InstanceType": "m3.4xlarge","BidPrice": "0.4", - "WeightedCapacity": 4,"Priority": 100.0}], - "LaunchSpecifications" : { - "SpotSpecification": {"TimeoutDurationMinutes": 77, "TimeoutAction": "TERMINATE_CLUSTER", "AllocationStrategy": "capacity-optimized-prioritized"}, - "OnDemandSpecification": {"AllocationStrategy": "prioritized"} + { + "InstanceTypeConfigs": [ + { + "InstanceType": "d2.xlarge", + "BidPrice": "0.5", + "WeightedCapacity": 1, + "Priority": 10 + }, + { + "InstanceType": "m3.2xlarge", + "BidPrice": "0.2", + "WeightedCapacity": 2, + "Priority": 0 + }, + { + "InstanceType": "m3.4xlarge", + "BidPrice": "0.4", + "WeightedCapacity": 4, + "Priority": 100 + } + ], + "LaunchSpecifications": { + "SpotSpecification": { + "TimeoutDurationMinutes": 77, + "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized" + }, + "OnDemandSpecification": { + "AllocationStrategy": "prioritized" + } }, "TargetSpotCapacity": 100, "InstanceFleetType": "TASK", "Name": "TASK" - }] \ No newline at end of file + }] + +RES_INSTANCE_FLEETS_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD = \ + [ + { + "InstanceTypeConfigs": [ + { + "InstanceType": "d2.xlarge", + "BidPrice": "0.1" + } + ], + "LaunchSpecifications": { + "SpotSpecification": { + "TimeoutDurationMinutes": 30, + "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized" + }, + "OnDemandSpecification": { + "AllocationStrategy": "lowest-price" + } + }, + "TargetSpotCapacity": 1, + "InstanceFleetType": "MASTER", + "Name": "MASTER" + }, + { + "InstanceTypeConfigs": [ + { + "InstanceType": "d2.xlarge", + "BidPrice": "0.5", + "WeightedCapacity": 1 + }, + { + "InstanceType": "m3.2xlarge", + "BidPrice": "0.2", + "WeightedCapacity": 2 + }, + { + "InstanceType": "m3.4xlarge", + "BidPrice": "0.4", + "WeightedCapacity": 4 + } + ], + "LaunchSpecifications": { + "SpotSpecification": { + "TimeoutDurationMinutes": 32, + "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized" + }, + "OnDemandSpecification": { + "AllocationStrategy": "lowest-price" + } + }, + "ResizeSpecifications": { + "OnDemandResizeSpecification": { + "AllocationStrategy": "lowest-price", + "CapacityReservationOptions": { + "CapacityReservationPreference": "open", + "UsageStrategy": "use-capacity-reservations-first" + } + }, + "SpotResizeSpecification": { + "AllocationStrategy": "capacity-optimized" + } + }, + "TargetSpotCapacity": 100, + "InstanceFleetType": "CORE", + "Name": "CORE" + }, + { + "InstanceTypeConfigs": [ + { + "InstanceType": "d2.xlarge", + "BidPrice": "0.5", + "WeightedCapacity": 1 + }, + { + "InstanceType": "m3.2xlarge", + "BidPrice": "0.2", + "WeightedCapacity": 2 + }, + { + "InstanceType": "m3.4xlarge", + "BidPrice": "0.4", + "WeightedCapacity": 4 + } + ], + "LaunchSpecifications": { + "SpotSpecification": { + "TimeoutDurationMinutes": 77, + "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized" + }, + "OnDemandSpecification": { + "AllocationStrategy": "lowest-price" + } + }, + "ResizeSpecifications": { + "OnDemandResizeSpecification": { + "AllocationStrategy": "lowest-price", + "CapacityReservationOptions": { + "CapacityReservationPreference": "open", + "UsageStrategy": "use-capacity-reservations-first" + } + }, + "SpotResizeSpecification": { + "AllocationStrategy": "capacity-optimized" + } + }, + "TargetSpotCapacity": 100, + "InstanceFleetType": "TASK", + "Name": "TASK" + } + ] + +RES_TASK_INSTANCE_FLEET_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD = \ + { + "InstanceTypeConfigs": [ + { + "InstanceType": "d2.xlarge", + "BidPrice": "0.5", + "WeightedCapacity": 1 + }, + { + "InstanceType": "m3.2xlarge", + "BidPrice": "0.2", + "WeightedCapacity": 2 + }, + { + "InstanceType": "m3.4xlarge", + "BidPrice": "0.4", + "WeightedCapacity": 4 + } + ], + "LaunchSpecifications": { + "SpotSpecification": { + "TimeoutDurationMinutes": 77, + "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized" + }, + "OnDemandSpecification": { + "AllocationStrategy": "lowest-price" + } + }, + "ResizeSpecifications": { + "OnDemandResizeSpecification": { + "AllocationStrategy": "lowest-price", + "CapacityReservationOptions": { + "CapacityReservationPreference": "open", + "UsageStrategy": "use-capacity-reservations-first" + } + }, + "SpotResizeSpecification": { + "AllocationStrategy": "capacity-optimized" + } + }, + "TargetSpotCapacity": 100, + "InstanceFleetType": "TASK" + } + +RES_MODIFY_INSTANCE_FLEET_WITH_INSTANCE_TYPE_CONFIGS = \ + { + "ClusterId": DEFAULT_CLUSTER_NAME, + "InstanceFleet": { + "InstanceFleetId": DEFAULT_INSTANCE_FLEET_NAME, + "InstanceTypeConfigs": [ + {"InstanceType": "d2.xlarge"} + ] + } + } + +RES_MODIFY_INSTANCE_FLEET_WITH_SPOT_AND_OD_RESIZE_SPECIFICATIONS = \ + { + "ClusterId": DEFAULT_CLUSTER_NAME, + "InstanceFleet": { + "InstanceFleetId": DEFAULT_INSTANCE_FLEET_NAME, + "ResizeSpecifications": { + "OnDemandResizeSpecification": { + "AllocationStrategy": "lowest-price", + "CapacityReservationOptions": { + "CapacityReservationPreference": "open", + "UsageStrategy": "use-capacity-reservations-first" + } + }, + "SpotResizeSpecification": {"AllocationStrategy": "capacity-optimized"} + } + } + } + +RES_MODIFY_INSTANCE_FLEET_WITH_INSTANCE_TYPE_CONFIGS_AND_SPOT_AND_OD_RESIZE_SPECIFICATIONS = \ + { + "ClusterId": DEFAULT_CLUSTER_NAME, + "InstanceFleet": { + "InstanceFleetId": DEFAULT_INSTANCE_FLEET_NAME, + "ResizeSpecifications": { + "OnDemandResizeSpecification": { + "AllocationStrategy": "lowest-price", + "CapacityReservationOptions": { + "CapacityReservationPreference": "open", + "UsageStrategy": "use-capacity-reservations-first" + } + }, + "SpotResizeSpecification": {"AllocationStrategy": "capacity-optimized"} + }, + "InstanceTypeConfigs": [ + {"InstanceType": "d2.xlarge"} + ] + } + } \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/tests/unit/customizations/emr/test_create_cluster_release_label.py new/aws-cli-1.34.21/tests/unit/customizations/emr/test_create_cluster_release_label.py --- old/aws-cli-1.34.10/tests/unit/customizations/emr/test_create_cluster_release_label.py 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/tests/unit/customizations/emr/test_create_cluster_release_label.py 2024-09-17 20:09:24.000000000 +0200 @@ -1552,6 +1552,26 @@ } self.assert_params_for_cmd(cmd, result) + def test_instance_fleets_with_resize_allocation_strategy_spot_od(self): + cmd = (self.prefix + '--release-label emr-4.2.0 --instance-fleets ' + + CONSTANTS_FLEET.INSTANCE_FLEETS_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD + + ' --ec2-attributes AvailabilityZones=[us-east-1a,us-east-1b]') + instance_fleets = CONSTANTS_FLEET.RES_INSTANCE_FLEETS_WITH_RESIZE_ALLOCATION_STRATEGY_SPOT_AND_OD + result = \ + { + 'Name': DEFAULT_CLUSTER_NAME, + 'Instances': {'KeepJobFlowAliveWhenNoSteps': True, + 'TerminationProtected': False, + 'InstanceFleets': + instance_fleets, + 'Placement': {'AvailabilityZones': ['us-east-1a','us-east-1b']} + }, + 'ReleaseLabel': 'emr-4.2.0', + 'VisibleToAllUsers': True, + 'Tags': [] + } + self.assert_params_for_cmd(cmd, result) + def test_create_cluster_with_os_release_label(self): test_os_release_label = '2.0.20220406.1' cmd = (self.prefix + '--release-label emr-6.6.0' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/tests/unit/customizations/emr/test_describe_cluster.py new/aws-cli-1.34.21/tests/unit/customizations/emr/test_describe_cluster.py --- old/aws-cli-1.34.10/tests/unit/customizations/emr/test_describe_cluster.py 2024-08-30 20:16:13.000000000 +0200 +++ new/aws-cli-1.34.21/tests/unit/customizations/emr/test_describe_cluster.py 2024-09-17 20:09:24.000000000 +0200 @@ -176,6 +176,20 @@ "BidPriceAsPercentageOfOnDemandPrice": 0.0 } ], + "LaunchSpecifications" : { + "SpotSpecification": {"TimeoutDurationMinutes": 77, "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized"}, + "OnDemandSpecification": {"AllocationStrategy": "lowest-price"} + }, + "ResizeSpecifications": { + "OnDemandResizeSpecification": {"AllocationStrategy": "lowest-price", + "CapacityReservationOptions": { + "CapacityReservationPreference": "open", + "UsageStrategy": "use-capacity-reservations-first" + } + }, + "SpotResizeSpecification": {"AllocationStrategy": "capacity-optimized"} + }, "Name": "Master instance group", "InstanceFleetType": "MASTER", "InstanceType": "m1.large", @@ -327,6 +341,20 @@ "BidPriceAsPercentageOfOnDemandPrice": 0.0 } ], + "LaunchSpecifications" : { + "SpotSpecification": {"TimeoutDurationMinutes": 77, "TimeoutAction": "TERMINATE_CLUSTER", + "AllocationStrategy": "capacity-optimized-prioritized"}, + "OnDemandSpecification": {"AllocationStrategy": "lowest-price"} + }, + "ResizeSpecifications": { + "OnDemandResizeSpecification": {"AllocationStrategy": "lowest-price", + "CapacityReservationOptions": { + "CapacityReservationPreference": "open", + "UsageStrategy": "use-capacity-reservations-first" + } + }, + "SpotResizeSpecification": {"AllocationStrategy": "capacity-optimized"} + }, "Name": "Master instance group", "InstanceFleetType": "MASTER", "InstanceType": "m1.large", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-cli-1.34.10/tests/unit/customizations/emr/test_modify_instance_fleet.py new/aws-cli-1.34.21/tests/unit/customizations/emr/test_modify_instance_fleet.py --- old/aws-cli-1.34.10/tests/unit/customizations/emr/test_modify_instance_fleet.py 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-cli-1.34.21/tests/unit/customizations/emr/test_modify_instance_fleet.py 2024-09-17 20:09:24.000000000 +0200 @@ -0,0 +1,40 @@ +# Copyright 2024 Amazon.com, Inc. or its affiliates. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"). You +# may not use this file except in compliance with the License. A copy of +# the License is located at +# +# http://aws.amazon.com/apache2.0/ +# +# or in the "license" file accompanying this file. This file is +# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF +# ANY KIND, either express or implied. See the License for the specific +# language governing permissions and limitations under the License. + +from tests.unit.customizations.emr import EMRBaseAWSCommandParamsTest as \ + BaseAWSCommandParamsTest +from tests.unit.customizations.emr import test_constants_instance_fleets as \ + CONSTANTS_FLEET + + +class TestModifyInstanceFleet(BaseAWSCommandParamsTest): + prefix = f"emr modify-instance-fleet --cluster-id {CONSTANTS_FLEET.DEFAULT_CLUSTER_NAME} --instance-fleet " + + def test_modify_instance_fleet_with_instance_type_configs(self): + self.assert_params_for_cmd( + self.prefix + CONSTANTS_FLEET.MODIFY_INSTANCE_FLEET_WITH_INSTANCE_TYPE_CONFIGS, + CONSTANTS_FLEET.RES_MODIFY_INSTANCE_FLEET_WITH_INSTANCE_TYPE_CONFIGS) + + def test_modify_instance_fleet_with_allocation_strategy_spot_and_od(self): + self.assert_params_for_cmd( + self.prefix + CONSTANTS_FLEET.MODIFY_INSTANCE_FLEET_WITH_SPOT_AND_OD_RESIZE_SPECIFICATIONS, + CONSTANTS_FLEET.RES_MODIFY_INSTANCE_FLEET_WITH_SPOT_AND_OD_RESIZE_SPECIFICATIONS) + + def test_modify_instance_fleet_with_allocation_strategy_spot_and_od_and_instance_type_configs(self): + self.assert_params_for_cmd( + self.prefix + CONSTANTS_FLEET.MODIFY_INSTANCE_FLEET_WITH_INSTANCE_TYPE_CONFIGS_AND_SPOT_AND_OD_RESIZE_SPECIFICATIONS, + CONSTANTS_FLEET.RES_MODIFY_INSTANCE_FLEET_WITH_INSTANCE_TYPE_CONFIGS_AND_SPOT_AND_OD_RESIZE_SPECIFICATIONS) + + +if __name__ == "__main__": + unittest.main() ++++++ ac_update-docutils.patch ++++++ --- /var/tmp/diff_new_pack.HGzUCF/_old 2024-09-24 17:31:58.921828407 +0200 +++ /var/tmp/diff_new_pack.HGzUCF/_new 2024-09-24 17:31:58.925828574 +0200 @@ -1,10 +1,10 @@ -diff -Nru aws-cli-1.34.10.orig/setup.py aws-cli-1.34.10/setup.py ---- aws-cli-1.34.10.orig/setup.py 2024-08-30 20:16:13.000000000 +0200 -+++ aws-cli-1.34.10/setup.py 2024-09-04 08:23:42.025785880 +0200 +diff -Nru aws-cli-1.34.21.orig/setup.py aws-cli-1.34.21/setup.py +--- aws-cli-1.34.21.orig/setup.py 2024-09-17 18:09:24.000000000 +0000 ++++ aws-cli-1.34.21/setup.py 2024-09-20 10:00:12.360600395 +0000 @@ -25,7 +25,7 @@ install_requires = [ - 'botocore==1.35.10', + 'botocore==1.35.21', - 'docutils>=0.10,<0.17', + 'docutils>=0.10', 's3transfer>=0.10.0,<0.11.0',