This PR introduces a custom model (Aspire.Hosting.Azure.ServiceBus.ApplicationModel) to configure the emulator, and the cloud service. There is another branch that was based on the CDK directly (and use it for the emulator JSON too) but some discussions led to create a custom, simplified one (not really simplified here for the sake of understanding limits), that is then converted to JSON for the emulator, and to CDK resources for provisioning. If the model is not sufficient (can be on purpose to limit it to what users use in most cases) then the emulator configuration can be defined in JSON directly via WithConfigJson, and the CDK resources can be enhanced with the existing ConfigureInfrastructure.
Fixes # (issue)
Checklist
Is this feature complete?
[ ] Yes. Ready to ship.
[x] No. Follow-up changes expected.
Are you including unit tests for the changes and scenario tests if relevant?
[ ] Yes
[x] No
Did you add public API?
[x] Yes
If yes, did you have an API Review for it?
[ ] Yes
[x] No
Did you add <remarks /> and <code /> elements on your triple slash comments?
[x] Yes
[ ] No
[ ] No
Does the change make any security assumptions or guarantees?
[ ] Yes
If yes, have you done a threat model and had a security review?
[ ] Yes
[ ] No
[x] No
Does the change require an update in our Aspire docs?
Description
Add support for the Service Bus emulator https://techcommunity.microsoft.com/blog/messagingonazureblog/introducing-local-emulator-for-azure-service-bus/4304457
This PR introduces a custom model (
Aspire.Hosting.Azure.ServiceBus.ApplicationModel
) to configure the emulator, and the cloud service. There is another branch that was based on the CDK directly (and use it for the emulator JSON too) but some discussions led to create a custom, simplified one (not really simplified here for the sake of understanding limits), that is then converted to JSON for the emulator, and to CDK resources for provisioning. If the model is not sufficient (can be on purpose to limit it to what users use in most cases) then the emulator configuration can be defined in JSON directly viaWithConfigJson
, and the CDK resources can be enhanced with the existingConfigureInfrastructure
.Fixes # (issue)
Checklist
<remarks />
and<code />
elements on your triple slash comments?Does the change require an update in our Aspire docs?
breaking-change
template):doc-idea
template):Microsoft Reviewers: Open in CodeFlow