Commit graph

6 commits

Author SHA1 Message Date
Sipke Schoorstra a24ca0435f
Refactor projects to target .NET 8.0 exclusively.
Dropped support for .NET 6.0 and .NET 7.0 by removing multi-targeting configurations. Updated dependencies to use versions compatible with .NET 8.0, ensuring consistency across all projects. This simplifies maintenance and aligns with the latest .NET standards.
2025-02-24 22:29:51 +01:00
Sipke Schoorstra b7991fd99d Add ConfigureAwait to FodyWeavers.xml
A ConfigureAwait tag was added to the FodyWeavers.xml file in the Elsa.Server.LoadBalancer bundle. This adjustment will influence how awaitable tasks are resumed in the .NET asynchronous programming model.
2024-03-25 11:00:07 +01:00
Sipke Schoorstra 5214207af6 Update Elsa.Server.LoadBalancer project settings and Elsa.sln
The Elsa.Server.LoadBalancer project settings have been updated to support multiple target frameworks (net7.0 and net8.0), with Linux defined as the default target OS for Docker. Additionally, the build.sh file reference has been added to the Elsa.sln solution.
2024-03-25 10:54:27 +01:00
Sipke Schoorstra 3aa6c7dbe5 Update Elsa.Server.LoadBalancer project settings
Two new properties have been introduced in the Elsa.Server.LoadBalancer project file. These include setting the 'IsPackable' attribute to 'false', preventing the project from being packaged and setting the 'LangVersion' to 'latest', to use the latest available version of C#.
2024-03-25 09:21:31 +01:00
raymonddenhaan 9d3f685bb6
Implemented distributed cache refresh for workflow definitions (#5095)
* Moved handler to correct namespace

* Added version deletion messages to activity registry handler

* Add MassTransit support for workflow management

* Moved logic from Workflow.Management.MassTransit project into Elsa.MassTransit project

* Added notifier to MT project for creating distributed messages

* Rename and update workflow consumer class

Renamed `WorkflowDefinitionConsumer` to `WorkflowDefinitionEventsConsumer` to better reflect its purpose. Updated references accordingly in the `MassTransitWorkflowManagementFeature` class to align with the new name.

* Shortened instance (queue) names

* Remove unnecessary comment in handler definition

An unnecessary comment mark ("/") was removed in the definition of the DistributedWorkflowDefinitionNotificationsHandler class. This change contributes to code cleanup and increases code readability.

* Add additional destinations in LoadBalancer settings

Three new destinations have been added to the LoadBalancer settings in Elsa Server. These are primarily intended to provide broader network coverage and improve overall server performance.

* Add MassTransit support in Elsa.Server

A new using directive for Elsa.MassTransit.Extensions has been included at the start of the script. In addition, under certain conditions, the system now uses the MassTransit Dispatcher in the workflow management system. These changes provide support for using MassTransit in the Elsa.Server component.

* Add MassTransitBroker enum for MassTransit setup

A new enum called MassTransitBroker has been added to represent different types of messaging brokers used in MassTransit. This has also been integrated into the Web project's Program.cs file to allow conditional usage of brokers in the MassTransit setup, enabling more flexible and dynamic configuration.

* Refactor WorkflowManagementFeature class

The WorkflowManagementFeature class has been cleaned up and its formatting has been corrected. A blank line was removed, a line break was added for readability in the AddVariableType method, and several stray spaces were also removed.

* Refactor RefreshActivityRegistryHandler.cs

This commit removes unnecessary whitespace and improves the code readability in RefreshActivityRegistryHandler.cs. The changes include deletion of extra lines and adjustment of indentation.

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2024-03-24 21:09:51 +01:00
Sipke Schoorstra a720688bfd Add LoadBalancer bundle to Elsa.Server
This commit introduces a new bundle for load balancing into the Elsa.Server solution. It includes initial configuration files, launch settings, and reverse proxy setup. The load balancer is configured with a RoundRobin policy and the project references the Yarp.ReverseProxy package.
2024-03-24 20:27:38 +01:00