Commit graph

464 commits

Author SHA1 Message Date
Sipke Schoorstra b2d6859331 Undo dictionary serialization processing 2021-02-22 16:27:43 +01:00
Sipke Schoorstra 05c15a2eaf Autogenerate switch case labels 2021-02-20 21:21:18 +01:00
Sipke Schoorstra f048e6d3ef
Refactor Switch builder API (#649)
* Refactor Switch builder API

* Remove unused namespaces
2021-02-20 20:47:56 +01:00
Sipke Schoorstra 0bf3fecf18 Rename IfElse to If 2021-02-20 15:56:32 +01:00
Sipke Schoorstra a29905bae2
Introduce AmbientActivityExecutionContext to support direct access to composite activity input properties from child activities (#648) 2021-02-20 15:23:39 +01:00
Sipke Schoorstra 15f1411838
Add support for scoped variables (#647) 2021-02-20 12:45:16 +01:00
Sipke Schoorstra 94dce2466b
Improve Finish activity (#646)
* Update Finish behavior to exit out of composite activities (including root workflows)

* Update Finish activity to evict contained scopes
2021-02-20 11:12:29 +01:00
Sipke Schoorstra 3f173d6468 Implement unwinding of Switch activity 2021-02-17 21:43:16 +01:00
Sipke Schoorstra a67f07ac70 Small ForEach builder API improvements 2021-02-17 21:42:42 +01:00
Sipke Schoorstra bc496ddcc3 Small Workflow Context API improvements 2021-02-17 21:42:09 +01:00
Sipke Schoorstra 3280570252 Add convenience overload to enqueue workflow by type 2021-02-17 21:41:25 +01:00
Sipke Schoorstra 86980a752e
Designer web component (#636)
* Activity picker dialog

* Activity picker

* Activity editor

* Activity property fields

* Blazor bindings for Elsa designer

* Only index triggers from published & enabled workflow definitions

* Handle case of null workflow blueprint not found

* Add check for zero duration and general scheduler exceptions

* Don't rethrow expression evaluation failure

* Workflow definition settings editor modal

* Integration between stencil and blazor 🎉

* Fix expression type conversion

* Add publish button and restructure components

* Fix up workflow definition ID vs workflow definition version ID

* Update EF Core migrations

* Fix Workflow Publisher

* Fix version display

* Add Import menu item
2021-02-16 09:55:13 +01:00
Sipke Schoorstra eda7bf0e0e Add convenience methods for activity execution logging 2021-02-13 14:58:05 +01:00
Sipke Schoorstra bf9129a661 Add convenience methods for activity execution logging 2021-02-13 14:38:21 +01:00
Sipke Schoorstra a02147d2ee Fix Finish + CompositeActivity 2021-02-13 11:16:20 +01:00
Sipke Schoorstra 663dc47c89
Stash (#629) 2021-02-13 10:31:34 +01:00
Sipke Schoorstra f6268acfd1
Add Break activity (#628)
* Add Break activity

* Add activity type registration helpers

* Add sample project for Break activity
2021-02-13 10:29:03 +01:00
Sipke Schoorstra e3bb394a03 Update ForEach to not store a copy of the list
Instead, rely on the Items property being set before each new iteration (which happens by default)
2021-02-11 11:01:57 +01:00
Sipke Schoorstra f4fff18698 Update serializer settings to allow for objects with reference loops 2021-02-10 21:57:49 +01:00
Sipke Schoorstra de6fce52d4 Re-enable re-queueing of messages for locked workflows and update timer activities to not execute if scheduled time lies in future 2021-02-09 21:31:09 +01:00
Sipke Schoorstra 3e12cd59ce Remove rescheduling for now 2021-02-09 18:46:50 +01:00
Sipke Schoorstra 446e645577
Workflow Instance Bulk Actions on Blazor Dashboard (#613)
* Implement bulk delete + retry
2021-02-09 11:18:12 +01:00
Sipke Schoorstra ccbb10d66f Update RunWorkflowDefinitionConsumer with distributed lock on correlation
Prevents creating duplicate workflow instances with same correlation ID and workflow definition.
2021-02-03 22:54:20 +01:00
Sipke Schoorstra d0113605f3
Retry faulted workflow from dashboard (#607)
* Cleanup ClientApp assets

* Update favicons

* Implement Retry from dashboard option
2021-02-02 12:15:09 +01:00
Sipke Schoorstra 5a7584b9ec Cleanup 2021-02-01 16:16:14 +01:00
Sipke Schoorstra 59cdcdad6c Log inner exceptions 2021-02-01 16:14:45 +01:00
Sipke Schoorstra 2f29dc379c Upgrade to .NET Standard 2.1 2021-01-31 18:44:57 +01:00
Sipke Schoorstra e6a68a0476 Fix EF core store
Entities were no longer updated due to the new short-lived DbContext approach
2021-01-31 12:51:05 +01:00
Sipke Schoorstra f5cc185f70 Cleanup 2021-01-31 12:49:34 +01:00
Sipke Schoorstra 2c7b20846a Fix Stack serialization 2021-01-31 12:49:06 +01:00
Sipke Schoorstra 2b88208ff6 Configure Rebus serialization and centralize common rebus config 2021-01-30 20:39:08 +01:00
Sipke Schoorstra 672959530f Update workflow reviver to persist refurbished workflow instance 2021-01-30 20:38:38 +01:00
Sipke Schoorstra 420e2e65c5 Add caching layer to WorkflowRegistry 2021-01-30 20:11:08 +01:00
Sipke Schoorstra 386879781d Add AddActivitiesFrom overloads 2021-01-30 14:43:32 +01:00
Sipke Schoorstra 0bb95ec06f Update RunWorkflow activity to return Done if child workflow finished synchronously 2021-01-30 14:43:18 +01:00
Sipke Schoorstra 7cfe24ba94
Implement revival of faulted workflow (#595)
* Initial version of workflow reviver

* Fix DI things

* Rename workflow builder parameter to `builder`

* Update EF Core stores to use short-lived db contexts

* Update serializer to use new settings to reset ID seed

* Write fault details

* Add faulty workflows sample project

* Switch to free & open source Z.EntityFramework.Plus.EFCore

* Add content type header

* Fix call to virtual OnSaving/OnLoading

* Fix retry
2021-01-30 12:47:50 +01:00
Sipke Schoorstra 59189bd330
Revise trigger API (#593)
* Update triggers

* Fix service registrations

* Add support for startup task ordering

* Add missing Rebus Activities project

* Handle indexing of many workflow instances

* Update sample

* Separate bookmarks from start triggers

* Add trigger API

* Fix queue worker

* Delete sqlite temp files
2021-01-29 16:16:45 +01:00
Sipke Schoorstra a60b973a06 Add support for ordered startup tasks 2021-01-28 14:13:31 +01:00
Sipke Schoorstra 343b182ba0 Use CommandSender instead of EventPublisher 2021-01-28 09:30:52 +01:00
Sipke Schoorstra c9c29c2052 Defer RunWorkflowInstance messages when unable to acquire lock on workflow instance 2021-01-28 09:30:29 +01:00
Sipke Schoorstra 3cc80939c0 Add GetInput/GetOutput overloads accepting default value 2021-01-28 09:29:46 +01:00
Sipke Schoorstra d593194457 Add Defer method to CommandSender 2021-01-28 09:28:45 +01:00
Sipke Schoorstra f6c58a9b6c Improved logging and ElsaContext cleanup 2021-01-27 11:53:51 +01:00
Sipke Schoorstra 3834c3cc9e
Fix Join ancestor order bug and add Resuming event to execution log (#591)
* More logging events

* Add Resuming event to log

* Fix Join ancestor order bug
2021-01-27 10:03:03 +01:00
Sipke Schoorstra 0e78b98c2a
Add event to preempt workflow/activity execution (#589) 2021-01-25 15:53:49 +01:00
Sipke Schoorstra f6cb6cc055 Reorder startup tasks 2021-01-22 14:58:58 +01:00
Sipke Schoorstra 25cf309cba Update RunWorkflowDefinitionConsumer to avoid creating multiple workflows with same correlation 2021-01-21 19:30:13 +01:00
Sipke Schoorstra 4936eda340 Decrease queue worker parallelism and expose triggers 2021-01-21 17:27:42 +01:00
Sipke Schoorstra e6f42aca8f Update packages 2021-01-21 12:45:10 +01:00
Sipke Schoorstra 1316188d82 Add missing line number and source file arguments for inline activities 2021-01-21 12:11:54 +01:00