Skip to content
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

Support remote endpoint. #877

Merged
merged 5 commits into from
Jun 19, 2023
Merged

Conversation

artursouza
Copy link
Member

Description

Support remote sidecar configuration via consistent env variable.

Issue reference

We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.

Please reference the issue this PR will close: #876

Checklist

Please make sure you've completed the relevant tasks for this PR, out of the following list:

  • Code compiles correctly
  • Created/updated tests
  • Extended the documentation

@artursouza artursouza requested review from a team as code owners June 12, 2023 04:28
@artursouza artursouza force-pushed the remote_endpoint branch 2 times, most recently from ae18336 to 22c3cfb Compare June 12, 2023 05:51
Signed-off-by: Artur Souza <[email protected]>
@@ -140,6 +140,10 @@ public void use() {
System.getProperties().setProperty(
Properties.API_METHOD_INVOCATION_PROTOCOL.getName(),
DaprApiProtocol.GRPC.name());
System.getProperties().setProperty(
Properties.GRPC_ENDPOINT.getName(), "http://127.0.0.1:" + this.ports.getGrpcPort());
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

shouldn't this just be 127.0.0.1? Why is there an http prefix?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is an endpoint, so the schema is part of it. Users will also use http vs https and the port will be parsed automatically.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why are we using a http scheme for a gRPC endpoint?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gRPC can operate over HTTP. In this case, we use to parse the port. The .NET SDK for gRPC communication takes in the entire URL as an endpoint. See https://learn.microsoft.com/en-us/aspnet/core/tutorials/grpc/grpc-start?view=aspnetcore-7.0&tabs=visual-studio#create-the-greeter-client

sdk/src/test/java/io/dapr/client/DaprClientGrpcTest.java Outdated Show resolved Hide resolved
String grpcEndpoint = Properties.GRPC_ENDPOINT.get();
if ((grpcEndpoint != null) && !grpcEndpoint.isEmpty()) {
URI uri = URI.create(grpcEndpoint);
insecure = uri.getScheme().equalsIgnoreCase("http");
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See, we use the schema here.

@codecov
Copy link

codecov bot commented Jun 15, 2023

Codecov Report

Merging #877 (f5c1364) into master (d8dbb0e) will decrease coverage by 0.46%.
The diff coverage is 64.77%.

@@             Coverage Diff              @@
##             master     #877      +/-   ##
============================================
- Coverage     77.82%   77.37%   -0.46%     
- Complexity     1267     1268       +1     
============================================
  Files           116      117       +1     
  Lines          3892     3924      +32     
  Branches        458      467       +9     
============================================
+ Hits           3029     3036       +7     
- Misses          630      649      +19     
- Partials        233      239       +6     
Impacted Files Coverage Δ
...rc/main/java/io/dapr/client/GrpcChannelFacade.java 25.00% <25.00%> (ø)
.../src/main/java/io/dapr/client/DaprHttpBuilder.java 85.71% <33.33%> (-8.74%) ⬇️
sdk/src/main/java/io/dapr/client/DaprHttp.java 87.80% <63.63%> (-4.51%) ⬇️
...rc/main/java/io/dapr/client/DaprClientBuilder.java 68.75% <68.75%> (+4.46%) ⬆️
...k/src/main/java/io/dapr/client/DaprClientGrpc.java 89.36% <86.11%> (+0.29%) ⬆️
sdk/src/main/java/io/dapr/config/Properties.java 83.33% <100.00%> (+1.51%) ⬆️

... and 1 file with indirect coverage changes

@artursouza artursouza merged commit 201dbc5 into dapr:master Jun 19, 2023
macromania pushed a commit to ISE-Neutrino/java-sdk that referenced this pull request Jun 21, 2023
* Support remote endpoint.

Signed-off-by: Artur Souza <[email protected]>

* Use GRPC_ENDPOINT and HTTP_ENDPOINT in integration tests.

Signed-off-by: Artur Souza <[email protected]>

* Fix happy path for waiting for sidecar test.

Signed-off-by: Artur Souza <[email protected]>

---------

Signed-off-by: Artur Souza <[email protected]>
Co-authored-by: Mukundan Sundararajan <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>
@artursouza artursouza mentioned this pull request Jun 22, 2023
3 tasks
mukundansundar added a commit that referenced this pull request Sep 13, 2023
* Add ElementType.Type to ActorType (#812)

Signed-off-by: LionTao <[email protected]>

Signed-off-by: LionTao <[email protected]>
Co-authored-by: Mukundan Sundararajan <[email protected]>
Co-authored-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Bump codecov/codecov-action from 3.1.0 to 3.1.1 (#788)

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/master/CHANGELOG.md)
- [Commits](codecov/codecov-action@v3.1.0...v3.1.1)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Update springboot to latest minor.patch version. (#826)

Signed-off-by: Mahmut Canga <[email protected]>

* Use runtime 1.10.0-rc.X and CLI 1.10.0-rc.X (#827)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Upgrade the version to 1.9.0-SNAPSHOT (#829)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Generate updated javadocs for 1.8.0 (#836)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Update Dapr runtime and CLI to 1.10. (#837)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Inject autoconfiguration in the Spring Boot 3 style (#831)

* Bump from spring boot 2.3.5.RELEASE to 2.7.8

Signed-off-by: Sergio <[email protected]>
(cherry picked from commit 9152c91)

* Ensure old versions of spring boot are still compatible

Signed-off-by: Sergio <[email protected]>

---------

Signed-off-by: champel <[email protected]>
Signed-off-by: Sergio <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Bump from reactor 2.3.5.RELEASE to 2.7.8 (#830)

* Bump from reactor 2.3.5.RELEASE to 2.7.8

Signed-off-by: Sergio <[email protected]>

* Simplification

Signed-off-by: Sergio <[email protected]>

---------

Signed-off-by: Sergio <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Test multiple reminder state types + improve timer tests. (#855)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Convert Config API to Stable endpoints. (#846)

Signed-off-by: Mahmut Canga <[email protected]>

* Add PubSub subscriber examples over gPRC (#833)

* add grpc subscriber

Signed-off-by: MregXN <[email protected]>

* modify README.md

Signed-off-by: MregXN <[email protected]>

* modify README.md in examples

Signed-off-by: MregXN <[email protected]>

* Modify DaprApplication to support examples where protocol is not specified.

Signed-off-by: MregXN <[email protected]>

* modify formatter to pass checkstyle

Signed-off-by: MregXN <[email protected]>

* Update springboot to latest minor.patch version. (#826)

Signed-off-by: MregXN <[email protected]>

* Use runtime 1.10.0-rc.X and CLI 1.10.0-rc.X (#827)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: MregXN <[email protected]>

* Upgrade the version to 1.9.0-SNAPSHOT (#829)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: MregXN <[email protected]>

* Generate updated javadocs for 1.8.0 (#836)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: MregXN <[email protected]>

* Update Dapr runtime and CLI to 1.10. (#837)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: MregXN <[email protected]>

* Inject autoconfiguration in the Spring Boot 3 style (#831)

* Bump from spring boot 2.3.5.RELEASE to 2.7.8

Signed-off-by: Sergio <[email protected]>
(cherry picked from commit 9152c91)

* Ensure old versions of spring boot are still compatible

Signed-off-by: Sergio <[email protected]>

---------

Signed-off-by: champel <[email protected]>
Signed-off-by: Sergio <[email protected]>
Signed-off-by: MregXN <[email protected]>

* Bump from reactor 2.3.5.RELEASE to 2.7.8 (#830)

* Bump from reactor 2.3.5.RELEASE to 2.7.8

Signed-off-by: Sergio <[email protected]>

* Simplification

Signed-off-by: Sergio <[email protected]>

---------

Signed-off-by: Sergio <[email protected]>
Signed-off-by: MregXN <[email protected]>

* rerun checks

Signed-off-by: MregXN <[email protected]>

* modify the way of grpc server starts

Signed-off-by: MregXN <[email protected]>

* modify README

Signed-off-by: MregXN <[email protected]>

* Update pom.xml

Signed-off-by: MregXN <[email protected]>

---------

Signed-off-by: MregXN <[email protected]>
Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: champel <[email protected]>
Signed-off-by: Sergio <[email protected]>
Signed-off-by: MregXN <[email protected]>
Co-authored-by: Artur Souza <[email protected]>
Co-authored-by: champel <[email protected]>
Co-authored-by: Mukundan Sundararajan <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* auto validate actors (#863)

Signed-off-by: Mukundan Sundararajan <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Bump codecov/codecov-action from 3.1.1 to 3.1.4 (#862)

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3.1.1 to 3.1.4.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](codecov/codecov-action@v3.1.1...v3.1.4)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Mahmut Canga <[email protected]>

* Fix 787 (#832)

* prepare before testing

* Update tests

* fix checkstyle

---------

Co-authored-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Upgrade to 1.11 RCs. (#867)

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Init for workflows

Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Updating some javadocs and Years.

Signed-off-by: Hannah Kennedy <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Add missing Header

Signed-off-by: Hannah Kennedy <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* respond to PR feedback

Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Update workflow example README

Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Address PR feedback

Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* fixup deprecated pom.xml variable

Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Updates based on PR feedback

Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Update pom files per feedback

Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* GetInstanceState implementation (#1)

* addiny getInstanceMetadata, waitForInstanceStart and waitForInstanceCompletion implementation
---------

Co-authored-by: aymanmahmoud_microsoft <[email protected]>
Signed-off-by: Aymand Mahmoud <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Management API

Signed-off-by: Mahmut Canga <[email protected]>

* remove try/catch

Signed-off-by: Mahmut Canga <[email protected]>

* implementing getIsReplaying() method for Authoring API (#7)

Co-authored-by: Julio Rezende <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>
Signed-off-by: Julio Rezende <[email protected]>

* Implementing getCurrentInstant() authoring method (#5)

Co-authored-by: Julio Rezende <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>
Signed-off-by: Julio Rezende <[email protected]>

* Activity Implementation (#3)

Signed-off-by: Mahmut Canga <[email protected]>

* fixing issue with getIsReplaying() call (#8)

Co-authored-by: Julio Rezende <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>
Signed-off-by: Julio Rezende <[email protected]>

* Generate updated javadocs for 1.9.0 (#878)

* Generate updated javadocs for 1.9.0

Signed-off-by: Artur Souza <[email protected]>

* Update _index.md

Signed-off-by: Artur Souza <[email protected]>

---------

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Add .sdkmanrc config file and JDK installation instructions (#873)

* Add .sdkmanrc file with installation instructions

Signed-off-by: Emanuel Alves <[email protected]>

* Update README.md

Signed-off-by: Artur Souza <[email protected]>

---------

Signed-off-by: Emanuel Alves <[email protected]>
Signed-off-by: Artur Souza <[email protected]>
Co-authored-by: Artur Souza <[email protected]>
Co-authored-by: Artur Souza <[email protected]>
Co-authored-by: Mukundan Sundararajan <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Add unit testing example

Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* implementing getIsReplaying() method for Authoring API (#7)

Co-authored-by: Julio Rezende <[email protected]>

Signed-off-by: Julio Rezende <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* fix parent pom

Signed-off-by: Mahmut Canga <[email protected]>

* Send Event Implementation (#10)

Signed-off-by: Mahmut Canga <[email protected]>

* Implementing allOf, anyOf, createTimer methods (#11)

Co-authored-by: Julio Rezende <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>
Co-authored-by: Julio Rezende <[email protected]>

* Support remote endpoint. (#877)

* Support remote endpoint.

Signed-off-by: Artur Souza <[email protected]>

* Use GRPC_ENDPOINT and HTTP_ENDPOINT in integration tests.

Signed-off-by: Artur Souza <[email protected]>

* Fix happy path for waiting for sidecar test.

Signed-off-by: Artur Souza <[email protected]>

---------

Signed-off-by: Artur Souza <[email protected]>
Co-authored-by: Mukundan Sundararajan <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* Add callSubWorkflow Implementation

Co-authored-by: Aymand Mahmoud <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>
Signed-off-by: Aymand Mahmoud <[email protected]>

* rename DemoSubWorkflow

Co-authored-by: Aymand Mahmoud <[email protected]>
Signed-off-by: Aymand Mahmoud <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* continueAsNew Implementation (#13)

Signed-off-by: Mahmut Canga <[email protected]>

* remove duplicate class

Signed-off-by: Mahmut Canga <[email protected]>

* add missing mockito test dependency

Signed-off-by: Mahmut Canga <[email protected]>

* use new workflow client implementation

Signed-off-by: Mahmut Canga <[email protected]>

* moved implementations to new workflow and context

Signed-off-by: Mahmut Canga <[email protected]>

* relocate duplicate implemantation

Signed-off-by: Mahmut Canga <[email protected]>

* remove duplicate test and increase test coverage

Signed-off-by: Mahmut Canga <[email protected]>

* Implement retry and timeout policy for gRPC client. (#889)

* Implement retry and timeout policy for gRPC client.

Signed-off-by: Artur Souza <[email protected]>

* Fix invoke actor after aborted flow.

Signed-off-by: Artur Souza <[email protected]>

---------

Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>

* renamed getIsReplaying

Signed-off-by: Mahmut Canga <[email protected]>

* rollback changes on client

Signed-off-by: Mahmut Canga <[email protected]>

* move workflow runtime state package

Signed-off-by: Mahmut Canga <[email protected]>

* rename workflow instance state to status

Signed-off-by: Mahmut Canga <[email protected]>

* remove unnecessary else

Signed-off-by: Mahmut Canga <[email protected]>

* removed unknown state

Signed-off-by: Mahmut Canga <[email protected]>

* updated comment

Signed-off-by: Mahmut Canga <[email protected]>

* updated workflow failure details

Signed-off-by: Mahmut Canga <[email protected]>

* fix style issues

Signed-off-by: Mahmut Canga <[email protected]>

* rollback merge change

Signed-off-by: Mahmut Canga <[email protected]>

* fixed pom files

Signed-off-by: Mahmut Canga <[email protected]>

* rollback actors pom changes on autoformat

Signed-off-by: Mahmut Canga <[email protected]>

* fixe actors pom

Signed-off-by: Mahmut Canga <[email protected]>

* fix styling on actors pom

Signed-off-by: Mahmut Canga <[email protected]>

* fix pom spacing

Signed-off-by: Mahmut Canga <[email protected]>

* move test to match the package

Signed-off-by: Mahmut Canga <[email protected]>

* add missing dependencies

Signed-off-by: Mahmut Canga <[email protected]>

* increased test coverage

Signed-off-by: Mahmut Canga <[email protected]>

* moved workflow runtime package

Signed-off-by: Mahmut Canga <[email protected]>

* add exception for missing case

Signed-off-by: Mahmut Canga <[email protected]>

* add null check for metadata

Signed-off-by: Mahmut Canga <[email protected]>

* add runtime exception error messages

Signed-off-by: Mahmut Canga <[email protected]>

* update try catch scope

Signed-off-by: Mahmut Canga <[email protected]>

* update activity definition to an interface

Signed-off-by: Mahmut Canga <[email protected]>

* update comments

Signed-off-by: Mahmut Canga <[email protected]>

* removed redundant method

Signed-off-by: Mahmut Canga <[email protected]>

* PR updates

Signed-off-by: Mahmut Canga <[email protected]>

---------

Signed-off-by: LionTao <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: champel <[email protected]>
Signed-off-by: Sergio <[email protected]>
Signed-off-by: MregXN <[email protected]>
Signed-off-by: MregXN <[email protected]>
Signed-off-by: Mukundan Sundararajan <[email protected]>
Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Hannah Kennedy <[email protected]>
Signed-off-by: Bill DeRusha <[email protected]>
Signed-off-by: Aymand Mahmoud <[email protected]>
Signed-off-by: Julio Rezende <[email protected]>
Signed-off-by: Emanuel Alves <[email protected]>
Signed-off-by: Mahmut Canga <[email protected]>
Co-authored-by: LionTao <[email protected]>
Co-authored-by: Mukundan Sundararajan <[email protected]>
Co-authored-by: Artur Souza <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: champel <[email protected]>
Co-authored-by: MregXN <[email protected]>
Co-authored-by: MatejNedic <[email protected]>
Co-authored-by: Bill DeRusha <[email protected]>
Co-authored-by: Hannah Kennedy <[email protected]>
Co-authored-by: Bill DeRusha <[email protected]>
Co-authored-by: Aymalla <[email protected]>
Co-authored-by: aymanmahmoud_microsoft <[email protected]>
Co-authored-by: swetakumari <[email protected]>
Co-authored-by: julio <[email protected]>
Co-authored-by: Julio Rezende <[email protected]>
Co-authored-by: Emanuel Alves <[email protected]>
Co-authored-by: Artur Souza <[email protected]>
@mukundansundar mukundansundar modified the milestone: v1.10 Sep 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support DAPR_HTTP_ENDPOINT and/or DAPR_GRPC_ENDPOINT
2 participants