Skip to content

Commit cfcdeb6

Browse files
authored
feat(codegen): move source files to 'src' folder (#2844)
1 parent 38bb6c3 commit cfcdeb6

File tree

15 files changed

+153
-138
lines changed

15 files changed

+153
-138
lines changed

Diff for: .gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ codegen/sdk-codegen/smithy-build.json
3838

3939
coverage
4040
dist
41+
dist-*
4142

4243
/verdaccio/*
4344
!/verdaccio/config.yaml

Diff for: codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/AddAwsAuthPlugin.java

+5-4
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
import software.amazon.smithy.model.shapes.ServiceShape;
3838
import software.amazon.smithy.model.shapes.Shape;
3939
import software.amazon.smithy.model.traits.OptionalAuthTrait;
40+
import software.amazon.smithy.typescript.codegen.CodegenUtils;
4041
import software.amazon.smithy.typescript.codegen.LanguageTarget;
4142
import software.amazon.smithy.typescript.codegen.TypeScriptDependency;
4243
import software.amazon.smithy.typescript.codegen.TypeScriptSettings;
@@ -179,7 +180,7 @@ public Map<String, Consumer<TypeScriptWriter>> getRuntimeConfigWriters(
179180
AwsDependency.STS_CLIENT.packageName);
180181
} else {
181182
writer.addImport("decorateDefaultCredentialProvider", "decorateDefaultCredentialProvider",
182-
"./" + STS_ROLE_ASSUMERS_FILE);
183+
"./" + CodegenUtils.SOURCE_FOLDER + "/" + STS_ROLE_ASSUMERS_FILE);
183184
}
184185
writer.addDependency(AwsDependency.CREDENTIAL_PROVIDER_NODE);
185186
writer.addImport("defaultProvider", "credentialDefaultProvider",
@@ -206,19 +207,19 @@ public void writeAdditionalFiles(
206207
String noTouchNoticePrefix = "// Please do not touch this file. It's generated from template in:\n"
207208
+ "// https://github.com/aws/aws-sdk-js-v3/blob/main/codegen/smithy-aws-typescript-codegen/"
208209
+ "src/main/resources/software/amazon/smithy/aws/typescript/codegen/";
209-
writerFactory.accept("defaultRoleAssumers.ts", writer -> {
210+
writerFactory.accept(CodegenUtils.SOURCE_FOLDER + "/defaultRoleAssumers.ts", writer -> {
210211
String resourceName = String.format("%s%s.ts", STS_CLIENT_PREFIX, ROLE_ASSUMERS_FILE);
211212
String source = IoUtils.readUtf8Resource(getClass(), resourceName);
212213
writer.write("$L$L", noTouchNoticePrefix, resourceName);
213214
writer.write("$L", source);
214215
});
215-
writerFactory.accept("defaultStsRoleAssumers.ts", writer -> {
216+
writerFactory.accept(CodegenUtils.SOURCE_FOLDER + "/defaultStsRoleAssumers.ts", writer -> {
216217
String resourceName = String.format("%s%s.ts", STS_CLIENT_PREFIX, STS_ROLE_ASSUMERS_FILE);
217218
String source = IoUtils.readUtf8Resource(getClass(), resourceName);
218219
writer.write("$L$L", noTouchNoticePrefix, resourceName);
219220
writer.write("$L", source);
220221
});
221-
writerFactory.accept("defaultRoleAssumers.spec.ts", writer -> {
222+
writerFactory.accept("test/defaultRoleAssumers.spec.ts", writer -> {
222223
String resourceName = String.format("%s%s.ts", STS_CLIENT_PREFIX, ROLE_ASSUMERS_TEST_FILE);
223224
String source = IoUtils.readUtf8Resource(getClass(), resourceName);
224225
writer.write("$L$L", noTouchNoticePrefix, resourceName);

Diff for: codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/AwsEndpointGeneratorIntegration.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import java.util.function.Consumer;
2424
import software.amazon.smithy.codegen.core.SymbolProvider;
2525
import software.amazon.smithy.model.Model;
26+
import software.amazon.smithy.typescript.codegen.CodegenUtils;
2627
import software.amazon.smithy.typescript.codegen.LanguageTarget;
2728
import software.amazon.smithy.typescript.codegen.TypeScriptDependency;
2829
import software.amazon.smithy.typescript.codegen.TypeScriptSettings;
@@ -47,7 +48,7 @@ public void writeAdditionalFiles(
4748
return;
4849
}
4950

50-
writerFactory.accept("endpoints.ts", writer -> {
51+
writerFactory.accept(CodegenUtils.SOURCE_FOLDER + "/endpoints.ts", writer -> {
5152
new EndpointGenerator(settings.getService(model), writer).run();
5253
});
5354
}
@@ -83,7 +84,8 @@ public Map<String, Consumer<TypeScriptWriter>> getRuntimeConfigWriters(
8384
switch (target) {
8485
case SHARED:
8586
return MapUtils.of("regionInfoProvider", writer -> {
86-
writer.addImport("defaultRegionInfoProvider", "defaultRegionInfoProvider", "./endpoints");
87+
writer.addImport("defaultRegionInfoProvider", "defaultRegionInfoProvider",
88+
"./" + CodegenUtils.SOURCE_FOLDER + "/endpoints");
8789
writer.write("defaultRegionInfoProvider");
8890
});
8991
default:

Diff for: codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/AwsServiceIdIntegration.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,8 @@ private static Symbol updateServiceSymbol(Symbol symbol, String serviceId) {
6565
.collect(Collectors.joining("")) + "Client";
6666
return symbol.toBuilder()
6767
.name(name)
68-
.namespace("./" + name, "/")
69-
.definitionFile(name + ".ts")
68+
.namespace("./src/" + name, "/")
69+
.definitionFile("./src/" + name + ".ts")
7070
.build();
7171
}
7272
}

Diff for: codegen/smithy-aws-typescript-codegen/src/main/resources/software/amazon/smithy/aws/typescript/codegen/gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
/build/
33
/coverage/
44
/docs/
5-
/dist/
5+
/dist-*
66
*.tsbuildinfo
77
*.tgz
88
*.log

Diff for: codegen/smithy-aws-typescript-codegen/src/main/resources/software/amazon/smithy/aws/typescript/codegen/sts-client-defaultRoleAssumers.spec.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,11 @@ jest.mock("@aws-sdk/node-http-handler", () => ({
1515
streamCollector: jest.fn(),
1616
}));
1717

18-
import { getDefaultRoleAssumer, getDefaultRoleAssumerWithWebIdentity } from "./defaultRoleAssumers";
19-
import type { AssumeRoleCommandInput } from "./commands/AssumeRoleCommand";
2018
import { NodeHttpHandler, streamCollector } from "@aws-sdk/node-http-handler";
21-
import { AssumeRoleWithWebIdentityCommandInput } from "./commands/AssumeRoleWithWebIdentityCommand";
19+
20+
import type { AssumeRoleCommandInput } from "../src/commands/AssumeRoleCommand";
21+
import { AssumeRoleWithWebIdentityCommandInput } from "../src/commands/AssumeRoleWithWebIdentityCommand";
22+
import { getDefaultRoleAssumer, getDefaultRoleAssumerWithWebIdentity } from "../src/defaultRoleAssumers";
2223
const mockConstructorInput = jest.fn();
2324
jest.mock("./STSClient", () => ({
2425
STSClient: function (params: any) {

Diff for: codegen/smithy-aws-typescript-codegen/src/test/java/software/amazon/smithy/aws/typescript/codegen/AddAwsAuthPluginTest.java

+22-21
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import software.amazon.smithy.build.PluginContext;
1010
import software.amazon.smithy.model.Model;
1111
import software.amazon.smithy.model.node.Node;
12+
import software.amazon.smithy.typescript.codegen.CodegenUtils;
1213
import software.amazon.smithy.typescript.codegen.TypeScriptCodegenPlugin;
1314

1415
public class AddAwsAuthPluginTest {
@@ -37,18 +38,18 @@ public void awsClient() {
3738
containsString(AwsDependency.CREDENTIAL_PROVIDER_NODE.packageName));
3839

3940
// Check config interface fields
40-
assertThat(manifest.getFileString("NotSameClient.ts").get(), containsString("credentialDefaultProvider?"));
41-
assertThat(manifest.getFileString("NotSameClient.ts").get(), not(containsString("signingName")));
41+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/NotSameClient.ts").get(), containsString("credentialDefaultProvider?"));
42+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/NotSameClient.ts").get(), not(containsString("signingName")));
4243

4344
// Check config files
44-
assertThat(manifest.getFileString("runtimeConfig.ts").get(),
45+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.ts").get(),
4546
containsString("decorateDefaultCredentialProvider"));
46-
assertThat(manifest.getFileString("runtimeConfig.browser.ts").get(), containsString("Credential is missing"));
47-
assertThat(manifest.getFileString("runtimeConfig.shared.ts").get(), not(containsString("signingName:")));
47+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.browser.ts").get(), containsString("Credential is missing"));
48+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.shared.ts").get(), not(containsString("signingName:")));
4849

4950
// Check the config resolution and middleware plugin
50-
assertThat(manifest.getFileString("NotSameClient.ts").get(), containsString("resolveAwsAuthConfig"));
51-
assertThat(manifest.getFileString("NotSameClient.ts").get(), containsString("getAwsAuthPlugin"));
51+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/NotSameClient.ts").get(), containsString("resolveAwsAuthConfig"));
52+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/NotSameClient.ts").get(), containsString("getAwsAuthPlugin"));
5253
}
5354

5455
@Test
@@ -76,18 +77,18 @@ public void sigV4GenericClient() {
7677
containsString(AwsDependency.CREDENTIAL_PROVIDER_NODE.packageName));
7778

7879
// Check config interface fields
79-
assertThat(manifest.getFileString("SsdkExampleSigV4Client.ts").get(), containsString("credentialDefaultProvider?"));
80-
assertThat(manifest.getFileString("SsdkExampleSigV4Client.ts").get(), containsString("signingName?"));
80+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleSigV4Client.ts").get(), containsString("credentialDefaultProvider?"));
81+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleSigV4Client.ts").get(), containsString("signingName?"));
8182

8283
// Check config files
83-
assertThat(manifest.getFileString("runtimeConfig.ts").get(),
84+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.ts").get(),
8485
containsString("decorateDefaultCredentialProvider"));
85-
assertThat(manifest.getFileString("runtimeConfig.browser.ts").get(), containsString("Credential is missing"));
86-
assertThat(manifest.getFileString("runtimeConfig.shared.ts").get(), containsString("signingName:"));
86+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.browser.ts").get(), containsString("Credential is missing"));
87+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.shared.ts").get(), containsString("signingName:"));
8788

8889
// Check the config resolution and middleware plugin
89-
assertThat(manifest.getFileString("SsdkExampleSigV4Client.ts").get(), containsString("resolveSigV4AuthConfig"));
90-
assertThat(manifest.getFileString("SsdkExampleSigV4Client.ts").get(), containsString("getSigV4AuthPlugin"));
90+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleSigV4Client.ts").get(), containsString("resolveSigV4AuthConfig"));
91+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleSigV4Client.ts").get(), containsString("getSigV4AuthPlugin"));
9192
}
9293

9394
@Test
@@ -115,17 +116,17 @@ public void notSigV4GenericClient() {
115116
not(containsString(AwsDependency.CREDENTIAL_PROVIDER_NODE.packageName)));
116117

117118
// Check config interface fields
118-
assertThat(manifest.getFileString("SsdkExampleClient.ts").get(), not(containsString("credentialDefaultProvider?")));
119-
assertThat(manifest.getFileString("SsdkExampleClient.ts").get(), not(containsString("signingName?")));
119+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleClient.ts").get(), not(containsString("credentialDefaultProvider?")));
120+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleClient.ts").get(), not(containsString("signingName?")));
120121

121122
// Check config files
122-
assertThat(manifest.getFileString("runtimeConfig.ts").get(),
123+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.ts").get(),
123124
not(containsString("decorateDefaultCredentialProvider")));
124-
assertThat(manifest.getFileString("runtimeConfig.browser.ts").get(), not(containsString("Credential is missing")));
125-
assertThat(manifest.getFileString("runtimeConfig.shared.ts").get(), not(containsString("signingName:")));
125+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.browser.ts").get(), not(containsString("Credential is missing")));
126+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.shared.ts").get(), not(containsString("signingName:")));
126127

127128
// Check the config resolution and middleware plugin
128-
assertThat(manifest.getFileString("SsdkExampleClient.ts").get(), not(containsString("resolveSigV4AuthConfig")));
129-
assertThat(manifest.getFileString("SsdkExampleClient.ts").get(), not(containsString("resolveAwsV4AuthConfig")));
129+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleClient.ts").get(), not(containsString("resolveSigV4AuthConfig")));
130+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleClient.ts").get(), not(containsString("resolveAwsV4AuthConfig")));
130131
}
131132
}

Diff for: codegen/smithy-aws-typescript-codegen/src/test/java/software/amazon/smithy/aws/typescript/codegen/AddAwsRuntimeConfigTest.java

+16-15
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import software.amazon.smithy.build.PluginContext;
1010
import software.amazon.smithy.model.Model;
1111
import software.amazon.smithy.model.node.Node;
12+
import software.amazon.smithy.typescript.codegen.CodegenUtils;
1213
import software.amazon.smithy.typescript.codegen.TypeScriptCodegenPlugin;
1314
import software.amazon.smithy.typescript.codegen.TypeScriptDependency;
1415

@@ -40,13 +41,13 @@ public void awsClient() {
4041
containsString(TypeScriptDependency.CONFIG_RESOLVER.packageName));
4142

4243
// Check config interface fields
43-
assertThat(manifest.getFileString("NotSameClient.ts").get(), containsString("serviceId?:"));
44-
assertThat(manifest.getFileString("NotSameClient.ts").get(), containsString("region?:"));
44+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/NotSameClient.ts").get(), containsString("serviceId?:"));
45+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/NotSameClient.ts").get(), containsString("region?:"));
4546

4647
// Check config files
47-
assertThat(manifest.getFileString("runtimeConfig.shared.ts").get(), containsString("serviceId: config?.serviceId ?? \"Not Same\""));
48-
assertThat(manifest.getFileString("runtimeConfig.browser.ts").get(), containsString("region: config?.region ?? invalidProvider"));
49-
assertThat(manifest.getFileString("runtimeConfig.ts").get(), containsString("region: config?.region ?? loadNodeConfig"));
48+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.shared.ts").get(), containsString("serviceId: config?.serviceId ?? \"Not Same\""));
49+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.browser.ts").get(), containsString("region: config?.region ?? invalidProvider"));
50+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.ts").get(), containsString("region: config?.region ?? loadNodeConfig"));
5051
}
5152

5253
@Test
@@ -76,13 +77,13 @@ public void sigV4GenericClient() {
7677
containsString(TypeScriptDependency.CONFIG_RESOLVER.packageName));
7778

7879
// Check config interface fields
79-
assertThat(manifest.getFileString("SsdkExampleSigV4Client.ts").get(), not(containsString("serviceId?:")));
80-
assertThat(manifest.getFileString("SsdkExampleSigV4Client.ts").get(), containsString("region?:"));
80+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleSigV4Client.ts").get(), not(containsString("serviceId?:")));
81+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleSigV4Client.ts").get(), containsString("region?:"));
8182

8283
// Check config files
83-
assertThat(manifest.getFileString("runtimeConfig.shared.ts").get(), not(containsString("serviceId:")));
84-
assertThat(manifest.getFileString("runtimeConfig.browser.ts").get(), containsString("region: config?.region ?? invalidProvider"));
85-
assertThat(manifest.getFileString("runtimeConfig.ts").get(), containsString("region: config?.region ?? loadNodeConfig"));
84+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.shared.ts").get(), not(containsString("serviceId:")));
85+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.browser.ts").get(), containsString("region: config?.region ?? invalidProvider"));
86+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.ts").get(), containsString("region: config?.region ?? loadNodeConfig"));
8687
}
8788

8889
@Test
@@ -112,12 +113,12 @@ public void notSigV4GenericClient() {
112113
containsString(TypeScriptDependency.CONFIG_RESOLVER.packageName));
113114

114115
// Check config interface fields
115-
assertThat(manifest.getFileString("SsdkExampleClient.ts").get(), not(containsString("serviceId?:")));
116-
assertThat(manifest.getFileString("SsdkExampleClient.ts").get(), not(containsString("region?:")));
116+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleClient.ts").get(), not(containsString("serviceId?:")));
117+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/SsdkExampleClient.ts").get(), not(containsString("region?:")));
117118

118119
// Check config files
119-
assertThat(manifest.getFileString("runtimeConfig.shared.ts").get(), not(containsString("serviceId:")));
120-
assertThat(manifest.getFileString("runtimeConfig.browser.ts").get(), not(containsString("region:")));
121-
assertThat(manifest.getFileString("runtimeConfig.ts").get(), not(containsString("region:")));
120+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.shared.ts").get(), not(containsString("serviceId:")));
121+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.browser.ts").get(), not(containsString("region:")));
122+
assertThat(manifest.getFileString(CodegenUtils.SOURCE_FOLDER + "/runtimeConfig.ts").get(), not(containsString("region:")));
122123
}
123124
}

0 commit comments

Comments
 (0)