Skip to content

Conversation

@eerhardt
Copy link
Member

@eerhardt eerhardt commented Mar 27, 2024

Backport of #2870 to release/8.0-preview5

Customer Impact

Customers can easily use Azure Event Hubs in their .NET Aspire apps.

Testing

I manually verified the playground app was able to be provisioned at runtime. More automated tests are coming.

Risk

Low, this is just a new component that doesn't affect any other piece of the stack.

Microsoft Reviewers: Open in CodeFlow

* initial commit for event hubs component and resource (non-functional, but skeleton is there)

* corrected roledefinition

* added consumer client (now have producer, consumer and processor components); modified davidfowl's demo EH project to use new resources and components; bugfixes;

* fixes for processor client; updated build props/targets for playground project

* Update AzureEventHubsExtensions.cs

No need to construct this (we recently changed this in the others).

* some minor refactoring of processor client; made playground project more robust

* address review items; automatically generate processor identifier from hub and consumergroup; add more comments; minor refactoring

* Update src/Aspire.Hosting.Azure/Extensions/AzureEventHubsExtensions.cs

Co-authored-by: Jesse Squire <[email protected]>

* Update src/Aspire.Hosting.Azure/Extensions/AzureEventHubsExtensions.cs

Co-authored-by: Jesse Squire <[email protected]>

* update EH endpoint references to use eventHubsEndpoint instead of serviceBusEndpoint; beef up processor identifier naming.

* add ability to configure credential for azure provisioner (removed my hack); added first batch of documentation for component; added partitionreceiver component.

* Update src/Components/Aspire.Azure.Messaging.EventHubs/AzureMessagingEventHubsSettings.cs

Co-authored-by: Jesse Squire <[email protected]>

* remove azure provisioner credential configuration stuff (will go into separate PR)

* address review points; refactor namespace parsing into base eh component

* fix package tags and add new icon to shared

* remove providercredential reference from config

* fix some more errant service bus mentions and regenerate configurationschema

* fix xmlcomment on settings

* remove azure section from sample config

* update components README.md

* delete EH playground readme

* minor edits for clarification

* port ASB connection/namespace tests; rewrite validation logic to be more robust

* Update playground/AspireEventHub/EventHubs.AppHost/EventHubs.AppHost.csproj

Co-authored-by: Eric Erhardt <[email protected]>

* Update playground/AspireEventHub/EventHubsConsumer/EventHubsConsumer.csproj

Co-authored-by: Eric Erhardt <[email protected]>

* Update src/Aspire.Hosting.Azure.EventHubs/Aspire.Hosting.Azure.EventHubs.csproj

Co-authored-by: Eric Erhardt <[email protected]>

* generate aspire manifest etc for EH sample

* moved processor Start code into Execute for worker sample

* fixed another ref to service bus

* refine checkpoint blob container creation logic to avoid unnecessary permission demand if we can

* enhance logic for blob checkpoint container; add BlobContainerName to settings as an option

* persist checkpoints in processor sample for EH

* renamed settings class in tests to match AEH; was ASB.

* Fix Tracing with EventHubs
Update Telemetry and Components Progress docs
Minor cleanup feedback

* refactor EH client settings into individual classes

* Add readme for EH hosting

* Fix build

* Address PR feedback

- Remove unnecessary Directory.Packages.props entry
- Fix ConfigurationSchema.json to match implementation
- StringComparison.Ordinal is unnecessary when looking for a char

---------

Co-authored-by: Mitch Denny <[email protected]>
Co-authored-by: Jesse Squire <[email protected]>
Co-authored-by: Eric Erhardt <[email protected]>
@ghost ghost added the area-integrations Issues pertaining to Aspire Integrations packages label Mar 27, 2024
param principalType string


resource storageAccount_X1L2R0Ykm 'Microsoft.Storage/storageAccounts@2022-09-01' = {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not an issue but that's a weird variable name. Or do these resources need to be unique for a whole deployment?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe they are generated by the Azure CDK.

@davidfowl davidfowl merged commit cb1a47b into dotnet:release/8.0-preview5 Mar 27, 2024
@danmoseley danmoseley mentioned this pull request Apr 12, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Apr 27, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-integrations Issues pertaining to Aspire Integrations packages

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants