-
Notifications
You must be signed in to change notification settings - Fork 510
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
Aspire Client Integrations util project #6999
base: main
Are you sure you want to change the base?
Conversation
Thank you for making this proposal, @aaronpowell. We intentionally haven't made a "common"/"util" project for client integrations.
Looking over the proposed APIs, the 2 attributes: If you remove those 2 files, what's left is just 2 APIs - ValidateConnectionString (roughly 5 lines of code) and TryAddHealthCheck (roughly 5 lines of code over 2 methods). I'm not sure this justifies creating and maintaining a new library. Would it be OK to just copy those files into the CommunityToolkit? |
We already copy across the If we move those attributes across to the ConfigSchemaGenerator project, won't we be needing to create a reference to it in the client projects? Or is it less of a concern because it's got a more obvious use case? As an aside, why is it failing to build the newly added project? I want to add a new project to tackle the testing items noted in #6807 but it hit the same problem and I don't know how to fix it. |
The reference will won't be visiable to consumers of the client integration packages. We will use a "PrivateAssets" PackageReference, since the ConfigSchemaGenerator project will only be needed while building the client integration library.
You need to set |
Description
To address part of #6807 I've created a new project for client integrations to reference,
Aspire.Client
, that contains the shared code for health checks, connection string validation and generating config schemas (which would start to unblock #3309). This would result in a new NuGet package being shipped that all client integrations would reference (at least, those in the Aspire repo would reference).The PR contains the new project, and the refactoring required to remove the shared files and update the references.
I think there's an additional step that I need to do for the new project to build, since it's reporting that it's not part of any NuGet feeds. There may also need to be some updates to either the
Package.targets
orsrc/Components/Directory.Build.targets
to skip the step that tries to generate the config schema JSON file (since it's not relevant here).Checklist
<remarks />
and<code />
elements on your triple slash comments?breaking-change
template):doc-idea
template):Microsoft Reviewers: Open in CodeFlow