aws-sdk-kotlin icon indicating copy to clipboard operation
aws-sdk-kotlin copied to clipboard

chore: track artifact sizes

Open aajtodd opened this issue 1 year ago • 7 comments

Issue #

https://github.com/awslabs/aws-sdk-kotlin/issues/416

Description of changes

  • Adds a new task to gather the JVM jar sizes and write them to a JSON file in the format expected by CloudWatch.
  • Adds a new task to compare the current sizes to historical data in CW
  • Adds a new GH workflow to publish the results of the comparison to the PR.
    • On release the artifact sizes will be updated and new data pushed to CW

TODO

  • Still need to test this in PR
  • The workflow should probably fail if we are x % delta above prior averages (or whatever threshold we want to define)
  • Manual workflow dispatch would be nice

Questions

  • Is this the "right" way? Should we just use GetMetricData and compute average from that
  • This doesn't handle any of smithy-kotlin runtime directly but it does by computing the dependency closure size of a few services.
  • The dependency closure includes everything needed at runtime (stdlib, smithy-kotlin, aws-runtime + the service JAR size). Is that what we want to track?

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

aajtodd avatar Feb 21 '24 21:02 aajtodd

A new generated diff is ready to view.

  • No codegen difference in the AWS SDK

github-actions[bot] avatar Feb 21 '24 21:02 github-actions[bot]

A new generated diff is ready to view.

  • No codegen difference in the AWS SDK

github-actions[bot] avatar Feb 21 '24 22:02 github-actions[bot]

A new generated diff is ready to view.

  • No codegen difference in the AWS SDK

github-actions[bot] avatar Feb 21 '24 22:02 github-actions[bot]

A new generated diff is ready to view.

  • No codegen difference in the AWS SDK

github-actions[bot] avatar Feb 21 '24 22:02 github-actions[bot]

Quality Gate Passed Quality Gate passed

Issues
1 New issue

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

sonarqubecloud[bot] avatar Feb 21 '24 22:02 sonarqubecloud[bot]

MetricName Dimensions Bytes DeltaPct
ArtifactSize Artifact=aws-config-jvm.jar 1,100,080 +0.00%
ArtifactSize Artifact=aws-core-jvm.jar 7,533 +0.00%
ArtifactSize Artifact=aws-endpoint-jvm.jar 10,801 +0.00%
ArtifactSize Artifact=aws-http-jvm.jar 65,781 +0.00%
ArtifactSize Artifact=s3-jvm.jar 5,072,345 +0.00%
DependencyClosureSize KmpTarget=jvm,Service=s3 13,279,073 +0.00%

github-actions[bot] avatar Feb 21 '24 22:02 github-actions[bot]

A new generated diff is ready to view.

  • No codegen difference in the AWS SDK

github-actions[bot] avatar Feb 21 '24 22:02 github-actions[bot]

Implemented in #1290

lauzadis avatar May 06 '24 18:05 lauzadis