diff --git a/.github/workflows/createrelease.yml b/.github/workflows/createrelease.yml index 7d3e4ff..9d8fefe 100644 --- a/.github/workflows/createrelease.yml +++ b/.github/workflows/createrelease.yml @@ -128,7 +128,7 @@ jobs: dotnet nuget push Nugets/MessagingService.Client.${{ steps.get_version.outputs.VERSION }}.nupkg --api-key ${{ secrets.PRIVATEFEED_APIKEY }} --source ${{ secrets.PRIVATEFEED_URL }} dotnet pack "MessagingService.EmailMessage.DomainEvents\MessagingService.EmailMessage.DomainEvents.csproj" /p:PackageVersion=${{ steps.get_version.outputs.VERSION }} --output Nugets -c Release dotnet nuget push Nugets/MessagingService.EmailMessage.DomainEvents.${{ steps.get_version.outputs.VERSION }}.nupkg --api-key ${{ secrets.PRIVATEFEED_APIKEY }} --source ${{ secrets.PRIVATEFEED_URL }} - dotnet pack "MessagingService.EmailMessage.DomainEvents\MessagingService.EmailMessage.DomainEvents.csproj" /p:PackageVersion=${{ steps.get_version.outputs.VERSION }} --output Nugets -c Release - dotnet nuget push Nugets/MessagingService.EmailMessage.DomainEvents.${{ steps.get_version.outputs.VERSION }}.nupkg --api-key ${{ secrets.PRIVATEFEED_APIKEY }} --source ${{ secrets.PRIVATEFEED_URL }} + dotnet pack "MessagingService.SMSMessage.DomainEvents\MessagingService.SMSMessage.DomainEvents.csproj" /p:PackageVersion=${{ steps.get_version.outputs.VERSION }} --output Nugets -c Release + dotnet nuget push Nugets/MessagingService.SMSMessage.DomainEvents.${{ steps.get_version.outputs.VERSION }}.nupkg --api-key ${{ secrets.PRIVATEFEED_APIKEY }} --source ${{ secrets.PRIVATEFEED_URL }} dotnet pack "MessagingService.IntegrationTesting.Helpers\MessagingService.IntegrationTesting.Helpers.csproj" /p:PackageVersion=${{ steps.get_version.outputs.VERSION }} --output Nugets -c Release dotnet nuget push Nugets/MessagingService.IntegrationTesting.Helpers.${{ steps.get_version.outputs.VERSION }}.nupkg --api-key ${{ secrets.PRIVATEFEED_APIKEY }} --source ${{ secrets.PRIVATEFEED_URL }} \ No newline at end of file diff --git a/MessagingService.Client/MessagingService.Client.csproj b/MessagingService.Client/MessagingService.Client.csproj index 1e15c2d..a7d1b9d 100644 --- a/MessagingService.Client/MessagingService.Client.csproj +++ b/MessagingService.Client/MessagingService.Client.csproj @@ -6,7 +6,7 @@ - + diff --git a/MessagingService.EmailAggregate.Tests/MessagingService.EmailAggregate.Tests.csproj b/MessagingService.EmailAggregate.Tests/MessagingService.EmailAggregate.Tests.csproj index 5afb34e..cc596e9 100644 --- a/MessagingService.EmailAggregate.Tests/MessagingService.EmailAggregate.Tests.csproj +++ b/MessagingService.EmailAggregate.Tests/MessagingService.EmailAggregate.Tests.csproj @@ -8,7 +8,7 @@ - + diff --git a/MessagingService.EmailMessage.DomainEvents/MessagingService.EmailMessage.DomainEvents.csproj b/MessagingService.EmailMessage.DomainEvents/MessagingService.EmailMessage.DomainEvents.csproj index 4ccd324..f4bfe4e 100644 --- a/MessagingService.EmailMessage.DomainEvents/MessagingService.EmailMessage.DomainEvents.csproj +++ b/MessagingService.EmailMessage.DomainEvents/MessagingService.EmailMessage.DomainEvents.csproj @@ -5,8 +5,8 @@ - - + + diff --git a/MessagingService.EmailMessageAggregate/MessagingService.EmailMessageAggregate.csproj b/MessagingService.EmailMessageAggregate/MessagingService.EmailMessageAggregate.csproj index 8a46e81..a5253ad 100644 --- a/MessagingService.EmailMessageAggregate/MessagingService.EmailMessageAggregate.csproj +++ b/MessagingService.EmailMessageAggregate/MessagingService.EmailMessageAggregate.csproj @@ -6,8 +6,8 @@ - - + + diff --git a/MessagingService.IntegrationTesting.Helpers/MessagingService.IntegrationTesting.Helpers.csproj b/MessagingService.IntegrationTesting.Helpers/MessagingService.IntegrationTesting.Helpers.csproj index 39eabad..891daf6 100644 --- a/MessagingService.IntegrationTesting.Helpers/MessagingService.IntegrationTesting.Helpers.csproj +++ b/MessagingService.IntegrationTesting.Helpers/MessagingService.IntegrationTesting.Helpers.csproj @@ -7,7 +7,7 @@ - + diff --git a/MessagingService.IntegrationTests/MessagingService.IntegrationTests.csproj b/MessagingService.IntegrationTests/MessagingService.IntegrationTests.csproj index b01fb00..a51f34e 100644 --- a/MessagingService.IntegrationTests/MessagingService.IntegrationTests.csproj +++ b/MessagingService.IntegrationTests/MessagingService.IntegrationTests.csproj @@ -6,14 +6,14 @@ - + - + @@ -27,7 +27,6 @@ - diff --git a/MessagingService.SMSMessage.DomainEvents/MessagingService.SMSMessage.DomainEvents.csproj b/MessagingService.SMSMessage.DomainEvents/MessagingService.SMSMessage.DomainEvents.csproj index 976fb59..e687bce 100644 --- a/MessagingService.SMSMessage.DomainEvents/MessagingService.SMSMessage.DomainEvents.csproj +++ b/MessagingService.SMSMessage.DomainEvents/MessagingService.SMSMessage.DomainEvents.csproj @@ -5,7 +5,7 @@ - + diff --git a/MessagingService.SMSMessageAggregate/MessagingService.SMSMessageAggregate.csproj b/MessagingService.SMSMessageAggregate/MessagingService.SMSMessageAggregate.csproj index dc1bfa0..e2f7862 100644 --- a/MessagingService.SMSMessageAggregate/MessagingService.SMSMessageAggregate.csproj +++ b/MessagingService.SMSMessageAggregate/MessagingService.SMSMessageAggregate.csproj @@ -6,7 +6,7 @@ - + diff --git a/MessagingService/Bootstrapper/MiddlewareRegistry.cs b/MessagingService/Bootstrapper/MiddlewareRegistry.cs index 6a6c81b..1f2d8ee 100644 --- a/MessagingService/Bootstrapper/MiddlewareRegistry.cs +++ b/MessagingService/Bootstrapper/MiddlewareRegistry.cs @@ -16,20 +16,24 @@ using Microsoft.OpenApi.Models; using Newtonsoft.Json; using Newtonsoft.Json.Serialization; - using Shared.EventStore.EventStore; using Shared.EventStore.Extensions; using Shared.General; using Swashbuckle.AspNetCore.Filters; using System.Collections.Generic; using System.Linq; using System.Diagnostics.CodeAnalysis; + using Microsoft.Extensions.Configuration; [ExcludeFromCodeCoverage] public class MiddlewareRegistry : ServiceRegistry { public MiddlewareRegistry() { + + String connectionString = Startup.Configuration.GetValue("EventStoreSettings:ConnectionString"); + EventStoreClientSettings eventStoreConnectionSettings = EventStoreClientSettings.Create(connectionString); + this.AddHealthChecks() - .AddEventStore(Startup.EventStoreClientSettings, + .AddEventStore(eventStoreConnectionSettings, name: "Eventstore", failureStatus: HealthStatus.Unhealthy, tags: new string[] { "db", "eventstore" }); diff --git a/MessagingService/Bootstrapper/RepositoryRegistry.cs b/MessagingService/Bootstrapper/RepositoryRegistry.cs index 9072344..3937d3e 100644 --- a/MessagingService/Bootstrapper/RepositoryRegistry.cs +++ b/MessagingService/Bootstrapper/RepositoryRegistry.cs @@ -39,32 +39,12 @@ public RepositoryRegistry() } else { - Boolean insecureES = Startup.Configuration.GetValue("EventStoreSettings:Insecure"); + String connectionString = Startup.Configuration.GetValue("EventStoreSettings:ConnectionString"); - Func CreateHttpMessageHandler = () => new SocketsHttpHandler - { - SslOptions = new SslClientAuthenticationOptions - { - RemoteCertificateValidationCallback = (sender, - certificate, - chain, - errors) => { - return true; - } - } - }; + this.AddEventStoreProjectionManagementClient(connectionString); + this.AddEventStorePersistentSubscriptionsClient(connectionString); - this.AddEventStoreProjectionManagementClient(Startup.ConfigureEventStoreSettings); - this.AddEventStorePersistentSubscriptionsClient(Startup.ConfigureEventStoreSettings); - - if (insecureES) - { - this.AddInSecureEventStoreClient(Startup.EventStoreClientSettings.ConnectivitySettings.Address, CreateHttpMessageHandler); - } - else - { - this.AddEventStoreClient(Startup.EventStoreClientSettings.ConnectivitySettings.Address, CreateHttpMessageHandler); - } + this.AddEventStoreClient(connectionString); this.AddSingleton(); } diff --git a/MessagingService/Common/Extensions.cs b/MessagingService/Common/Extensions.cs index a816425..4a81ce1 100644 --- a/MessagingService/Common/Extensions.cs +++ b/MessagingService/Common/Extensions.cs @@ -10,6 +10,7 @@ using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; +using Shared.EventStore.Aggregate; using Shared.EventStore.EventHandling; using Shared.EventStore.Extensions; using Shared.EventStore.SubscriptionWorker; @@ -19,19 +20,6 @@ [ExcludeFromCodeCoverage] public static class Extensions { - public static IServiceCollection AddInSecureEventStoreClient( - this IServiceCollection services, - Uri address, - Func? createHttpMessageHandler = null) - { - return services.AddEventStoreClient((Action)(options => - { - options.ConnectivitySettings.Address = address; - options.ConnectivitySettings.Insecure = true; - options.CreateHttpMessageHandler = createHttpMessageHandler; - })); - } - static Action log = (tt, subType, message) => { @@ -58,7 +46,7 @@ public static IServiceCollection AddInSecureEventStoreClient( public static void PreWarm(this IApplicationBuilder applicationBuilder) { - Startup.LoadTypes(); + TypeProvider.LoadDomainEventsTypeDynamically(); IConfigurationSection subscriptionConfigSection = Startup.Configuration.GetSection("AppSettings:SubscriptionConfiguration"); SubscriptionWorkersRoot subscriptionWorkersRoot = new SubscriptionWorkersRoot(); @@ -74,9 +62,12 @@ public static void PreWarm(this IApplicationBuilder applicationBuilder) Func subscriptionRepositoryResolver = Startup.Container.GetInstance>(); + + String connectionString = Startup.Configuration.GetValue("EventStoreSettings:ConnectionString"); + EventStoreClientSettings eventStoreConnectionSettings = EventStoreClientSettings.Create(connectionString); applicationBuilder.ConfigureSubscriptionService(subscriptionWorkersRoot, eventStoreConnectionString, - Startup.EventStoreClientSettings, + eventStoreConnectionSettings, eventHandlerResolvers, Extensions.log, subscriptionRepositoryResolver, diff --git a/MessagingService/MessagingService.csproj b/MessagingService/MessagingService.csproj index 4de5c13..0829162 100644 --- a/MessagingService/MessagingService.csproj +++ b/MessagingService/MessagingService.csproj @@ -18,7 +18,7 @@ - + diff --git a/MessagingService/Startup.cs b/MessagingService/Startup.cs index b0d8791..8797d24 100644 --- a/MessagingService/Startup.cs +++ b/MessagingService/Startup.cs @@ -48,26 +48,7 @@ public Startup(IWebHostEnvironment webHostEnvironment) public static IConfigurationRoot Configuration { get; set; } public static IWebHostEnvironment WebHostEnvironment { get; set; } - - internal static EventStoreClientSettings EventStoreClientSettings; - - public static void LoadTypes() - { - RequestSentToEmailProviderEvent e = new RequestSentToEmailProviderEvent(Guid.Parse("2AA2D43B-5E24-4327-8029-1135B20F35CE"), "", new List(), - "", "", true); - - RequestSentToSMSProviderEvent s = new RequestSentToSMSProviderEvent(Guid.NewGuid(), "", "", ""); - - TypeProvider.LoadDomainEventsTypeDynamically(); - } - - public static void ConfigureEventStoreSettings(EventStoreClientSettings settings) - { - String connectionString = Startup.Configuration.GetValue("EventStoreSettings:ConnectionString"); - - Startup.EventStoreClientSettings = EventStoreClientSettings.Create(connectionString); ; - } - + public static Container Container; public void ConfigureContainer(ServiceRegistry services) @@ -82,11 +63,7 @@ public void ConfigureContainer(ServiceRegistry services) services.IncludeRegistry(); Startup.Container = new Container(services); - - //Startup.ServiceProvider = services.BuildServiceProvider(); } - - //public static IServiceProvider ServiceProvider { get; set; } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory)