Skip to content

Add APIs to load a model from a build config#3135

Open
kstich wants to merge 1 commit into
mainfrom
dev/kstich/add-smithy-build-config-model-assembler
Open

Add APIs to load a model from a build config#3135
kstich wants to merge 1 commit into
mainfrom
dev/kstich/add-smithy-build-config-model-assembler

Conversation

@kstich
Copy link
Copy Markdown
Contributor

@kstich kstich commented May 16, 2026

Tools that consume Smithy models via smithy-build have to either shell out to CLI or reimplement SmithyBuildImpl#createBaseModel.

To improve this, SmithyBuildConfig gets toModelAssembler that prepares a ModelAssembler with the config's sources and imports. SmithyBuild gets toProjectedModel that assembles and projects the model in one step, returning the requested projection. Plugins are skipped and the run config is so that unknown transforms or missing plugins in unrelated projections do not block the call.

Resolves #2292


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

Tools that consume Smithy models via smithy-build have to either
shell out to CLI or reimplement `SmithyBuildImpl#createBaseModel`.

To improve this, `SmithyBuildConfig` gets `toModelAssembler` that
prepares a `ModelAssembler` with the config's sources and imports.
`SmithyBuild` gets `toProjectedModel` that assembles and projects the
model in one step, returning the requested projection. Plugins are
skipped and the run config is so that unknown transforms or missing
plugins in unrelated projections do not block the call.
@kstich kstich requested a review from a team as a code owner May 16, 2026 05:57
@kstich kstich requested a review from joewyz May 16, 2026 05:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature request: SmithyBuildConfig -> Model utility

2 participants