This package is used to build each client in the SDK.
By running ./gradlew :sdk-codegen:build, this package will:
-
Scan the
sdk-codegendirectory for JSON files. Each file is a standalone model that represents a service to generate. -
Generate a
smithy-build.jsonfile.- For each model, a projection is created that uses the filename without ".json" as the name of the projection.
- An
importsvalue is added that imports the file. - The
typescript-codegenplugin is applied. Thepackagevalue is set to@aws-sdk/client-+ the first dot (.) segment of the filename converted to lowercase (this segment is also the AWS SDK service ID).
-
Runs the
software.amazon.smithy.gradle.tasks.SmithyBuildGradle task to generate artifacts for each service model. Artifacts for each model are written tocodegen/sdk-codegen/build/smithyprojections/sdk-codegen/{filename}/typescript-codegenwhere{filename}is the relative filename of a model without ".json". For example,codegen/sdk-codegen/build/smithyprojections/sdk-codegen/RDS-Data.2018-08-01/typescript-codegenwould contain the code generated foraws-models/RDS-Data.2018-08-01.json.
-
Run
./gradlew :sdk-codegen:cleanto run clean task -
Run
./gradlew --stopto stop the gradle daemon