New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Configure alternate backend for Dapr workflow #7283
Configure alternate backend for Dapr workflow #7283
Conversation
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I haven't had a chance to do a full review yet, but from what I've skimmed so far, the approach you're taking matches my expectations, which is great to see. :)
There are a few minor things I was able to spot while looking quickly at the code.
Co-authored-by: Chris Gillum <cgillum@gmail.com> Signed-off-by: MD Ashique <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Signed-off-by: ashiquemd <noorani.ashique5@gmail.com>
Dapr Version Skew integration test (dapr-sidecar-master - 1.12.3)Commit ref: 312d92d ❌ Version Skew tests failedPlease check the logs for details on the error. |
Dapr Version Skew e2e test (control-plane-master - 1.12.3)Commit ref: 312d92d ✅ Version Skew tests passed |
Dapr Version Skew integration test (control-plane-master - 1.12.3)Commit ref: 312d92d ❌ Version Skew tests failedPlease check the logs for details on the error. |
Signed-off-by: MD Ashique <noorani.ashique5@gmail.com>
/ok-to-test |
Dapr E2E testCommit ref: 3a3fb33 ✅ Build succeeded for linux/amd64
✅ Infrastructure deployed
✅ Build succeeded for windows/amd64
❌ Tests failed on windows/amd64Please check the logs for details on the error. ❌ Tests failed on linux/amd64Please check the logs for details on the error. |
Signed-off-by: MD Ashique <noorani.ashique5@gmail.com>
/ok-to-test |
Dapr E2E testCommit ref: da5607f ✅ Build succeeded for linux/amd64
✅ Infrastructure deployed
✅ Build succeeded for windows/amd64
❌ Tests failed on windows/amd64Please check the logs for details on the error. ❌ Tests failed on linux/amd64Please check the logs for details on the error. |
/ok-to-perf |
/test-version-skew |
Dapr perf testCommit ref: da5607f ✅ Infrastructure deployed
✅ Build succeeded
✅ Perf tests succeeded
|
Dapr Version Skew e2e test (dapr-sidecar-master - 1.12.3)Commit ref: da5607f ✅ Version Skew tests passed |
Dapr Version Skew e2e test (control-plane-master - 1.12.3)Commit ref: da5607f ✅ Version Skew tests passed |
Dapr Version Skew integration test (dapr-sidecar-master - 1.12.3)Commit ref: da5607f ✅ Version Skew tests passed |
Dapr Version Skew integration test (control-plane-master - 1.12.3)Commit ref: da5607f ✅ Version Skew tests passed |
/ok-to-test |
Dapr E2E testCommit ref: da5607f ✅ Build succeeded for linux/amd64
✅ Infrastructure deployed
✅ Build succeeded for windows/amd64
❌ Tests failed on windows/amd64Please check the logs for details on the error. ❌ Tests failed on linux/amd64Please check the logs for details on the error. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
@mukundansundar @ASHIQUEMD this PR fails integration tests as we now always have a workflow component returned on the component list from the metadata endpoint. Tests need updating to reflect this. |
@mukundansundar @ASHIQUEMD Please can you also consider hot reloading, and how hot reloading works for this component type? It doesn't look like there are any tests covering this. |
Just like for the actor state store, we shouldn't support hot reloading here as it could cause serious consistency issues. |
@ItalyPaleAle I think this is fine for now but do think long term this should be supported. We need to include code that blocks hot reloading of |
Description
Allow users to configure alternate backend for Dapr Workflow apart from Actor.
Currently supported workflow backends
This PR refactors wfengine.go file to be independent of Actor backend.
SQLite backend component example yaml
Actor backend component example yaml.
Note: If there is no backend component defined, actor backend will be initialized by default, so its not required for user to specify the actor backend component.
Distinction between the workflow engine component and workflow backend component in context of workflow:
workflow.dapr
(Workflow Engine component):This type represents the workflow engine component.
It is initialized by default without the need for a separate component YAML file.
workflowbackend.sqlite
orworkflowbackend.actor
(Workflow Backend component):This type represents the workflow backend component.
Initialization is based on the component YAML file provided by the user.
Users can configure and tailor the backend according to their specific requirements.
It's crucial to note that these two types are mutually exclusive and operate independently of each other. The growth and introduction of new components within each category will be handled independently
Issue reference
Please reference the issue this PR will close: #7127
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list: