* Add kafka eventbus to Catalog, Ordering and Payment.
Only catalog is confirmed to work, I think the ordering background
service and payment are still subscribing to rabbitMQ for some reason
(needs more investigation)
* Fix kafka consumer group ids.
* Fix build problems (duplicate package + lower version)
All services seem to use Kafka now, but it seems like
kafka takes to long to start up and the services
fail to connect to the borkers (either we have to do
retries similar like rabbitmq) or we are going to
enforce the execution order in docker compose by
using something like healthchecks.
* Add kafka broker dependency for other services.
Still have bug in eventBus subscription because
for example the ordering service should
handle a UserCheckoutAccepted event put it does have
no subscription for it when such an event is
published to the Kafka topic:
```
src-ordering-api-1 | [15:04:42 WRN] No subscription for Kafka event: UserCheckoutAccepted
src-ordering-api-1 | Consumed event: UserCheckoutAccepted
src-ordering-api-1 | Content: 632B63DB0CE145D499FE01904F76A475
```
* Add logging for subscription manager problem.
Seems like the subscription manager is not used
correctly in the kafka eventbus (two different objects?).
* add printing handlers
* actually trigger printing handlers
* add kafkapersistentconnection registration
* Revert "add kafkapersistentconnection registration"
This reverts commit 704ee3e36f09f3f3ad48057de31996654a8e3894.
* add allowAutoCreateTopics in consumers (different than default) and in producers (just to be explicit)
* register DefaultKafkaPersistentConnection in ordering.backgroundtasks
* remove noise in logs
* Make eventNames in kafka eventbus consistent.
Do not remove IntegrationEventSuffix, before this
change the subscription handlers and eventNames did not match.
* Create kafka admin background service to create empty topic.
We have to create the eshop_event_bus kafka topic on startup,
because otherwise the consumer of the microservices would fail.
---------
Co-authored-by: Philipp Theyssen <p.theyssen@gmail.com>
Co-authored-by: Philipp Theyssen <34607877+PTheyssen@users.noreply.github.com>
* Seeking feedback: Build and run on .Net 6 preview 6 (#1734)
* Updgrade build and hosting machines to .net6 latest
* Target .net 6
* ILogger is ambiguous?
* More ILogger ambiguity
* Use preview 6... seeing errors in preview 7...
* Of course the SDK version is different :)
* downgrade the last nonworking component
* Only restore the packages we need for the one off service stuck in .net 5
* Downgrade development docker files to use the preview 6 sdk
* Updates `basket-api` to .NET 6 (#1742)
* Use global usings
* Use file-scoped namespaces
* Updates docker images to preview 7
* Created a new migration plan
* Included global usings for identity project
* Updated docker file to preview version to 7
* Updated dockerfiles
* Merged conent from Startup.cs to Program.cs
* Removed Starup.cs
* Removed unnecessary files
* Revert "Removed unnecessary files"
This reverts commit 536bddcd96b54673401cedbe802520dce12b3472.
* Revert "Removed Starup.cs"
This reverts commit 46175d7aa97475d88ec46bce39ed498c7037d924.
* Revert "Merged conent from Startup.cs to Program.cs"
This reverts commit 2766ea86dfef9220fe3f0c27a37a9a6c18153078.
* Removed extra spaces
* Updated basket-api project file
* Update src/Services/Basket/Basket.API/Grpc/BasketService.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
* Moved the fully qualified namespace on top
* Updated relevant packages in basket.api project
* Updated relevant packages in identity.api project
Co-authored-by: David Pine <david.pine@microsoft.com>
* Updates all the services to .NET 6.0 (#1770)
* Created global using file for catalog.api
* Moved individual usings statements to globalusing
* Updated catalog.api project
* Fixed local run bug for catalog.api
* Included globalusing for payment.api
* Refactored namespace statement for payment.api
* Moved namespaces to ordering.domain project
* Included globalusing for ordering.domain project
* Included globalusings for ordering.infrastructure project
* Refactored namespaces for ordering.infrastructure project
* Updated relevant packages in ordering.infrastructure project
* Included globalusings for ordering.signalrHub project
* Moved all the namespace to globalusings
* Updated packages in ordering.signalrHub csproj file
* Refactored namespace statements in catalog.api project
* Fixed namespace name in ordering.domain
* Included global usings for ordering.api project
* Moved all usings to globalusing file
* Updated ordering.api csproj project
* Fixed bug in statup.cs
* Updated ordering.unittests.csproj file
* Included globalusings in webhooks.api project
* Moved using statements to globalusing file in webhooks.api
* Included globalusing for web.bff.shoppping aggregator project
* Moved namespaces to globalusing shopping aggregator
* Included globalusing mobile.bff.shoppping project
* Moved namespaces to globalusing file
* Included globalusing for eventbus project
* Moved namespaces to global usings for eventbus
* Included globalusing for EventBusRabbitMQ project
* Moved using statements to EventBusRabbitMQ project
* Included global using in EventBusServiceBus project
* Moved using statements to globalusing for EventBusServiceBus
* Included globalusing file for IntegrationEventLogEF project
* Move using statements to globalusing file
* Updated packages of IntegrationEventLogEF project
* Included globalusing to Devspaces.Support project
* Moved using statements to globalusing Devspaces
* Updated dependent packages for Devspaces.Support.csproj
* Fixed bug in Basket API
* Fixed bug in catalog.api
* Fixed bug Identity.API
* Included globalusing to Basket.UnitTest project
* Moved namespaces to Basket.UnitTest project
* Updated packages of Basket.UnitTest csproj
* Included globalusing for Basket.FunctionalTests project
* Included file-scoped namespaces Basket.FunctionalTests
* Updated packages of Basket.FunctionalTests.csproj file
* Updated catalog unit test project to Net 6.0
* Included global usings for Catalog.FunctionalTests
* Included file-scope namespace catalog.functionaltests
* Updated packages of catalog.functionaltest csproj
* Included MigrateDbContext method in HostExtensions
* Included globalusing for ordering.UnitTests project
* Included file-scope statement for Ordering.UnitTest project
* Included globalusing for Ordering.FunctionalTests
* Included file-scope namespace statement for using
* Updated packages in Ordering.FunctionalTests.csproj
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
* Update src/Services/Ordering/Ordering.API/Startup.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Update src/Services/Ordering/Ordering.Domain/Events/OrderStatusChangedToPaidDomainEvent.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Update src/Services/Ordering/Ordering.SignalrHub/IntegrationEvents/EventHandling/OrderStatusChangedToSubmittedIntegrationEventHandler.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Update src/Services/Ordering/Ordering.SignalrHub/IntegrationEvents/Events/OrderStatusChangedToAwaitingValidationIntegrationEvent.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
Co-authored-by: David Pine <david.pine@microsoft.com>
* Updates WebMVC to .NET 6.0 (#1773)
* Included globalusing WebMVC
* Included file scope namespaces for all files
* Updated dockerfile
* Updated packages to WebMVC
* Fixes few bugs in Net 6.0 service migration (#1774)
* Created global using file for catalog.api
* Moved individual usings statements to globalusing
* Updated catalog.api project
* Fixed local run bug for catalog.api
* Included globalusing for payment.api
* Refactored namespace statement for payment.api
* Moved namespaces to ordering.domain project
* Included globalusing for ordering.domain project
* Included globalusings for ordering.infrastructure project
* Refactored namespaces for ordering.infrastructure project
* Updated relevant packages in ordering.infrastructure project
* Included globalusings for ordering.signalrHub project
* Moved all the namespace to globalusings
* Updated packages in ordering.signalrHub csproj file
* Refactored namespace statements in catalog.api project
* Fixed namespace name in ordering.domain
* Included global usings for ordering.api project
* Moved all usings to globalusing file
* Updated ordering.api csproj project
* Fixed bug in statup.cs
* Updated ordering.unittests.csproj file
* Included globalusings in webhooks.api project
* Moved using statements to globalusing file in webhooks.api
* Included globalusing for web.bff.shoppping aggregator project
* Moved namespaces to globalusing shopping aggregator
* Included globalusing mobile.bff.shoppping project
* Moved namespaces to globalusing file
* Included globalusing for eventbus project
* Moved namespaces to global usings for eventbus
* Included globalusing for EventBusRabbitMQ project
* Moved using statements to EventBusRabbitMQ project
* Included global using in EventBusServiceBus project
* Moved using statements to globalusing for EventBusServiceBus
* Included globalusing file for IntegrationEventLogEF project
* Move using statements to globalusing file
* Updated packages of IntegrationEventLogEF project
* Included globalusing to Devspaces.Support project
* Moved using statements to globalusing Devspaces
* Updated dependent packages for Devspaces.Support.csproj
* Fixed bug in Basket API
* Fixed bug in catalog.api
* Fixed bug Identity.API
* Included globalusing to Basket.UnitTest project
* Moved namespaces to Basket.UnitTest project
* Updated packages of Basket.UnitTest csproj
* Included globalusing for Basket.FunctionalTests project
* Included file-scoped namespaces Basket.FunctionalTests
* Updated packages of Basket.FunctionalTests.csproj file
* Updated catalog unit test project to Net 6.0
* Included global usings for Catalog.FunctionalTests
* Included file-scope namespace catalog.functionaltests
* Updated packages of catalog.functionaltest csproj
* Included MigrateDbContext method in HostExtensions
* Included globalusing for ordering.UnitTests project
* Included file-scope statement for Ordering.UnitTest project
* Included globalusing for Ordering.FunctionalTests
* Included file-scope namespace statement for using
* Updated packages in Ordering.FunctionalTests.csproj
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
* Update src/Services/Ordering/Ordering.API/Startup.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Update src/Services/Ordering/Ordering.Domain/Events/OrderStatusChangedToPaidDomainEvent.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Update src/Services/Ordering/Ordering.SignalrHub/IntegrationEvents/EventHandling/OrderStatusChangedToSubmittedIntegrationEventHandler.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Update src/Services/Ordering/Ordering.SignalrHub/IntegrationEvents/Events/OrderStatusChangedToAwaitingValidationIntegrationEvent.cs
Co-authored-by: David Pine <david.pine@microsoft.com>
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
* Apply suggestions from code review
Co-authored-by: David Pine <david.pine@microsoft.com>
* Fixed bugs in Mobile.BFF.Shopping project
* Fixed bugs in Web.Bff.Shopping aggregator project
* Fixed bugs in EventBusServiceBus project
* Fixed bug in Mobile.Bff.Shopping project
Co-authored-by: David Pine <david.pine@microsoft.com>
* Updates webhook client project to .NET 6.0 (#1777)
* Included globalusing file for webhookclient
* Included file scope namespaces for Webhookclient
* Updated packages in WebHookClient project
* Updates webspa project to Net 6.0 (#1778)
* Included globalusing in webspa project
* Included file scoped namespace for webspa project
* Updated packages in WebSPA project
* Updates the Application.FunctionalTests project to .NET 6.0 (#1781)
* Included globalusing in Application.FunctionalTests project
* Included file scoped namespace
* Renamed Azure.Messaging.ServiceBus namespace
* Updates .NET version of Dockerfile to 6.0 (#1785)
* Updatated package versions to RC2
* Updated package versions to RC2
* Updated Dockerfiles to .NET 6 RC2
* Changed docker file tag to 6.0
* Updated Program class
* Updated globalusing file
* Removed preview tag reference from Dockerfile.develop file
* Updated dotnet version to .NET 6.0
* Updated all packages to the .NET 6.0
* Removed RC tag from dockerfile
* Fixed bundleconfig json
* Updated readme files
* Fixed ingress yaml indentation
* Included globalusing for WebStatus project
* Updated WebStatus project to .NET 6.0
* Included scoped namespace
* Updated Dockerfile of WebStatus to .NET 6.0
Co-authored-by: Josh Coleman <83677148+JcolemanNR@users.noreply.github.com>
Co-authored-by: David Pine <david.pine@microsoft.com>