-
Notifications
You must be signed in to change notification settings - Fork 223
Feat Cross App CallActivity #1468
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
Conversation
Note, this PR should be cherrypicked into the release branch once merged. |
This PR is also dependent on the dapr release for 1.16. Javi has a PR to update to the latest rc version here. We will need both merged in, then cherrypick both to the release branch |
I need to release durabletask-java with this PR merged in before this current PR will be green |
@cicoyle I was looking at this PR, but it doesn't have anything related to cross app call activity. |
Did you by chance read the thorough readme updates I added? |
I just got a workflow IT test locally 🎉 Need to cleanup and push, will do that + fix the conflict in my morning. Please feel free to review everything else and know I will update the pom.xml in my morning and add an IT test. Ill remove the mechanical markdown since Ill be adding the IT test. |
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
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.
@cicoyle I've left a bunch of comments and suggestions. I am really against adding support for customHttp
and customGrpc
ports that is something that users shouldn't need to do as that goes against the idea of using containers that are started with random ports, but still allow the user to obtain the mapped ports to connect to them.
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java
Outdated
Show resolved
Hide resolved
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.
@cicoyle overall the example looks good and the new additions for Cross App Call are good, but I believe that all the changes in the DaprContainer class will cause issues. I am curious to see what are the issues that you are facing if you don't introduce any change in that class.
DaprContainer is a critical class being used by customers now, so I would change the behavior of it.
My recommendation would be to revert the changes on DaprContainer
and I can help you to figure out what is going wrong with the containers when the pipelines fail.
@cicoyle codecov is still failing and sb 3.3.x was cancelled for some reason, I think the changes in the PR are ok if the pipelines and codecov are green. |
I pushed a test that should appease codecov. I also upped the test timeout to unblock this PR. I will open an issue to parallelize the test suite a bit bc it should not take this long. |
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.
@cicoyle this looks great! I have left some comments. Some of them are nitpicks.
I want to make sure that all the ITs that are using Testcontainers follow the same pattern and we rely on Testcontainer machinery for all the resource bootstrap and cleanup.
I am guessing you have run into issues that's why you added the ensureDependenciesCopied()
method, but my question is why can't we have everything done during build, so we don't have to invoke Maven during IT execution.
examples/src/main/java/io/dapr/examples/workflows/crossapp/CrossAppWorkflow.java
Show resolved
Hide resolved
examples/src/main/java/io/dapr/examples/workflows/crossapp/App2TransformActivity.java
Outdated
Show resolved
Hide resolved
sdk-tests/src/test/java/io/dapr/it/testcontainers/workflows/crossapp/CrossAppWorkflow.java
Show resolved
Hide resolved
sdk-tests/src/test/java/io/dapr/it/testcontainers/workflows/crossapp/CrossAppWorkflow.java
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
61918a6
to
714b787
Compare
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Cassandra Coyle <[email protected]>
Signed-off-by: Javier Aliaga <[email protected]>
Signed-off-by: Javier Aliaga <[email protected]>
Signed-off-by: Javier Aliaga <[email protected]>
Signed-off-by: Javier Aliaga <[email protected]>
Signed-off-by: Javier Aliaga <[email protected]>
b962ce7
to
efa979c
Compare
Signed-off-by: Javier Aliaga <[email protected]>
Signed-off-by: Javier Aliaga <[email protected]>
@artur-ciocanu @salaboy I fixed all you comments and suggestion, can you take look again? |
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, thanks @javier-aliaga for adding the @containers to the test.. that will simplify our lives
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Outdated
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Show resolved
Hide resolved
.../test/java/io/dapr/it/testcontainers/workflows/crossapp/WorkflowsCrossAppCallActivityIT.java
Show resolved
Hide resolved
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1468 +/- ##
============================================
+ Coverage 76.91% 78.89% +1.98%
- Complexity 1592 1934 +342
============================================
Files 145 237 +92
Lines 4843 5952 +1109
Branches 562 611 +49
============================================
+ Hits 3725 4696 +971
- Misses 821 936 +115
- Partials 297 320 +23 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
* cross app ex Signed-off-by: Cassandra Coyle <[email protected]> * update protoc cmd Signed-off-by: Cassandra Coyle <[email protected]> * feedback Signed-off-by: Cassandra Coyle <[email protected]> * builder pattern Signed-off-by: Cassandra Coyle <[email protected]> * fix protoc Signed-off-by: Cassandra Coyle <[email protected]> * debug log levels for test containers Signed-off-by: Cassandra Coyle <[email protected]> * update readme and add debugging info Signed-off-by: Cassandra Coyle <[email protected]> * add IT test for cross app call activity Signed-off-by: Cassandra Coyle <[email protected]> * cleanup test Signed-off-by: Cassandra Coyle <[email protected]> * sysout -> ctx.logger Signed-off-by: Cassandra Coyle <[email protected]> * reset pom Signed-off-by: Cassandra Coyle <[email protected]> * rm debug lines from readme Signed-off-by: Cassandra Coyle <[email protected]> * fix header + rm customports Signed-off-by: Cassandra Coyle <[email protected]> * use consts Signed-off-by: Cassandra Coyle <[email protected]> * rm waitfor call Signed-off-by: Cassandra Coyle <[email protected]> * rm pubsub Signed-off-by: Cassandra Coyle <[email protected]> * rm timeout Signed-off-by: Cassandra Coyle <[email protected]> * reset empty lines added Signed-off-by: Cassandra Coyle <[email protected]> * reset appname for daprcontainer Signed-off-by: Cassandra Coyle <[email protected]> * reset empty line diff Signed-off-by: Cassandra Coyle <[email protected]> * rm constructor info from readme Signed-off-by: Cassandra Coyle <[email protected]> * debug -> info Signed-off-by: Cassandra Coyle <[email protected]> * rm super.start Signed-off-by: Cassandra Coyle <[email protected]> * reset dapr container diff Signed-off-by: Cassandra Coyle <[email protected]> * add test for codecov Signed-off-by: Cassandra Coyle <[email protected]> * up timeout time to unblock PR Signed-off-by: Cassandra Coyle <[email protected]> * deps: Update durabletask-client to 1.5.10 Signed-off-by: Javier Aliaga <[email protected]> * ci: Revert build timeout Signed-off-by: Javier Aliaga <[email protected]> * review: Use ctx.getLogger Signed-off-by: Javier Aliaga <[email protected]> * chore: Fix review comments Signed-off-by: Javier Aliaga <[email protected]> * chore: more review comments fixes Signed-off-by: Javier Aliaga <[email protected]> * test: Use testcontainers in CrossApp IT test Signed-off-by: Javier Aliaga <[email protected]> * chore: Load classpath for IT with all dependencies Signed-off-by: Javier Aliaga <[email protected]> --------- Signed-off-by: Cassandra Coyle <[email protected]> Signed-off-by: Javier Aliaga <[email protected]> Co-authored-by: Javier Aliaga <[email protected]>
* cross app ex Signed-off-by: Cassandra Coyle <[email protected]> * update protoc cmd Signed-off-by: Cassandra Coyle <[email protected]> * feedback Signed-off-by: Cassandra Coyle <[email protected]> * builder pattern Signed-off-by: Cassandra Coyle <[email protected]> * fix protoc Signed-off-by: Cassandra Coyle <[email protected]> * debug log levels for test containers Signed-off-by: Cassandra Coyle <[email protected]> * update readme and add debugging info Signed-off-by: Cassandra Coyle <[email protected]> * add IT test for cross app call activity Signed-off-by: Cassandra Coyle <[email protected]> * cleanup test Signed-off-by: Cassandra Coyle <[email protected]> * sysout -> ctx.logger Signed-off-by: Cassandra Coyle <[email protected]> * reset pom Signed-off-by: Cassandra Coyle <[email protected]> * rm debug lines from readme Signed-off-by: Cassandra Coyle <[email protected]> * fix header + rm customports Signed-off-by: Cassandra Coyle <[email protected]> * use consts Signed-off-by: Cassandra Coyle <[email protected]> * rm waitfor call Signed-off-by: Cassandra Coyle <[email protected]> * rm pubsub Signed-off-by: Cassandra Coyle <[email protected]> * rm timeout Signed-off-by: Cassandra Coyle <[email protected]> * reset empty lines added Signed-off-by: Cassandra Coyle <[email protected]> * reset appname for daprcontainer Signed-off-by: Cassandra Coyle <[email protected]> * reset empty line diff Signed-off-by: Cassandra Coyle <[email protected]> * rm constructor info from readme Signed-off-by: Cassandra Coyle <[email protected]> * debug -> info Signed-off-by: Cassandra Coyle <[email protected]> * rm super.start Signed-off-by: Cassandra Coyle <[email protected]> * reset dapr container diff Signed-off-by: Cassandra Coyle <[email protected]> * add test for codecov Signed-off-by: Cassandra Coyle <[email protected]> * up timeout time to unblock PR Signed-off-by: Cassandra Coyle <[email protected]> * deps: Update durabletask-client to 1.5.10 Signed-off-by: Javier Aliaga <[email protected]> * ci: Revert build timeout Signed-off-by: Javier Aliaga <[email protected]> * review: Use ctx.getLogger Signed-off-by: Javier Aliaga <[email protected]> * chore: Fix review comments Signed-off-by: Javier Aliaga <[email protected]> * chore: more review comments fixes Signed-off-by: Javier Aliaga <[email protected]> * test: Use testcontainers in CrossApp IT test Signed-off-by: Javier Aliaga <[email protected]> * chore: Load classpath for IT with all dependencies Signed-off-by: Javier Aliaga <[email protected]> --------- Signed-off-by: Cassandra Coyle <[email protected]> Signed-off-by: Javier Aliaga <[email protected]> Co-authored-by: Javier Aliaga <[email protected]> Signed-off-by: Javier Aliaga <[email protected]>
* cross app ex Signed-off-by: Cassandra Coyle <[email protected]> * update protoc cmd Signed-off-by: Cassandra Coyle <[email protected]> * feedback Signed-off-by: Cassandra Coyle <[email protected]> * builder pattern Signed-off-by: Cassandra Coyle <[email protected]> * fix protoc Signed-off-by: Cassandra Coyle <[email protected]> * debug log levels for test containers Signed-off-by: Cassandra Coyle <[email protected]> * update readme and add debugging info Signed-off-by: Cassandra Coyle <[email protected]> * add IT test for cross app call activity Signed-off-by: Cassandra Coyle <[email protected]> * cleanup test Signed-off-by: Cassandra Coyle <[email protected]> * sysout -> ctx.logger Signed-off-by: Cassandra Coyle <[email protected]> * reset pom Signed-off-by: Cassandra Coyle <[email protected]> * rm debug lines from readme Signed-off-by: Cassandra Coyle <[email protected]> * fix header + rm customports Signed-off-by: Cassandra Coyle <[email protected]> * use consts Signed-off-by: Cassandra Coyle <[email protected]> * rm waitfor call Signed-off-by: Cassandra Coyle <[email protected]> * rm pubsub Signed-off-by: Cassandra Coyle <[email protected]> * rm timeout Signed-off-by: Cassandra Coyle <[email protected]> * reset empty lines added Signed-off-by: Cassandra Coyle <[email protected]> * reset appname for daprcontainer Signed-off-by: Cassandra Coyle <[email protected]> * reset empty line diff Signed-off-by: Cassandra Coyle <[email protected]> * rm constructor info from readme Signed-off-by: Cassandra Coyle <[email protected]> * debug -> info Signed-off-by: Cassandra Coyle <[email protected]> * rm super.start Signed-off-by: Cassandra Coyle <[email protected]> * reset dapr container diff Signed-off-by: Cassandra Coyle <[email protected]> * add test for codecov Signed-off-by: Cassandra Coyle <[email protected]> * up timeout time to unblock PR Signed-off-by: Cassandra Coyle <[email protected]> * deps: Update durabletask-client to 1.5.10 Signed-off-by: Javier Aliaga <[email protected]> * ci: Revert build timeout Signed-off-by: Javier Aliaga <[email protected]> * review: Use ctx.getLogger Signed-off-by: Javier Aliaga <[email protected]> * chore: Fix review comments Signed-off-by: Javier Aliaga <[email protected]> * chore: more review comments fixes Signed-off-by: Javier Aliaga <[email protected]> * test: Use testcontainers in CrossApp IT test Signed-off-by: Javier Aliaga <[email protected]> * chore: Load classpath for IT with all dependencies Signed-off-by: Javier Aliaga <[email protected]> --------- Signed-off-by: Cassandra Coyle <[email protected]> Signed-off-by: Javier Aliaga <[email protected]> Co-authored-by: Javier Aliaga <[email protected]> Signed-off-by: Javier Aliaga <[email protected]>
* cross app ex Signed-off-by: Cassandra Coyle <[email protected]> * update protoc cmd Signed-off-by: Cassandra Coyle <[email protected]> * feedback Signed-off-by: Cassandra Coyle <[email protected]> * builder pattern Signed-off-by: Cassandra Coyle <[email protected]> * fix protoc Signed-off-by: Cassandra Coyle <[email protected]> * debug log levels for test containers Signed-off-by: Cassandra Coyle <[email protected]> * update readme and add debugging info Signed-off-by: Cassandra Coyle <[email protected]> * add IT test for cross app call activity Signed-off-by: Cassandra Coyle <[email protected]> * cleanup test Signed-off-by: Cassandra Coyle <[email protected]> * sysout -> ctx.logger Signed-off-by: Cassandra Coyle <[email protected]> * reset pom Signed-off-by: Cassandra Coyle <[email protected]> * rm debug lines from readme Signed-off-by: Cassandra Coyle <[email protected]> * fix header + rm customports Signed-off-by: Cassandra Coyle <[email protected]> * use consts Signed-off-by: Cassandra Coyle <[email protected]> * rm waitfor call Signed-off-by: Cassandra Coyle <[email protected]> * rm pubsub Signed-off-by: Cassandra Coyle <[email protected]> * rm timeout Signed-off-by: Cassandra Coyle <[email protected]> * reset empty lines added Signed-off-by: Cassandra Coyle <[email protected]> * reset appname for daprcontainer Signed-off-by: Cassandra Coyle <[email protected]> * reset empty line diff Signed-off-by: Cassandra Coyle <[email protected]> * rm constructor info from readme Signed-off-by: Cassandra Coyle <[email protected]> * debug -> info Signed-off-by: Cassandra Coyle <[email protected]> * rm super.start Signed-off-by: Cassandra Coyle <[email protected]> * reset dapr container diff Signed-off-by: Cassandra Coyle <[email protected]> * add test for codecov Signed-off-by: Cassandra Coyle <[email protected]> * up timeout time to unblock PR Signed-off-by: Cassandra Coyle <[email protected]> * deps: Update durabletask-client to 1.5.10 Signed-off-by: Javier Aliaga <[email protected]> * ci: Revert build timeout Signed-off-by: Javier Aliaga <[email protected]> * review: Use ctx.getLogger Signed-off-by: Javier Aliaga <[email protected]> * chore: Fix review comments Signed-off-by: Javier Aliaga <[email protected]> * chore: more review comments fixes Signed-off-by: Javier Aliaga <[email protected]> * test: Use testcontainers in CrossApp IT test Signed-off-by: Javier Aliaga <[email protected]> * chore: Load classpath for IT with all dependencies Signed-off-by: Javier Aliaga <[email protected]> --------- Signed-off-by: Cassandra Coyle <[email protected]> Signed-off-by: Javier Aliaga <[email protected]> Co-authored-by: Javier Aliaga <[email protected]> Signed-off-by: Javier Aliaga <[email protected]>
Add support for cross app call activity calls.