Commit Graph

93 Commits

Author SHA1 Message Date
370f4ee3ae Add step type, step key, and updated timestamp to run logs
[MAILPOET-5568]
2023-09-20 02:36:40 -07:00
dd881d8b33 Extract logging logic to a service, make logs mutable
[MAILPOET-5568]
2023-09-20 02:36:40 -07:00
43c396220b Move all of step handler args checks to top-level handler, improve readability
[MAILPOET-5568]
2023-09-20 02:36:40 -07:00
9cd871c32e Remove unused step runner interface
[MAILPOET-5568]
2023-09-20 02:36:40 -07:00
e5550ffead Add the possibility to schedule another run of the same step (progress)
[MAILPOET-5569]
2023-09-20 02:36:40 -07:00
eeb4d64e8b Pass step run controller to automation actions
[MAILPOET-5569]
2023-09-20 02:36:40 -07:00
9d4f55b399 Add step run controller to allow actions control their flow
[MAILPOET-5569]
2023-09-20 02:36:40 -07:00
5f088d2c35 Add step run number to step run args
[MAILPOET-5569]
2023-09-20 02:36:40 -07:00
e3da509f70 Move automation completion to step scheduler
[MAILPOET-5569]
2023-09-20 02:36:40 -07:00
b7ef250511 Refactor next step scheduling to a StepScheduler service
[MAILPOET-5569]
2023-09-20 02:36:40 -07:00
d04baaee4f Sort subject keys that are used to render field groups
[MAILPOET-5169]
2023-06-19 11:06:23 +02:00
8d5e9bd951 Get all subjectEntries into the StepArgs, not just the required ones
[MAILPOET-4934]
2023-05-15 08:19:19 +02:00
b45e105cb4 Evaluate global filter operator
[MAILPOET-5218]
2023-05-04 14:34:11 +02:00
c40cb47928 Evaluate filter group operators (and/or)
[MAILPOET-5218]
2023-05-04 14:34:11 +02:00
34ca96d007 Introduce filters data type and filter groups to enable saving and/or filter combinations
[MAILPOET-5257]
2023-04-24 10:42:28 +02:00
abe44ca9f8 Implement filter handler to apply filters on field values during automation run
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
7f9faf1d99 Use automation WP helpers
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
ae828b9ac4 Do not load all possible subjects eagerly
With subject transformers the amount of possible subjects will grow,
and preloading even those that won't be used may result in performance
issues, and unnecessary errors (e.g., caused by 3rd party transformers).

[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
54f5addca9 Extract subject loading before automation processing loop
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
70dbfc28b7 Early return when no active automation matches given trigger
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
328b5b1475 Remove private getSubjectKeysForSingleKey method
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
e2777aebc3 Use plural for array of subject transformers
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
19b5abc171 Use array_keys $all to get the keys
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
d6760cb113 Use array
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
8cf48d2707 Simplify SubjectTransformer
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
68f09b6bd1 Prevent infinite loop when a subject from the trigger is missing
Given the trigger provides two subjects but only one subject was given via parameter and no
transformer was able to generate the second from the first, this method runs into an
infinite loop. This commit prevents this infinite loop.

[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
b5a846327a Remove SubjectTransformerHandler from StepHandler
All subjects are created and persisted during AutomationRun creation. Therefore, the required
subject must exist when searching for it in the StepHandler. This commit reverses the last
changes and updates the test.

[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
d365be2334 Persist all possible subject on run creation
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
c968b03ca7 Provide all possible subjects for a trigger to the UI
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
5328213d85 Introduce subject transformation
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
48e2c5f945 Add filter to decide whether an automation run should be created
[MAILPOET-4966]
2023-03-01 16:14:38 +01:00
b25f2cd5f4 Enable a Trigger to activate a second automation
[MAILPOET-4842]
2022-11-28 13:03:06 +01:00
9063dc3079 Remove duplicities in naming
[MAILPOET-4793]
2022-11-14 12:14:35 +02:00
9d55d3f134 Use "automation" instead of "workflow"
[MAILPOET-4793]
2022-11-14 12:14:35 +02:00
f825e535e3 Save next step in trigger handler
[MAILPOET-4787]
2022-11-08 22:55:57 +02:00
c6d3573652 Save next step ID to workflow runs
[MAILPOET-4787]
2022-11-08 22:55:57 +02:00
af1e09f46f Remove "inactive" status for now, use "draft" instead
[MAILPOET-4757]
2022-11-07 11:17:36 +02:00
916080fa5a Reset step runners to not interfer with other tests
[MAILPOET-4731]
2022-10-25 12:46:07 +02:00
c10f80457d Use new getCountForWorkflow for performance
[MAILPOET-4731]
2022-10-25 12:46:07 +02:00
2c57251bae Revert e8cfb2565
[MAILPOET-4731]
2022-10-25 12:46:07 +02:00
b74890137a Set a deactivating Workflow to inactive once all runs are completed
[MAILPOET-4731]
2022-10-25 12:46:07 +02:00
7aa1a5f4ba Enable setStatus to handle multiple WorkflowRuns at the same time
[MAILPOET-4731]
2022-10-25 12:46:07 +02:00
2620ef0b57 Do not handle workflow runs when workflow status is not active/deactivating
[MAILPOET-4731]
2022-10-25 12:46:07 +02:00
11384bbf6a Fix bug where the type of $step was Data\Step instead of Integration\Step
[MAILPOET-4530]
2022-10-19 13:34:45 +02:00
a052cdcceb Allow custom validation for all step types
[MAILPOET-4659]
2022-10-13 11:58:11 +02:00
7425c73d9e Add error messages to action validation, use step validation args
[MAILPOET-4659]
2022-10-13 11:58:11 +02:00
a2948efc46 Rename namespace with defs for 3rd-party integrations to "Integration"
[MAILPOET-4659]
2022-10-13 11:58:11 +02:00
c9c98b403c Fix possible undefined index access
[MAILPOET-4629]
2022-09-23 12:42:03 +03:00
5920810ac6 Use step args for triggers
[MAILPOET-4629]
2022-09-23 12:42:03 +03:00
68b5bab9cc Introduce step run args to simplify step run arguments
[MAILPOET-4629]
2022-09-23 12:42:03 +03:00