Commit graph

6085 commits

Author SHA1 Message Date
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 6ccf52fe71
Merge pull request #6416 from elsa-workflows/enh/add-add-many-blueberry
Add AddManyAsync method to activity execution stores
2025-02-18 15:55:25 +01:00
Sipke Schoorstra 548272fb01
Merge pull request #6418 from elsa-workflows/enh/disable-bg-jobs-blueberry
Add toggle for WorkflowInboxCleanupJob in WorkflowRuntimeFeature
2025-02-18 15:54:55 +01:00
Sipke Schoorstra 10cc005848
Convert property values using type converters in BulkUpsert.
Added logic to handle type conversion using `ConvertToProvider` for properties with defined type converters. This ensures compatibility and consistency when interacting with the database in bulk upsert operations.
2025-02-18 15:36:23 +01:00
Sipke Schoorstra 74f9b06bdd Add 'enh/*' branch to GitHub Actions workflow
This update ensures that branches with the 'enh/*' pattern are included in the workflow triggers. It helps streamline CI/CD processes for enhancement-related branch developments.
2025-02-17 19:12:27 +01:00
Sipke Schoorstra 7084675a5c Add 'enh/*' branch to GitHub Actions workflow
This update ensures that branches following the 'enh/*' naming convention are included in the workflow. It aligns with existing branch patterns like 'feature/*' to maintain consistency in automation coverage.
2025-02-17 19:04:42 +01:00
Sipke Schoorstra 0065811354 Add toggle for WorkflowInboxCleanupJob in WorkflowRuntimeFeature
Introduced methods to enable or disable the WorkflowInboxCleanupJob. Updated service configuration logic to conditionally register WorkflowInboxCleanupHostedService based on the toggle. This adds flexibility to control cleanup job behavior programmatically.
2025-02-17 19:04:10 +01:00
Sipke Schoorstra 2ed8cf28dd
Remove unnecessary blank lines in BulkUpsertExtensions.cs
Cleaned up redundant blank lines to improve code readability and maintain consistent formatting. No functional changes were made to the code.
2025-02-17 18:25:55 +01:00
Sipke Schoorstra 2240a78dd3 Refactor parameter naming in BulkUpsert logic.
Replaced loop index-based parameter naming with a sequential counter to simplify and standardize parameter generation. Improved code readability and removed redundant indexing, ensuring consistency across different database operations.
2025-02-17 18:24:14 +01:00
Sipke Schoorstra c08e7fc9a9 Add BulkUpsertExtensions for enhanced bulk upsert operations
This commit introduces a dedicated `BulkUpsertExtensions` class to streamline bulk upsert operations in Entity Framework Core. It supports multiple database providers and replaces the previous implementation in `QueryableExtensions` for better modularity and maintainability.
2025-02-17 16:56:56 +01:00
Sipke Schoorstra 213c543210 Fix parameter passing in AddManyAsync method
Updated the mapping function in AddManyAsync to include the cancellation token and corrected the store reference to _store. This ensures proper handling of async operations and aligns with the expected method signature.
2025-02-17 11:41:00 +01:00
Sipke Schoorstra 36fa18cae7
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:35:41 +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
Jérémie DEVILLARD 17975b659b Add missing reference in csproj 2025-02-14 22:12:49 +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
Bob Hauser 4e76a32e4e Update flowchart activity scheduling, implicit join (and FlowJoin/WaitAll) now only waits for followed connections 2025-02-12 23:27:40 -05:00
Jérémie DEVILLARD 421ace1f5b ConfigurePermisssions
Add Get Endpoints
Add entity framework Core  feature SqlLite implementation
2025-02-12 23:56:10 +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
Jérémie DEVILLARD 0aed8208dc Mass Refactoring to be compliant with other code in Elsa Repo
- Refactor IStore, InputModel and Entities
- Add Persistence Project
- Add EntityFameworkCore Project
2025-02-12 00:12:06 +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
Jérémie DEVILLARD 4565dfcfbc Merge remote-tracking branch 'upstream/main' into enh/Connections 2025-02-10 12:53:51 +01:00
Jérémie DEVILLARD c4e3e42dbc Add Connections to Sample Program 2025-02-10 12:40:14 +01:00
Sipke Schoorstra 6682b7f60f
Merge pull request #6392 from elsa-workflows/enh/bulk-query-cancel
Implement bulk cancellation using alterations and filters
2025-02-10 11:17:08 +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
Sipke Schoorstra bec0e559b2 Refactor RefitSettingsHelper for improved readability
Reformatted object initialization in CreateRefitSettings to improve structure and code clarity. Also cleaned up unnecessary whitespace for consistency and better readability.
2025-02-08 10:10:40 +01:00
Sipke Schoorstra bde7c0dbfe Restore support for custom JSON serializer configuration
Allow external configuration of JSON serializer settings by introducing an optional delegate. This enhances flexibility and enables customization based on specific use cases.
2025-02-08 10:10:17 +01:00
Sipke Schoorstra c0bf4b7f84 Add support for selecting all records with empty filters
Introduced a new property, `EmptyFilterSelectsAll`, to handle cases where empty filters should match all records. Updated logic in `WorkflowInstanceFinder` to respect this property, ensuring consistent behavior across the system. Removed redundant comments in the dry-run endpoint for cleaner code.
2025-02-08 10:07:07 +01:00
Sipke Schoorstra 578a15832c Update workflow cancellation logic
Replaced status checks with a call to `CanTransitionTo` for determining if a workflow can transition to the "Cancelled" state. This improves code readability and maintains consistent transition validation logic.
2025-02-08 09:51:26 +01:00
Sipke Schoorstra e719bd7c7d Remove alteration models and interfaces; refactor to use JsonObject.
This commit deletes all alteration-related models and the `IAlteration` interface in favor of using `JsonObject`. Adjustments were made to `AlterationPlan`, `AlterationPlanParams`, and `RunRequest` to replace `IAlteration` collections with `JsonObject`. Simplified the `RefitSettingsHelper` by eliminating polymorphism configuration for alterations.
2025-02-08 09:45:50 +01:00