Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: smoke tests #1388

Open
wants to merge 20 commits into
base: main
Choose a base branch
from
Open

feat: smoke tests #1388

wants to merge 20 commits into from

Conversation

0marperez
Copy link
Contributor

@0marperez 0marperez commented Aug 23, 2024

Issue #

Description of changes

Adds gradle support for smoke tests

Companion PR: smithy-lang/smithy-kotlin#1141

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

Copy link

A new generated diff is ready to view.

Copy link

Affected Artifacts

Changed in size
Artifact Pull Request (bytes) Latest Release (bytes) Delta (bytes) Delta (percentage)
ssmquicksetup-jvm.jar 477,920 467,673 10,247 2.19%
costandusagereportservice-jvm.jar 388,235 381,124 7,111 1.87%
acm-jvm.jar 807,399 798,754 8,645 1.08%
polly-jvm.jar 682,702 675,673 7,029 1.04%
secretsmanager-jvm.jar 845,986 837,379 8,607 1.03%
cognitoidentity-jvm.jar 833,466 826,338 7,128 0.86%
elastictranscoder-jvm.jar 942,744 935,714 7,030 0.75%
kinesis-jvm.jar 1,209,762 1,201,159 8,603 0.72%
elasticloadbalancing-jvm.jar 1,220,160 1,211,654 8,506 0.70%
route53domains-jvm.jar 1,492,052 1,483,438 8,614 0.58%
shield-jvm.jar 1,265,189 1,258,166 7,023 0.56%
applicationdiscoveryservice-jvm.jar 1,280,005 1,272,938 7,067 0.56%
snowball-jvm.jar 1,308,793 1,301,744 7,049 0.54%
efs-jvm.jar 1,325,107 1,318,054 7,053 0.54%
sns-jvm.jar 1,459,333 1,452,321 7,012 0.48%
cloudwatch-jvm.jar 1,676,704 1,669,641 7,063 0.42%
directconnect-jvm.jar 2,086,021 2,077,580 8,441 0.41%
eventbridge-jvm.jar 2,296,999 2,288,406 8,593 0.38%
sfn-jvm.jar 1,926,042 1,919,007 7,035 0.37%
batch-jvm.jar 2,004,466 1,997,382 7,084 0.35%
cloudwatchlogs-jvm.jar 2,453,481 2,444,817 8,664 0.35%
elasticbeanstalk-jvm.jar 2,140,502 2,133,400 7,102 0.33%
codepipeline-jvm.jar 2,787,343 2,778,745 8,598 0.31%
athena-jvm.jar 2,333,756 2,326,710 7,046 0.30%
route53resolver-jvm.jar 2,401,583 2,394,506 7,077 0.30%
docdb-jvm.jar 2,411,360 2,404,284 7,076 0.29%
ses-jvm.jar 2,409,630 2,402,605 7,025 0.29%
route53-jvm.jar 2,963,308 2,954,696 8,612 0.29%
cloudtrail-jvm.jar 2,427,444 2,420,404 7,040 0.29%
codebuild-jvm.jar 2,444,691 2,437,672 7,019 0.29%
elasticsearchservice-jvm.jar 2,477,693 2,470,633 7,060 0.29%
directoryservice-jvm.jar 2,560,440 2,553,375 7,065 0.28%
appstream-jvm.jar 2,787,993 2,780,956 7,037 0.25%
devicefarm-jvm.jar 2,790,606 2,783,581 7,025 0.25%
autoscaling-jvm.jar 2,828,269 2,821,179 7,090 0.25%
waf-jvm.jar 2,834,204 2,827,125 7,079 0.25%
wafregional-jvm.jar 2,968,622 2,961,528 7,094 0.24%
codedeploy-jvm.jar 3,152,375 3,145,326 7,049 0.22%
dynamodb-jvm.jar 3,392,927 3,385,843 7,084 0.21%
ecs-jvm.jar 3,497,277 3,490,258 7,019 0.20%
apigateway-jvm.jar 3,568,348 3,561,303 7,045 0.20%
iam-jvm.jar 4,582,558 4,574,003 8,555 0.19%
elasticache-jvm.jar 3,787,676 3,780,633 7,043 0.19%
rekognition-jvm.jar 3,951,353 3,944,316 7,037 0.18%
cognitoidentityprovider-jvm.jar 4,089,069 4,081,946 7,123 0.17%
ssmquicksetup-jvm.jar closure 8,358,496 8,344,060 14,436 0.17%
pinpoint-jvm.jar 5,230,710 5,222,161 8,549 0.16%
gamelift-jvm.jar 4,345,938 4,338,919 7,019 0.16%
databasemigrationservice-jvm.jar 4,474,011 4,466,937 7,074 0.16%
configservice-jvm.jar 4,787,803 4,780,701 7,102 0.15%
acm-jvm.jar closure 8,687,975 8,675,141 12,834 0.15%
secretsmanager-jvm.jar closure 8,726,562 8,713,766 12,796 0.15%
elasticloadbalancing-jvm.jar closure 9,100,736 9,088,041 12,695 0.14%
kinesis-jvm.jar closure 9,174,940 9,162,148 12,792 0.14%
costandusagereportservice-jvm.jar closure 8,268,811 8,257,511 11,300 0.14%
route53domains-jvm.jar closure 9,372,628 9,359,825 12,803 0.14%
polly-jvm.jar closure 8,563,278 8,552,060 11,218 0.13%
cognitoidentity-jvm.jar closure 8,714,042 8,702,725 11,317 0.13%
elastictranscoder-jvm.jar closure 8,823,320 8,812,101 11,219 0.13%
directconnect-jvm.jar closure 9,966,597 9,953,967 12,630 0.13%
eventbridge-jvm.jar closure 10,177,575 10,164,793 12,782 0.13%
cloudwatchlogs-jvm.jar closure 10,418,659 10,405,806 12,853 0.12%
applicationdiscoveryservice-jvm.jar closure 9,160,581 9,149,325 11,256 0.12%
shield-jvm.jar closure 9,145,765 9,134,553 11,212 0.12%
snowball-jvm.jar closure 9,189,369 9,178,131 11,238 0.12%
efs-jvm.jar closure 9,205,683 9,194,441 11,242 0.12%
lightsail-jvm.jar 5,832,378 5,825,338 7,040 0.12%
sns-jvm.jar closure 9,339,909 9,328,708 11,201 0.12%
codepipeline-jvm.jar closure 10,667,919 10,655,132 12,787 0.12%
route53-jvm.jar closure 10,843,884 10,831,083 12,801 0.12%
cloudwatch-jvm.jar closure 9,557,280 9,546,028 11,252 0.12%
rds-jvm.jar 7,405,762 7,397,090 8,672 0.12%
sfn-jvm.jar closure 9,806,618 9,795,394 11,224 0.11%
batch-jvm.jar closure 9,885,042 9,873,769 11,273 0.11%
elasticbeanstalk-jvm.jar closure 10,021,078 10,009,787 11,291 0.11%
athena-jvm.jar closure 10,214,332 10,203,097 11,235 0.11%
route53resolver-jvm.jar closure 10,282,159 10,270,893 11,266 0.11%
docdb-jvm.jar closure 10,291,936 10,280,671 11,265 0.11%
ses-jvm.jar closure 10,290,206 10,278,992 11,214 0.11%
cloudtrail-jvm.jar closure 10,308,020 10,296,791 11,229 0.11%
elasticsearchservice-jvm.jar closure 10,358,269 10,347,020 11,249 0.11%
codebuild-jvm.jar closure 10,325,267 10,314,059 11,208 0.11%
directoryservice-jvm.jar closure 10,441,016 10,429,762 11,254 0.11%
autoscaling-jvm.jar closure 10,708,845 10,697,566 11,279 0.11%
appstream-jvm.jar closure 10,668,569 10,657,343 11,226 0.11%
waf-jvm.jar closure 10,714,780 10,703,512 11,268 0.11%
devicefarm-jvm.jar closure 10,671,182 10,659,968 11,214 0.11%
wafregional-jvm.jar closure 10,849,198 10,837,915 11,283 0.10%
iam-jvm.jar closure 12,463,134 12,450,390 12,744 0.10%
codedeploy-jvm.jar closure 11,032,951 11,021,713 11,238 0.10%
dynamodb-jvm.jar closure 11,273,503 11,262,230 11,273 0.10%
ecs-jvm.jar closure 11,377,853 11,366,645 11,208 0.10%
apigateway-jvm.jar closure 11,448,924 11,437,690 11,234 0.10%
pinpoint-jvm.jar closure 13,111,286 13,098,548 12,738 0.10%
elasticache-jvm.jar closure 11,668,252 11,657,020 11,232 0.10%
rekognition-jvm.jar closure 11,831,929 11,820,703 11,226 0.09%
cognitoidentityprovider-jvm.jar closure 11,969,645 11,958,333 11,312 0.09%
ssm-jvm.jar 7,555,506 7,548,480 7,026 0.09%
gamelift-jvm.jar closure 12,226,514 12,215,306 11,208 0.09%
databasemigrationservice-jvm.jar closure 12,354,587 12,343,324 11,263 0.09%
configservice-jvm.jar closure 12,668,379 12,657,088 11,291 0.09%
rds-jvm.jar closure 15,286,338 15,273,477 12,861 0.08%
lightsail-jvm.jar closure 13,712,954 13,701,725 11,229 0.08%
ssm-jvm.jar closure 15,436,082 15,424,867 11,215 0.07%
glue-jvm.jar 10,746,122 10,739,058 7,064 0.07%
glue-jvm.jar closure 18,626,698 18,615,445 11,253 0.06%
sagemakermetrics-jvm.jar closure 7,984,419 7,980,230 4,189 0.05%
kinesisvideowebrtcstorage-jvm.jar closure 8,010,533 8,006,344 4,189 0.05%
marketplaceentitlementservice-jvm.jar closure 8,020,385 8,016,196 4,189 0.05%
apigatewaymanagementapi-jvm.jar closure 8,022,660 8,018,471 4,189 0.05%
inspectorscan-jvm.jar closure 8,025,675 8,021,486 4,189 0.05%
workmailmessageflow-jvm.jar closure 8,029,740 8,025,551 4,189 0.05%
kinesisvideomedia-jvm.jar closure 8,033,812 8,029,623 4,189 0.05%
marketplacecommerceanalytics-jvm.jar closure 8,037,685 8,033,496 4,189 0.05%
cloudtraildata-jvm.jar closure 8,040,629 8,036,440 4,189 0.05%
forecastquery-jvm.jar closure 8,044,903 8,040,714 4,189 0.05%
kinesisvideosignaling-jvm.jar closure 8,049,820 8,045,631 4,189 0.05%
appconfigdata-jvm.jar closure 8,050,428 8,046,239 4,189 0.05%
freetier-jvm.jar closure 8,054,014 8,049,825 4,189 0.05%
eksauth-jvm.jar closure 8,071,881 8,067,692 4,189 0.05%
personalizeruntime-jvm.jar closure 8,075,863 8,071,674 4,189 0.05%
sso-jvm.jar closure 8,086,910 8,082,721 4,189 0.05%
ec2instanceconnect-jvm.jar closure 8,092,800 8,088,611 4,189 0.05%
marketplacedeployment-jvm.jar closure 8,097,935 8,093,746 4,189 0.05%
connectcontactlens-jvm.jar closure 8,100,930 8,096,741 4,189 0.05%
mediastoredata-jvm.jar closure 8,103,234 8,099,045 4,189 0.05%
supplychain-jvm.jar closure 8,104,779 8,100,590 4,189 0.05%
migrationhubconfig-jvm.jar closure 8,105,471 8,101,282 4,189 0.05%
sagemakeredge-jvm.jar closure 8,107,096 8,102,907 4,189 0.05%
cloudsearchdomain-jvm.jar closure 8,117,160 8,112,971 4,189 0.05%
personalizeevents-jvm.jar closure 8,122,720 8,118,531 4,189 0.05%
iotjobsdataplane-jvm.jar closure 8,136,373 8,132,184 4,189 0.05%
sagemakerfeaturestoreruntime-jvm.jar closure 8,154,727 8,150,538 4,189 0.05%
sagemakera2iruntime-jvm.jar closure 8,157,232 8,153,043 4,189 0.05%
route53recoverycluster-jvm.jar closure 8,159,181 8,154,992 4,189 0.05%
elasticinference-jvm.jar closure 8,165,282 8,161,093 4,189 0.05%
qldbsession-jvm.jar closure 8,169,912 8,165,723 4,189 0.05%
ssooidc-jvm.jar closure 8,171,454 8,167,265 4,189 0.05%
s3outposts-jvm.jar closure 8,175,621 8,171,432 4,189 0.05%
cloudfrontkeyvaluestore-jvm.jar closure 8,176,332 8,172,143 4,189 0.05%
iotfleethub-jvm.jar closure 8,179,583 8,175,394 4,189 0.05%
applicationcostprofiler-jvm.jar closure 8,180,198 8,176,009 4,189 0.05%
sagemakerruntime-jvm.jar closure 8,184,982 8,180,793 4,189 0.05%
iotdataplane-jvm.jar closure 8,191,678 8,187,489 4,189 0.05%
pricing-jvm.jar closure 8,196,082 8,191,893 4,189 0.05%
dynamodbstreams-jvm.jar closure 8,201,891 8,197,702 4,189 0.05%
artifact-jvm.jar closure 8,208,379 8,204,190 4,189 0.05%
iotsecuretunneling-jvm.jar closure 8,213,247 8,209,058 4,189 0.05%
supportapp-jvm.jar closure 8,227,550 8,223,361 4,189 0.05%
controlcatalog-jvm.jar closure 8,242,919 8,238,730 4,189 0.05%
marketplacemetering-jvm.jar closure 8,244,214 8,240,025 4,189 0.05%
ebs-jvm.jar closure 8,249,330 8,245,141 4,189 0.05%
pinpointsmsvoice-jvm.jar closure 8,253,194 8,249,005 4,189 0.05%
sts-jvm.jar closure 8,265,840 8,261,651 4,189 0.05%
kendraranking-jvm.jar closure 8,271,337 8,267,148 4,189 0.05%
repostspace-jvm.jar closure 8,281,202 8,277,013 4,189 0.05%
rdsdata-jvm.jar closure 8,290,359 8,286,170 4,189 0.05%
resourcegroupstaggingapi-jvm.jar closure 8,296,460 8,292,271 4,189 0.05%
iot1clickdevicesservice-jvm.jar closure 8,310,294 8,306,105 4,189 0.05%
account-jvm.jar closure 8,310,443 8,306,254 4,189 0.05%
lexruntimeservice-jvm.jar closure 8,332,064 8,327,875 4,189 0.05%
rbin-jvm.jar closure 8,333,453 8,329,264 4,189 0.05%
licensemanagerlinuxsubscriptions-jvm.jar closure 8,349,918 8,345,729 4,189 0.05%
connectparticipant-jvm.jar closure 8,354,400 8,350,211 4,189 0.05%
networkmonitor-jvm.jar closure 8,359,340 8,355,151 4,189 0.05%
pcaconnectorscep-jvm.jar closure 8,380,839 8,376,650 4,189 0.05%
kinesisvideoarchivedmedia-jvm.jar closure 8,382,314 8,378,125 4,189 0.05%
iot1clickprojects-jvm.jar closure 8,383,389 8,379,200 4,189 0.05%
redshiftdata-jvm.jar closure 8,387,877 8,383,688 4,189 0.05%
marketplaceagreement-jvm.jar closure 8,396,620 8,392,431 4,189 0.05%
cloud9-jvm.jar closure 8,403,415 8,399,226 4,189 0.05%
cloudcontrol-jvm.jar closure 8,403,587 8,399,398 4,189 0.05%
launchwizard-jvm.jar closure 8,409,746 8,405,557 4,189 0.05%
autoscalingplans-jvm.jar closure 8,415,514 8,411,325 4,189 0.05%
licensemanagerusersubscriptions-jvm.jar closure 8,416,795 8,412,606 4,189 0.05%
mwaa-jvm.jar closure 8,420,483 8,416,294 4,189 0.05%
oam-jvm.jar closure 8,423,288 8,419,099 4,189 0.05%
timestreaminfluxdb-jvm.jar closure 8,425,037 8,420,848 4,189 0.05%
iotdeviceadvisor-jvm.jar closure 8,432,394 8,428,205 4,189 0.05%
cloudhsm-jvm.jar closure 8,435,869 8,431,680 4,189 0.05%
codestarnotifications-jvm.jar closure 8,440,326 8,436,137 4,189 0.05%
route53profiles-jvm.jar closure 8,455,929 8,451,740 4,189 0.05%
savingsplans-jvm.jar closure 8,468,037 8,463,848 4,189 0.05%
serverlessapplicationrepository-jvm.jar closure 8,468,496 8,464,307 4,189 0.05%
arczonalshift-jvm.jar closure 8,477,604 8,473,415 4,189 0.05%
docdbelastic-jvm.jar closure 8,480,527 8,476,338 4,189 0.05%
mediastore-jvm.jar closure 8,483,338 8,479,149 4,189 0.05%
healthlake-jvm.jar closure 8,493,904 8,489,715 4,189 0.05%
bcmdataexports-jvm.jar closure 8,494,873 8,490,684 4,189 0.05%
simspaceweaver-jvm.jar closure 8,504,123 8,499,934 4,189 0.05%
cognitosync-jvm.jar closure 8,506,755 8,502,566 4,189 0.05%
snowdevicemanagement-jvm.jar closure 8,514,701 8,510,512 4,189 0.05%
cloudhsmv2-jvm.jar closure 8,523,896 8,519,707 4,189 0.05%
codegurusecurity-jvm.jar closure 8,527,377 8,523,188 4,189 0.05%
osis-jvm.jar closure 8,528,103 8,523,914 4,189 0.05%
pi-jvm.jar closure 8,528,679 8,524,490 4,189 0.05%
trustedadvisor-jvm.jar closure 8,538,575 8,534,386 4,189 0.05%
migrationhub-jvm.jar closure 8,540,610 8,536,421 4,189 0.05%
ivschat-jvm.jar closure 8,543,594 8,539,405 4,189 0.05%
scheduler-jvm.jar closure 8,547,668 8,543,479 4,189 0.05%
workspacesthinclient-jvm.jar closure 8,564,612 8,560,423 4,189 0.05%
opsworkscm-jvm.jar closure 8,566,438 8,562,249 4,189 0.05%
qldb-jvm.jar closure 8,569,407 8,565,218 4,189 0.05%
dlm-jvm.jar closure 8,574,911 8,570,722 4,189 0.05%
rum-jvm.jar closure 8,580,851 8,576,662 4,189 0.05%
support-jvm.jar closure 8,581,676 8,577,487 4,189 0.05%
transcribestreaming-jvm.jar closure 8,586,296 8,582,107 4,189 0.05%
managedblockchainquery-jvm.jar closure 8,593,239 8,589,050 4,189 0.05%
datapipeline-jvm.jar closure 8,599,441 8,595,252 4,189 0.05%
ioteventsdata-jvm.jar closure 8,608,352 8,604,163 4,189 0.05%
taxsettings-jvm.jar closure 8,609,095 8,604,906 4,189 0.05%
health-jvm.jar closure 8,616,743 8,612,554 4,189 0.05%
identitystore-jvm.jar closure 8,635,724 8,631,535 4,189 0.05%
resourceexplorer2-jvm.jar closure 8,639,401 8,635,212 4,189 0.05%
resourcegroups-jvm.jar closure 8,641,525 8,637,336 4,189 0.05%
keyspaces-jvm.jar closure 8,675,947 8,671,758 4,189 0.05%
internetmonitor-jvm.jar closure 8,682,788 8,678,599 4,189 0.05%
servicequotas-jvm.jar closure 8,683,349 8,679,160 4,189 0.05%
signer-jvm.jar closure 8,687,925 8,683,736 4,189 0.05%
codegurureviewer-jvm.jar closure 8,693,587 8,689,398 4,189 0.05%
applicationsignals-jvm.jar closure 8,693,681 8,689,492 4,189 0.05%
connectcampaigns-jvm.jar closure 8,698,955 8,694,766 4,189 0.05%
applicationautoscaling-jvm.jar closure 8,701,474 8,697,285 4,189 0.05%
route53recoverycontrolconfig-jvm.jar closure 8,702,257 8,698,068 4,189 0.05%
backupgateway-jvm.jar closure 8,708,662 8,704,473 4,189 0.05%
medicalimaging-jvm.jar closure 8,708,685 8,704,496 4,189 0.05%
chimesdkmeetings-jvm.jar closure 8,717,749 8,713,560 4,189 0.05%
mediapackagevod-jvm.jar closure 8,724,344 8,720,155 4,189 0.05%
servicecatalogappregistry-jvm.jar closure 8,733,879 8,729,690 4,189 0.05%
braket-jvm.jar closure 8,739,797 8,735,608 4,189 0.05%
timestreamquery-jvm.jar closure 8,746,725 8,742,536 4,189 0.05%
lexruntimev2-jvm.jar closure 8,748,734 8,744,545 4,189 0.05%
codeguruprofiler-jvm.jar closure 8,752,970 8,748,781 4,189 0.05%
emrserverless-jvm.jar closure 8,756,356 8,752,167 4,189 0.05%
synthetics-jvm.jar closure 8,759,665 8,755,476 4,189 0.05%
costoptimizationhub-jvm.jar closure 8,762,891 8,758,702 4,189 0.05%
worklink-jvm.jar closure 8,763,004 8,758,815 4,189 0.05%
appintegrations-jvm.jar closure 8,764,756 8,760,567 4,189 0.05%
schemas-jvm.jar closure 8,792,137 8,787,948 4,189 0.05%
translate-jvm.jar closure 8,802,452 8,798,263 4,189 0.05%
paymentcryptography-jvm.jar closure 8,809,126 8,804,937 4,189 0.05%
mq-jvm.jar closure 8,810,063 8,805,874 4,189 0.05%
ssmsap-jvm.jar closure 8,810,760 8,806,571 4,189 0.05%
rolesanywhere-jvm.jar closure 8,823,517 8,819,328 4,189 0.05%
amp-jvm.jar closure 8,824,043 8,819,854 4,189 0.05%
lookoutvision-jvm.jar closure 8,830,084 8,825,895 4,189 0.05%
dax-jvm.jar closure 8,839,078 8,834,889 4,189 0.05%
sqs-jvm.jar closure 8,870,234 8,866,045 4,189 0.05%
cleanroomsml-jvm.jar closure 8,874,796 8,870,607 4,189 0.05%
timestreamwrite-jvm.jar closure 8,876,588 8,872,399 4,189 0.05%
qapps-jvm.jar closure 8,876,965 8,872,776 4,189 0.05%
ecrpublic-jvm.jar closure 8,881,883 8,877,694 4,189 0.05%
paymentcryptographydata-jvm.jar closure 8,886,514 8,882,325 4,189 0.05%
appfabric-jvm.jar closure 8,886,809 8,882,620 4,189 0.05%
mediapackage-jvm.jar closure 8,887,402 8,883,213 4,189 0.05%
b2bi-jvm.jar closure 8,895,630 8,891,441 4,189 0.05%
chatbot-jvm.jar closure 8,905,447 8,901,258 4,189 0.05%
codeconnections-jvm.jar closure 8,906,745 8,902,556 4,189 0.05%
kafkaconnect-jvm.jar closure 8,910,637 8,906,448 4,189 0.05%
codestarconnections-jvm.jar closure 8,914,388 8,910,199 4,189 0.05%
grafana-jvm.jar closure 8,919,477 8,915,288 4,189 0.05%
privatenetworks-jvm.jar closure 8,931,118 8,926,929 4,189 0.05%
migrationhubrefactorspaces-jvm.jar closure 8,931,503 8,927,314 4,189 0.05%
route53recoveryreadiness-jvm.jar closure 8,935,367 8,931,178 4,189 0.05%
detective-jvm.jar closure 8,941,198 8,937,009 4,189 0.05%
chimesdkidentity-jvm.jar closure 8,946,115 8,941,926 4,189 0.05%
controltower-jvm.jar closure 8,959,953 8,955,764 4,189 0.05%
emrcontainers-jvm.jar closure 8,987,617 8,983,428 4,189 0.05%
machinelearning-jvm.jar closure 8,991,798 8,987,609 4,189 0.05%
applicationinsights-jvm.jar closure 8,995,253 8,991,064 4,189 0.05%
neptunegraph-jvm.jar closure 9,004,866 9,000,677 4,189 0.05%
fis-jvm.jar closure 9,009,532 9,005,343 4,189 0.05%
securitylake-jvm.jar closure 9,027,991 9,023,802 4,189 0.05%
kinesisanalytics-jvm.jar closure 9,028,442 9,024,253 4,189 0.05%
cloudsearch-jvm.jar closure 9,030,917 9,026,728 4,189 0.05%
bedrockruntime-jvm.jar closure 9,045,967 9,041,778 4,189 0.05%
finspacedata-jvm.jar closure 9,050,501 9,046,312 4,189 0.05%
acmpca-jvm.jar closure 9,051,440 9,047,251 4,189 0.05%
mediapackagev2-jvm.jar closure 9,054,238 9,050,049 4,189 0.05%
budgets-jvm.jar closure 9,066,288 9,062,099 4,189 0.05%
comprehendmedical-jvm.jar closure 9,076,804 9,072,615 4,189 0.05%
migrationhuborchestrator-jvm.jar closure 9,080,838 9,076,649 4,189 0.05%
managedblockchain-jvm.jar closure 9,091,576 9,087,387 4,189 0.05%
voiceid-jvm.jar closure 9,098,110 9,093,921 4,189 0.05%
mturk-jvm.jar closure 9,101,156 9,096,967 4,189 0.05%
outposts-jvm.jar closure 9,112,595 9,108,406 4,189 0.05%
glacier-jvm.jar closure 9,116,745 9,112,556 4,189 0.05%
ivs-jvm.jar closure 9,134,415 9,130,226 4,189 0.05%
kinesisvideo-jvm.jar closure 9,134,836 9,130,647 4,189 0.05%
iotthingsgraph-jvm.jar closure 9,140,331 9,136,142 4,189 0.05%
amplify-jvm.jar closure 9,140,367 9,136,178 4,189 0.05%
ivsrealtime-jvm.jar closure 9,152,460 9,148,271 4,189 0.05%
tnb-jvm.jar closure 9,158,251 9,154,062 4,189 0.05%
servicediscovery-jvm.jar closure 9,158,613 9,154,424 4,189 0.05%
amplifybackend-jvm.jar closure 9,231,324 9,227,135 4,189 0.05%
opensearchserverless-jvm.jar closure 9,234,073 9,229,884 4,189 0.05%
ssmincidents-jvm.jar closure 9,248,128 9,243,939 4,189 0.05%
ram-jvm.jar closure 9,252,266 9,248,077 4,189 0.05%
appconfig-jvm.jar closure 9,269,486 9,265,297 4,189 0.05%
textract-jvm.jar closure 9,287,385 9,283,196 4,189 0.05%
sms-jvm.jar closure 9,291,061 9,286,872 4,189 0.05%
marketplacecatalog-jvm.jar closure 9,296,687 9,292,498 4,189 0.05%
greengrassv2-jvm.jar closure 9,298,338 9,294,149 4,189 0.05%
codecatalyst-jvm.jar closure 9,308,393 9,304,204 4,189 0.05%
pipes-jvm.jar closure 9,309,792 9,305,603 4,189 0.05%
pcaconnectorad-jvm.jar closure 9,311,811 9,307,622 4,189 0.05%
ssmcontacts-jvm.jar closure 9,312,996 9,308,807 4,189 0.05%
xray-jvm.jar closure 9,320,970 9,316,781 4,189 0.04%
connectcases-jvm.jar closure 9,325,671 9,321,482 4,189 0.04%
sagemakergeospatial-jvm.jar closure 9,338,965 9,334,776 4,189 0.04%
pinpointemail-jvm.jar closure 9,341,280 9,337,091 4,189 0.04%
m2-jvm.jar closure 9,376,187 9,371,998 4,189 0.04%
iotevents-jvm.jar closure 9,376,280 9,372,091 4,189 0.04%
apprunner-jvm.jar closure 9,380,463 9,376,274 4,189 0.04%
verifiedpermissions-jvm.jar closure 9,385,749 9,381,560 4,189 0.04%
panorama-jvm.jar closure 9,392,117 9,387,928 4,189 0.04%
lookoutmetrics-jvm.jar closure 9,426,543 9,422,354 4,189 0.04%
apptest-jvm.jar closure 9,466,292 9,462,103 4,189 0.04%
inspector-jvm.jar closure 9,476,611 9,472,422 4,189 0.04%
entityresolution-jvm.jar closure 9,478,846 9,474,657 4,189 0.04%
billingconductor-jvm.jar closure 9,480,024 9,475,835 4,189 0.04%
evidently-jvm.jar closure 9,494,348 9,490,159 4,189 0.04%
groundstation-jvm.jar closure 9,495,096 9,490,907 4,189 0.04%
migrationhubstrategy-jvm.jar closure 9,497,497 9,493,308 4,189 0.04%
bedrockagentruntime-jvm.jar closure 9,539,159 9,534,970 4,189 0.04%
lexmodelbuildingservice-jvm.jar closure 9,548,205 9,544,016 4,189 0.04%
dataexchange-jvm.jar closure 9,548,861 9,544,672 4,189 0.04%
neptunedata-jvm.jar closure 9,550,082 9,545,893 4,189 0.04%
codeartifact-jvm.jar closure 9,555,589 9,551,400 4,189 0.04%
workspacesweb-jvm.jar closure 9,571,315 9,567,126 4,189 0.04%
wisdom-jvm.jar closure 9,588,412 9,584,223 4,189 0.04%
iotanalytics-jvm.jar closure 9,651,426 9,647,237 4,189 0.04%
chimesdkmessaging-jvm.jar closure 9,653,291 9,649,102 4,189 0.04%
mediatailor-jvm.jar closure 9,663,425 9,659,236 4,189 0.04%
amplifyuibuilder-jvm.jar closure 9,671,562 9,667,373 4,189 0.04%
vpclattice-jvm.jar closure 9,672,396 9,668,207 4,189 0.04%
redshiftserverless-jvm.jar closure 9,675,097 9,670,908 4,189 0.04%
firehose-jvm.jar closure 9,705,477 9,701,288 4,189 0.04%
lookoutequipment-jvm.jar closure 9,728,629 9,724,440 4,189 0.04%
workdocs-jvm.jar closure 9,742,663 9,738,474 4,189 0.04%
transcribe-jvm.jar closure 9,794,082 9,789,893 4,189 0.04%
memorydb-jvm.jar closure 9,802,237 9,798,048 4,189 0.04%
databrew-jvm.jar closure 9,811,157 9,806,968 4,189 0.04%
finspace-jvm.jar closure 9,832,921 9,828,732 4,189 0.04%
networkfirewall-jvm.jar closure 9,835,502 9,831,313 4,189 0.04%
globalaccelerator-jvm.jar closure 9,847,989 9,843,800 4,189 0.04%
nimble-jvm.jar closure 9,899,676 9,895,487 4,189 0.04%
devopsguru-jvm.jar closure 9,904,185 9,899,996 4,189 0.04%
cloudwatchevents-jvm.jar closure 9,914,649 9,910,460 4,189 0.04%
licensemanager-jvm.jar closure 9,919,216 9,915,027 4,189 0.04%
accessanalyzer-jvm.jar closure 9,964,011 9,959,822 4,189 0.04%
kms-jvm.jar closure 9,996,658 9,992,469 4,189 0.04%
qconnect-jvm.jar closure 9,999,264 9,995,075 4,189 0.04%
bedrock-jvm.jar closure 10,003,798 9,999,609 4,189 0.04%
chimesdkmediapipelines-jvm.jar closure 10,005,607 10,001,418 4,189 0.04%
apigatewayv2-jvm.jar closure 10,007,271 10,003,082 4,189 0.04%
mailmanager-jvm.jar closure 10,024,514 10,020,325 4,189 0.04%
iottwinmaker-jvm.jar closure 10,027,201 10,023,012 4,189 0.04%
organizations-jvm.jar closure 10,036,858 10,032,669 4,189 0.04%
fms-jvm.jar closure 10,051,517 10,047,328 4,189 0.04%
lakeformation-jvm.jar closure 10,061,829 10,057,640 4,189 0.04%
ecr-jvm.jar closure 10,065,834 10,061,645 4,189 0.04%
swf-jvm.jar closure 10,087,246 10,083,057 4,189 0.04%
auditmanager-jvm.jar closure 10,114,378 10,110,189 4,189 0.04%
location-jvm.jar closure 10,169,295 10,165,106 4,189 0.04%
appsync-jvm.jar closure 10,215,292 10,211,103 4,189 0.04%
transfer-jvm.jar closure 10,228,126 10,223,937 4,189 0.04%
iotfleetwise-jvm.jar closure 10,240,134 10,235,945 4,189 0.04%
drs-jvm.jar closure 10,244,780 10,240,591 4,189 0.04%
elasticloadbalancingv2-jvm.jar closure 10,250,259 10,246,070 4,189 0.04%
kinesisanalyticsv2-jvm.jar closure 10,262,384 10,258,195 4,189 0.04%
ssoadmin-jvm.jar closure 10,263,893 10,259,704 4,189 0.04%
mediaconnect-jvm.jar closure 10,272,787 10,268,598 4,189 0.04%
customerprofiles-jvm.jar closure 10,278,216 10,274,027 4,189 0.04%
kafka-jvm.jar closure 10,282,978 10,278,789 4,189 0.04%
opsworks-jvm.jar closure 10,291,894 10,287,705 4,189 0.04%
datasync-jvm.jar closure 10,301,724 10,297,535 4,189 0.04%
costexplorer-jvm.jar closure 10,315,180 10,310,991 4,189 0.04%
robomaker-jvm.jar closure 10,355,147 10,350,958 4,189 0.04%
workmail-jvm.jar closure 10,370,822 10,366,633 4,189 0.04%
resiliencehub-jvm.jar closure 10,377,752 10,373,563 4,189 0.04%
forecast-jvm.jar closure 10,389,142 10,384,953 4,189 0.04%
frauddetector-jvm.jar closure 10,413,848 10,409,659 4,189 0.04%
greengrass-jvm.jar closure 10,473,420 10,469,231 4,189 0.04%
eks-jvm.jar closure 10,499,061 10,494,872 4,189 0.04%
personalize-jvm.jar closure 10,503,691 10,499,502 4,189 0.04%
wellarchitected-jvm.jar closure 10,558,512 10,554,323 4,189 0.04%
storagegateway-jvm.jar closure 10,640,984 10,636,795 4,189 0.04%
computeoptimizer-jvm.jar closure 10,686,158 10,681,969 4,189 0.04%
emr-jvm.jar closure 10,720,029 10,715,840 4,189 0.04%
chimesdkvoice-jvm.jar closure 10,725,421 10,721,232 4,189 0.04%
appmesh-jvm.jar closure 10,769,814 10,765,625 4,189 0.04%
appflow-jvm.jar closure 10,843,890 10,839,701 4,189 0.04%
qbusiness-jvm.jar closure 10,857,171 10,852,982 4,189 0.04%
mgn-jvm.jar closure 10,881,209 10,877,020 4,189 0.04%
proton-jvm.jar closure 10,904,529 10,900,340 4,189 0.04%
backup-jvm.jar closure 10,909,583 10,905,394 4,189 0.04%
neptune-jvm.jar closure 10,928,447 10,924,258 4,189 0.04%
lambda-jvm.jar closure 10,939,911 10,935,722 4,189 0.04%
servicecatalog-jvm.jar closure 10,960,101 10,955,912 4,189 0.04%
clouddirectory-jvm.jar closure 10,987,994 10,983,805 4,189 0.04%
fsx-jvm.jar closure 11,016,733 11,012,544 4,189 0.04%
networkmanager-jvm.jar closure 11,083,638 11,079,449 4,189 0.04%
opensearch-jvm.jar closure 11,095,631 11,091,442 4,189 0.04%
omics-jvm.jar closure 11,150,582 11,146,393 4,189 0.04%
sesv2-jvm.jar closure 11,214,727 11,210,538 4,189 0.04%
bedrockagent-jvm.jar closure 11,270,033 11,265,844 4,189 0.04%
imagebuilder-jvm.jar closure 11,316,657 11,312,468 4,189 0.04%
workspaces-jvm.jar closure 11,334,198 11,330,009 4,189 0.04%
pinpointsmsvoicev2-jvm.jar closure 11,346,236 11,342,047 4,189 0.04%
wafv2-jvm.jar closure 11,350,450 11,346,261 4,189 0.04%
cleanrooms-jvm.jar closure 11,404,440 11,400,251 4,189 0.04%
comprehend-jvm.jar closure 11,569,914 11,565,725 4,189 0.04%
ec2-jvm.jar closure 35,687,241 35,674,401 12,840 0.04%
iotsitewise-jvm.jar closure 11,656,935 11,652,746 4,189 0.04%
macie2-jvm.jar closure 11,676,049 11,671,860 4,189 0.04%
cloudformation-jvm.jar closure 11,691,447 11,687,258 4,189 0.04%
guardduty-jvm.jar closure 11,772,225 11,768,036 4,189 0.04%
s3control-jvm.jar closure 11,919,928 11,915,739 4,189 0.04%
inspector2-jvm.jar closure 12,023,072 12,018,883 4,189 0.03%
iotwireless-jvm.jar closure 12,025,855 12,021,666 4,189 0.03%
kendra-jvm.jar closure 12,109,539 12,105,350 4,189 0.03%
deadline-jvm.jar closure 12,148,742 12,144,553 4,189 0.03%
codecommit-jvm.jar closure 12,227,809 12,223,620 4,189 0.03%
s3-jvm.jar closure 12,228,793 12,224,604 4,189 0.03%
datazone-jvm.jar closure 13,302,591 13,298,402 4,189 0.03%
chime-jvm.jar closure 13,455,609 13,451,420 4,189 0.03%
ec2-jvm.jar 27,806,665 27,798,014 8,651 0.03%
cloudfront-jvm.jar closure 13,807,527 13,803,338 4,189 0.03%
redshift-jvm.jar closure 13,825,987 13,821,798 4,189 0.03%
lexmodelsv2-jvm.jar closure 14,239,792 14,235,603 4,189 0.03%
mediaconvert-jvm.jar closure 14,401,005 14,396,816 4,189 0.03%
medialive-jvm.jar closure 15,704,767 15,700,578 4,189 0.03%
iot-jvm.jar closure 16,918,767 16,914,578 4,189 0.02%
connect-jvm.jar closure 18,433,543 18,429,354 4,189 0.02%
securityhub-jvm.jar closure 19,779,453 19,775,264 4,189 0.02%
quicksight-jvm.jar closure 25,627,800 25,623,611 4,189 0.02%
sagemaker-jvm.jar closure 26,530,502 26,526,313 4,189 0.02%
codestar-jvm.jar (does not exist) 684,567 -684,567 -100.00%
codestar-jvm.jar closure (does not exist) 8,560,954 -8,560,954 -100.00%

@0marperez 0marperez marked this pull request as ready for review August 23, 2024 15:57
@0marperez 0marperez requested a review from a team as a code owner August 23, 2024 15:57
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

opinion: I don't think we need a changelog entry here in aws-sdk-kotlin, it's not customer-facing

Comment on lines 26 to 33
private var hasSmokeTests = AtomicBoolean(false)

// Only used to access settings - will always be true
override fun enabledForService(model: Model, settings: KotlinSettings): Boolean {
hasSmokeTests.set(model.operations(settings.service).any { it.hasTrait<SmokeTestsTrait>() })
return super.enabledForService(model, settings)
}

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can access ctx.settings in generateGradleBuild, do you need this atomic boolean / enabledForService?

withBlock("compilations {", "}") {
write("val main = getByName(\"main\")")
withBlock("tasks {", "}") {
withBlock("register<Jar>(\"smokeTestJar\") {", "}") {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use #S instead of managing the quotes yourself

Comment on lines 97 to 99
tasks.register<Exec>("unstageServices") {
commandLine("git", "clean", "-fdx", "services")
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correctness: This is an unsafe command to use in a cleaning task because it cleans too much. For example, if a developer has added new files in services/ but not yet staged them, this will remove those files irretrievably.

As far as I can see, removing generated code as part of gg clean hasn't been necessary in any of our previous codegen. Why is it necessary now?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh I see, this task only cleans <sdk root dir>/tests/codegen/smoke-tests/services. That's the directory where the code-generated services for the E2E tests go. It doesn't clean the <sdk root dir>/services folder. I don't see a case where we should be writing any code there but I can see how it's unsafe. I added it as a QOL utility I guess. It's not necessary though so I can get rid of it.

smithyKotlinPlugin {
serviceShapeId = projection.serviceShapeId
packageName = "aws.sdk.kotlin.test.smoketests"
packageVersion = "1.0"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: We should version this properly

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With the SDK version? Is there a reason why? These projections are just for testing

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If config this is just for generated service clients from the smoke tests test suite then it doesn't matter. Disregard!

Comment on lines +62 to +68
// generated services by smoke tests - test suite
file("tests/codegen/smoke-tests/services").listFiles().forEach {
if (it.isServiceDir) {
include(":tests:codegen:smoke-tests:services:${it.name}")
}
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correctness: The tests/ modules are intended to test our own SDK-developed code. These smoke tests will actually be verifying model correctness, which is a slightly different scope and intent. Moreover, I believe we'll want to package these up and distribute them to test runners at some point, which is more reason for them not to live here.

Have we explored codegenning into the services/ modules directly? We don't have to include them in the main publication (so they're not included in our Maven Central artifacts) but we can create a new publication that would include them separately.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The actual smoke tests runners are being code-generated directly into the services module. The path is something like: <sdk root dir>/services/<relevant service>/generated-src-jvm/test/java/aws/sdk/kotlin/services/<relevant service>/smoketest/SmokeTests.kt. This block of code is for including the code-generated services that are meant for E2E testing into the project.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh I think I must've gotten confused by the word "services". So /tests/codegen/smoke-tests/services contains generated clients for the services defined in smoke-tests-failure.smithy and smoke-tests-success.smithy? Our other tests/ projects generate those into a build directory so they get cleaned automatically, don't get checked-in, etc. It also means that the set of loaded Gradle subprojects isn't changing dynamically.

For example, our event streams test project codegens the client, model, and serde files into tests/codegen/event-stream/build/smithyprojections/event-stream/restJson1/kotlin-codegen.

Can we do something similar here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So /tests/codegen/smoke-tests/services contains generated clients for the services defined in smoke-tests-failure.smithy and smoke-tests-success.smithy?

Yeah, that's right

For example, our event streams test project codegens the client, model, and serde files into tests/codegen/event-stream/build/smithyprojections/event-stream/restJson1/kotlin-codegen.

Can we do something similar here?

I don't think we can because the generated test services need to be inside a gradle project so we can run the gg smokeTest task. I'm not sure that we can run a gradle task from the build directory.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Our other codegen tests also need to be run after generating them. The event streams tests generate sources via our Smithy build plugin (which go into the build dir) and then add each of the generated client roots to the Kotlin source. Then, statically written tests can invoke the generated code.

It seems to me like a similar setup could work for the smoke tests: use Smithy build plugin (may require new options/tweaks to support smoke test codegen) to generate tests into the build dir and then invoke those tests in statically-written code.

One of my concerns here is repo hygene and consistency. We had to add new .gitignore entries for this which seems wrong. Maybe it's not and this is the best option but I'd like to at least verify this can't be done in a manner more similar to other codegenned tests.

Comment on lines 6 to 13
class SmokeTestE2ETest {
@Test
fun successService() {
val smokeTestRunnerOutput = runSmokeTests("successService")

assertContains(smokeTestRunnerOutput, "ok SuccessService SuccessTest - no error expected from service")
assertContains(smokeTestRunnerOutput, "ok SuccessService SuccessTestWithTags - no error expected from service")
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question: Are any of these tests SDK specific? Could they live in smithy-kotlin instead?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They're sort of SDK specific. The tests and infra around them mock the setup we have for copying directories from the smithy projections into the dedicated services folders. So mocking <sdk root dir>/services/<relevant service> but in <sdk root dir>/tests/codegen/smoke-tests/services/<relevant service> for our tests. This includes the gg smokeTest task that I created for the SDK repo and that is not available in smithy kotlin.

They also test the actual runner which doesn't need to be tested in the SDK but it's a lot easier to test here rather than in smithy kotlin. If we move the tests to smithy kotlin we would lose a lot of test coverage around all this SDK specific stuff I mentioned.

Copy link
Contributor

@ianbotsf ianbotsf Sep 16, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the setup we have for copying directories from the smithy projections into the dedicated services folders

Can you elaborate more? Is this setup defined in our smoke test generators or our manually-maintained build files?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The smoke tests integration from smithy kotlin writes the smoke test runner file to <relevant service smithy projection dir>/jvm-src/test/java/ and then the stageSdks task that we created moves the whole jvm-src directory into the <sdk root dir>/services/<relevant service>/generated-src-jvm directory.

This is also done for the regular service code generated code. I'm not sure where <relevant service smithy projection dir>/src is created but you can see where it is copied over to <sdk root dir>/services/<relevant service>/generated-src in the stageSdks task.

Comment on lines +9 to +31
@trait(selector: "service")
structure failedResponseTrait { }

@failedResponseTrait
@awsJson1_0
@service(sdkId: "Failure")
@endpointRuleSet(
version: "1.0",
parameters: {},
rules: [
{
"type": "endpoint",
"conditions": [],
"endpoint": {
"url": "https://static.endpoint"
}
}
]
)
service FailureService {
version: "1.0.0",
operations: [ TestOperation ],
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question: Were these model files copied or adapted from somewhere? If so, let's include a comment with a link back to them in case we ever need to refresh them. (If you wrote these from scratch then never mind!)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These were very loosely based on this example. I don't know if we need to keep up to date with it though, they're only very loosely based on the example. If something changes in the smithy syntax, then the E2E tests would probably break anyway. Do you feel like we should link that example? And do you have a reason in mind for why we should?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, we only need a link if it's something we think should be kept up-to-date with some source. Seems like that's not necessary here so never mind.

Comment on lines 85 to 93
private fun generateSmokeTestConfig(writer: GradleWriter, sdkId: String, ctx: CodegenContext) {
val formattedDenyList = smokeTestDenyList.joinToString(",", "setOf(", ")") { it.dq() }
writer.withBlock("if (#S !in #L) {", "}", sdkId, formattedDenyList) {
generateSmokeTestJarTask(writer, ctx)
emptyLine()
generateSmokeTestTask(writer, ctx)
}
}

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have the sdkId and the smokeTestDenyList at codegen time, can't we skip generating a smoke test here in codegen instead of doing a runtime check?

val hasSuccessResponseTrait = ctx.model.expectShape<ServiceShape>(ctx.settings.service).hasTrait(SuccessResponseTrait.ID)
val hasFailedResponseTrait = ctx.model.expectShape<ServiceShape>(ctx.settings.service).hasTrait(FailedResponseTrait.ID)

// E2E tests don't have sdkVersion in jar names
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you describe this more? Why is there a difference if we're in a testing environment or not?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The regular environment would be <sdk root dir>/services/<relevant service>/build/libs that's where the JARs are. I noticed that even though I'm setting the JAR name for the smoke test runner to <relevant service>-smoketestshere, something in the SDK would later add the SDK version to the end of it. So it would turn the JAR name into <relevant service>-smoketests-<SDK version>.

I didn't find what's doing that but it's not happening in the E2E test environment. I tried replicating it with gradle tasks but I had a really hard time trying to do so. Do you know about anything that might be adding the SDK version to the JAR names?

Comment on lines +29 to +31
/**
* SDK ID's of services that model smoke tests incorrectly
*/
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Were you able to open issues with the services / Smithy team to track the deny list? This will likely help other SDKs that implement this in the coming months

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still need to writes these up but I'll make sure to do so before I'm done with this task

@0marperez 0marperez added the no-changelog Indicates that a changelog entry isn't required for a pull request. Use sparingly. label Sep 18, 2024
Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

A new generated diff is ready to view.

Copy link

sonarcloud bot commented Sep 21, 2024

Copy link

A new generated diff is ready to view.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
no-changelog Indicates that a changelog entry isn't required for a pull request. Use sparingly.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants