-
Notifications
You must be signed in to change notification settings - Fork 799
Add AspireExport attributes to Aspire.Hosting.RabbitMQ #14433
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
base: main
Are you sure you want to change the base?
Conversation
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/dotnet/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 14433Or
iex "& { $(irm https://raw.githubusercontent.com/dotnet/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 14433" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Adds ATS export metadata to Aspire.Hosting.RabbitMQ extension methods so they’re available to the polyglot (TypeScript) code generator, and introduces a TypeScript ValidationAppHost to exercise the generated API surface.
Changes:
- Added
[AspireExport]attributes to 5 public RabbitMQ builder extension methods. - Added a new TypeScript ValidationAppHost (tsconfig/package files + apphost) for RabbitMQ polyglot validation.
Reviewed changes
Copilot reviewed 6 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/Aspire.Hosting.RabbitMQ/RabbitMQBuilderExtensions.cs | Exposes RabbitMQ extension methods to ATS/polyglot via [AspireExport]. |
| playground/polyglot/TypeScript/Aspire.Hosting.RabbitMQ/ValidationAppHost/tsconfig.json | TypeScript compiler configuration for the validation apphost. |
| playground/polyglot/TypeScript/Aspire.Hosting.RabbitMQ/ValidationAppHost/package.json | NPM project definition for the validation apphost. |
| playground/polyglot/TypeScript/Aspire.Hosting.RabbitMQ/ValidationAppHost/package-lock.json | Locked JS dependencies for reproducible validation runs. |
| playground/polyglot/TypeScript/Aspire.Hosting.RabbitMQ/ValidationAppHost/apphost.ts | Validation apphost exercising exported RabbitMQ capabilities. |
| playground/polyglot/TypeScript/Aspire.Hosting.RabbitMQ/ValidationAppHost/apphost.run.json | Run profile configuration for the validation apphost. |
| playground/polyglot/TypeScript/Aspire.Hosting.RabbitMQ/ValidationAppHost/.aspire/settings.json | Polyglot AppHost settings (language/sdk/packages/channel). |
Files not reviewed (1)
- playground/polyglot/TypeScript/Aspire.Hosting.RabbitMQ/ValidationAppHost/package-lock.json: Language not supported
| { | ||
| "appHostPath": "../apphost.ts", | ||
| "language": "typescript/nodejs", | ||
| "channel": "local", |
Copilot
AI
Feb 10, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
channel is set to "local", but the CLI channel names are expected to be values like default, stable, staging, daily, or pr-*. Using an unrecognized channel can break aspire add / package resolution in this ValidationAppHost directory. Consider changing this to default (or removing the property to fall back to defaults), or setting it to an existing pr-* channel if this apphost is meant to track a PR hive.
| "channel": "local", | |
| "channel": "default", |
🎬 CLI E2E Test RecordingsThe following terminal recordings are available for commit
📹 Recordings uploaded automatically from CI run #21878666296 |
Summary
Adds
[AspireExport]attributes to all public extension methods inAspire.Hosting.RabbitMQto enable polyglot (TypeScript) support.Exported Methods
AddRabbitMQaddRabbitMQWithDataVolumewithDataVolumeWithDataBindMountwithDataBindMountWithManagementPlugin()withManagementPluginWithManagementPlugin(int?)withManagementPluginWithPortValidation
npx tsc --noEmitcompiles successfullyChanges
src/Aspire.Hosting.RabbitMQ/RabbitMQBuilderExtensions.cs— Added[AspireExport]to 5 public extension methodsplayground/polyglot/TypeScript/Aspire.Hosting.RabbitMQ/ValidationAppHost/— TypeScript validation app host