Commit graph

5834 commits

Author SHA1 Message Date
Sipke Schoorstra 0a21b5201a
Add workflow restart functionality for handling interruptions
Introduced a mechanism to identify and restart interrupted workflows. This includes a new `IWorkflowRestarter` contract, its default implementation, and a recurring task for handling restarts. Additionally, updated configurations and added extensions to improve workflow instance filtering and liveness tracking.
2025-02-22 15:10:52 +01:00
Sipke Schoorstra ae676cf8e9
Merge pull request #6412 from pkaaz/bug/6409-correlationId-for-bookmark-queue
Add CorrelationId to NewBookmarkQueueItem
2025-02-19 15:26:07 +01:00
Sipke Schoorstra 6bb83c538a
Merge pull request #6413 from CODEdire/main
Add IBusRegistrationContext to Transport Configuration Actions
2025-02-19 15:25:54 +01:00
Sipke Schoorstra dd753a62ed
Merge pull request #6423 from bobhauser/activityexecutioncontext-children-property-not-populated
ActivityExecutionContext Children property not populated
2025-02-19 15:24:49 +01:00
Sipke Schoorstra 90e4d23290
Merge pull request #6415 from elsa-workflows/enh/add-add-many
Add AddManyAsync method to activity execution stores
2025-02-19 15:23:28 +01:00
Bob Hauser 8d63c93424 ActivityExecutionContext Children property not populated 2025-02-18 22:57:23 -05:00
Sipke Schoorstra 2c394e2353
Merge pull request #6420 from elsa-workflows/orchard
Improve APIs for extensibility and replaceability
2025-02-18 19:49:34 +01:00
Sipke Schoorstra 5dc9d4f40f
Disable multitenancy in Elsa.Server.Web
Multitenancy has been turned off by setting `useMultitenancy` to `false`. This change might simplify the current configuration and reduce complexity for single-tenant use cases.
2025-02-18 19:44:31 +01:00
Sipke Schoorstra bc005a7586
Remove mediator-based workflow definition handling
Replaced mediator requests and commands with direct store interactions in the workflow management module. Simplified service dependencies, eliminating unnecessary handlers and requests, and streamlined workflow-related operations for better maintainability and performance.
2025-02-18 19:39:37 +01:00
Sipke Schoorstra 093c72a8e9 Add AddManyAsync method to activity execution stores
Introduced a new AddManyAsync method across multiple activity execution stores to add collections of log records. This enhancement ensures consistency in handling bulk additions and aligns with existing store interfaces.
2025-02-17 11:32:34 +01:00
Sipke Schoorstra dff6e14093 Add WorkflowExecutionLogStore implementation and migrations
Introduced a new `WorkflowExecutionLogStore` to handle workflow execution log persistence. Added necessary extensions, indexes, migrations, and updated the startup configuration to register the new store and index provider. This enables querying, saving, and managing workflow execution logs in the OrchardCore project.
2025-02-16 20:27:07 +01:00
Sipke Schoorstra 0f747b67fd Refactor Elsa workflows and add support for triggers/bookmarks
Reorganized data migrations and introduced new stores for triggers and bookmarks. Added index providers and migrations for improved queryability of triggers and bookmarks. Updated WorkflowInstance handling with additional configurations and dependency injections.
2025-02-15 23:49:56 +01:00
CODEdire 51aa94be45
Merge pull request #1 from CODEdire/masstransit-addcontext
Added minor changes to MassTransitFeature to start using MassTransitOptions as the source for the prefetch count as the new source for this information is in the base MassTransitOptions. Created a new ConfigureTransportBus in both RabbitMQ and Azure Service Bus to support the context in the configuration action. Marked the old ConfigureServiceBus to persuade migration over to the contextual action. Currently, it will run the legacy action first and then the new contextual action second. The Elsa.Server.Web was also updated to use the new ConfigureTransportBus.
2025-02-15 13:23:38 -06:00
Thomas Yates c12982dd88 Added minor changes to MassTransitFeature to start using MassTransitOptions as the source for the prefetch count as the new source for this information is in the base MassTransitOptions. Created a new ConfigureTransportBus in both RabbitMQ and Azure Service Bus to support the context in the configuration action. Marked the old ConfigureServiceBus to persuade migration over to the contextual action. Currently, it will run the legacy action first and then the new contextual action second. The Elsa.Server.Web was also updated to use the new ConfigureTransportBus. 2025-02-15 13:04:45 -06:00
Sipke Schoorstra 78eebe67ee Add ElsaWorkflowInstanceStore and workflow instance indexing
Introduced `ElsaWorkflowInstanceStore` for managing workflow instances, including querying, saving, updating, and deleting. Added associated index provider and schema changes for indexing workflow instances, enabling efficient data retrieval. Updated startup and manifest files to register these new functionalities.
2025-02-15 11:54:18 +01:00
PkaaZ a38d56b328 Update for a better description 2025-02-15 12:51:45 +02:00
PkaaZ d24764b8cc Add CorrelationId to NewBookmarkQueueItem 2025-02-15 12:43:58 +02:00
Sipke Schoorstra 255bb26dff Refactor code for improved clarity and modern syntax
Refactored multiple classes to align with modern C# coding practices such as object initializers and nullable type handling. Added a new base class for checklist dropdown providers to enhance UI configuration extensibility. Simplified constructors for feature classes by adopting record-like syntax, improving readability and maintainability.
2025-02-15 00:12:52 +01:00
Sipke Schoorstra 0bca6913b9 Introduce workflow definition publishing and serialization enhancements
Implemented `NewAsync` method in `IWorkflowDefinitionPublisher` for asynchronous workflow creation. Added content item-based workflow definition management, including publishing, retracting, and draft management. Updated workflows API and integrated serialization improvements for better content handling.
2025-02-14 21:41:46 +01:00
Sipke Schoorstra 7b5aa6073d Add support for content item-backed workflow definitions
Introduced a `ContentItemWorkflowDefinitionStore` and related mappers, extensions, and index updates to manage workflow definitions as content items. Refactored the system to replace existing handlers with a store-based approach and optimized querying and mapping workflows.
2025-02-13 23:39:56 +01:00
Sipke Schoorstra 0c53c7095c Refactor workflow handling to use WorkflowDefinitionHandle.
Replaced individual parameters with WorkflowDefinitionHandle in workflow-related methods and requests to centralize and simplify logic. Updated related services, models, and handlers to align with this new structure, improving code maintainability and consistency.
2025-02-12 23:13:04 +01:00
Sipke Schoorstra 58f0c48f66 Refactor workflow management to utilize mediator requests.
Replaced direct store interactions in workflow management with mediator-based requests using `IMediator`, improving consistency and modularity. Added new handlers and requests for workflow definition operations, and updated existing services to align with mediator patterns.
2025-02-12 22:08:09 +01:00
Sipke Schoorstra 5fdd7a4542
Merge remote-tracking branch 'origin/main' 2025-02-12 16:39:00 +01:00
Sipke Schoorstra 3fb4bb18f1 Rename ActivityInput to WorkflowInput and replace 'default' with 'null'.
The record class was renamed to better reflect its purpose as representing workflow input. Additionally, parameters with a default value of 'default' were updated to 'null' for increased clarity and consistency. These changes improve code readability and maintainability.
2025-02-11 15:44:48 +01:00
Sipke Schoorstra 08f7bd7019
Merge pull request #6393 from KnibbsyMan/feat/add-in-sql-editor
Removes Built In SQL Editor Configuration
2025-02-10 09:54:25 +01:00
Sipke Schoorstra f445fbecff
Merge pull request #6394 from elsa-workflows/bug/props-propagation
Add missing request properties when starting workflow
2025-02-10 08:39:33 +01:00
Sipke Schoorstra 9a2483b645
Merge pull request #6395 from elsa-workflows/improvement/configurable-tenant-http-header
Add customizable tenant header support for HTTP routing
2025-02-10 08:38:54 +01:00
Sipke Schoorstra 689fd6fecf Remove duplicate Kafka compose entry and add oracle setup.
Duplicate reference to `docker-compose-kafka.yml` was removed to tidy up the solution file. Added
2025-02-09 08:36:39 +01:00
Sipke Schoorstra d83bb3b834 Add customizable tenant header support for HTTP routing
Introduced `MultitenancyHttpOptions` to configure the tenant header name used for HTTP routing. Updated `HeaderTenantResolver` to utilize this option and modified the server setup to allow overriding the default header name. This enables more flexible multitenancy configurations.
2025-02-09 08:24:55 +01:00
Sipke Schoorstra 2f90bbe492 Remove duplicate Kafka compose entry and add oracle setup.
Duplicate reference to `docker-compose-kafka.yml` was removed to tidy up the solution file. Added
2025-02-09 08:15:06 +01:00
Sipke Schoorstra 8952f06dde Add missing request properties when starting workflow
Added support for `Properties` and `ParentId` when creating workflow instances. This fixes an issue where the Properties were not propagated to the workflow instance being created.
2025-02-09 08:12:12 +01:00
Matthew Knibbs 23bc29e73d Removes Built In SQL Editor Configuration 2025-02-07 16:34:22 +00:00
Sipke Schoorstra 484a126693
Merge branch 'patch/3.3.3' 2025-02-07 13:29:43 +01:00
Sipke Schoorstra 0dcc15cbec
Merge pull request #6388 from elsa-workflows/bug/hangfire-job-compat
Add obsolete ExecuteAsync overloads for job classes
2025-02-07 13:29:04 +01:00
Sipke Schoorstra fe038f9a12 Add obsolete ExecuteAsync overloads for job classes
Introduce `[Obsolete]` ExecuteAsync overloads in job classes to support legacy calls while encouraging migration to preferred methods. `[UsedImplicitly]` annotations ensure these methods are retained for compatibility.
2025-02-07 12:48:30 +01:00
Sipke Schoorstra 466f6e62c7
Merge pull request #6386 from KnibbsyMan/main
ISSUE: Resolves Directory.Packages.props - Prevents Building
2025-02-07 06:36:22 +01:00
Matthew Knibbs f7c5c83493 Resolves Directory.Packages.props formatting error. 2025-02-07 02:55:29 +00:00
Sipke Schoorstra 7c1f85758b
Merge pull request #6257 from KnibbsyMan/main 2025-02-06 22:41:05 +01:00
Matt 1029580712
Merge branch 'main' into main 2025-02-06 21:20:12 +00:00
Sipke Schoorstra 9aec0f0579 Update base version and fix branch matching logic
Updated the base_version to 3.4.0 to align with the latest release. Adjusted the branch matching logic to use 'origin/main' instead of the specific 'origin/patch/3.3.2' to improve maintainability and adaptability.
2025-02-06 21:06:41 +01:00
Sipke Schoorstra b57763a74c
Merge branch 'patch/3.3.2' 2025-02-06 21:05:22 +01:00
Sipke Schoorstra 5d21bcb4a9 Improve null handling and add job retry configuration
Updated null checks for job types in Hangfire extensions to prevent potential runtime errors. Added Hangfire's `AutomaticRetry` attribute to RunWorkflowJob and ResumeWorkflowJob to configure retry behavior. Simplified object initialization in WorkflowDefinitions List endpoint.
2025-02-06 19:32:08 +01:00
Sipke Schoorstra 9e395c2bce Update branch check in release workflow
Replaces the hardcoded branch reference `patch/3.3.2-rc2` with `patch/3.3.2` to align with the proper naming convention. This ensures the workflow correctly identifies the intended branch during release events.
2025-02-06 18:40:03 +01:00
Sipke Schoorstra 3800db783a Update branch filter in release condition for GitHub Actions
Replaced 'origin/main' with 'origin/patch/3.3.2-rc2' in the workflow's branch filter. This ensures the release process targets the correct branch during specific GitHub events.
2025-02-06 18:24:01 +01:00
Sipke Schoorstra 1081960e6d Add 'patch/*' branch to workflow triggers
Included 'patch/*' as a trigger for the GitHub Actions workflow to ensure automated processes cover patch branches. This aligns with the existing structure for branch-specific workflows.
2025-02-06 17:09:56 +01:00
Sipke Schoorstra da6eda22e1
Merge branch 'bug/6262' into patch/3.3.2 2025-02-06 17:00:24 +01:00
Sipke Schoorstra 1f78dbae57
Add taskName parameter to job execution methods
This change updates job scheduling and execution methods to include a taskName parameter. It ensures a unique identifier is passed for each job, improving tracking and consistency in job handling. Additionally, documentation comments were updated to reflect this new parameter.
2025-02-06 16:58:32 +01:00
Sipke Schoorstra 9f3fd36882
Merge pull request #6380 from elsa-workflows/bug/6262
Fix multitenancy support in Hangfire services and jobs
2025-02-06 16:46:01 +01:00
Sipke Schoorstra a084353938
Merge pull request #6370 from yinzara/feature/alterations-client-api
Added Alterations API to Client API library and updated server API co…
2025-02-06 16:45:25 +01:00
Sipke Schoorstra aa09708268
Merge pull request #6343 from elsa-workflows/feature/4835
Controlled Commit States Feature Implementation
2025-02-06 16:44:48 +01:00