-
Notifications
You must be signed in to change notification settings - Fork 839
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
Allow Besu to host RPC endpoints via a plugin. #2754
Conversation
8ec234a
to
8eb98de
Compare
Watching! This is a great addition |
5dce0d8
to
908bfac
Compare
b1b29e5
to
6badf77
Compare
re-implementation of PegaSysEng/pantheon#1909 Signed-off-by: Antony Denyer <git@antonydenyer.co.uk> Co-authored-by: Danno Ferrin <danno.ferrin@gmail.com>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
…-apis Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
6badf77
to
58bcf4d
Compare
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, I wonder whether we want to enable the ability to override built-in rpc endpoints though?
besu/src/main/java/org/hyperledger/besu/services/RpcEndpointServiceImpl.java
Show resolved
Hide resolved
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
1187b53
to
fc65ddf
Compare
LGTM. I can't think of a good reason to need to override built in endpoints. |
...ts/test-plugins/src/main/java/org/hyperledger/besu/plugins/TestRpcEndpointServicePlugin.java
Outdated
Show resolved
Hide resolved
...rc/test/java/org/hyperledger/besu/tests/acceptance/plugins/RpcEndpointServicePluginTest.java
Show resolved
Hide resolved
...ain/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/PluginJsonRpcMethod.java
Outdated
Show resolved
Hide resolved
plugin-api/src/main/java/org/hyperledger/besu/plugin/services/RpcEndpointService.java
Outdated
Show resolved
Hide resolved
plugin-api/src/main/java/org/hyperledger/besu/plugin/services/RpcEndpointService.java
Outdated
Show resolved
Hide resolved
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
fix build Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
0d48b93
to
9a2be51
Compare
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
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
commit 75b4a41 Author: Jason Frame <jasonwframe@gmail.com> Date: Tue Oct 12 13:47:01 2021 +1000 add block header test case Signed-off-by: Jason Frame <jasonwframe@gmail.com> commit 7d3001d Author: Jason Frame <jasonwframe@gmail.com> Date: Tue Oct 12 13:31:08 2021 +1000 undo unintentional change fixing unit test Signed-off-by: Jason Frame <jasonwframe@gmail.com> commit 772a428 Author: Jason Frame <jasonwframe@gmail.com> Date: Tue Oct 12 13:21:56 2021 +1000 Qbft validation selection was incorrectly being applied for non validator selection mode transitions Signed-off-by: Jason Frame <jasonwframe@gmail.com> commit a30c314 Author: Antony Denyer <git@antonydenyer.co.uk> Date: Mon Oct 11 09:45:52 2021 +0100 Allow Besu to host RPC endpoints via a plugin. (hyperledger#2754) This is a re-implementation of the initial POC done in PegaSysEng/pantheon#1909 by Danno Ferrin <danno.ferrin@gmail.com> * Only enable plugin rpc api when enabled on --rpc-http-api or --rpc-ws-apis * Only allow new rpc endpoints to be defined Signed-off-by: Antony Denyer <git@antonydenyer.co.uk> commit fc687ab Author: Simon Dudley <simon.dudley@consensys.net> Date: Mon Oct 11 08:18:03 2021 +0100 Qbft RPCs should be disabled after starting with or switching to use validator contract (hyperledger#2817) Signed-off-by: Simon Dudley <simon.dudley@consensys.net> commit 93013e9 Author: Usman Saleem <usman@usmans.info> Date: Fri Oct 8 15:51:40 2021 +1000 Add QBFT support for evmtool (hyperledger#2807) * qbft support in evmtool Signed-off-by: Usman Saleem <usman@usmans.info> commit 215e18c Author: Sally MacFarlane <sally.macfarlane@consensys.net> Date: Fri Oct 8 12:32:52 2021 +1000 master.svg -> main.svg (hyperledger#2864) Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net> commit 82ecef6 Author: Sally MacFarlane <sally.macfarlane@consensys.net> Date: Fri Oct 8 11:13:11 2021 +1000 Fixed build badge (hyperledger#2863) * typos Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net> * master -> main Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net> commit 5fbf0b1 Author: Sally MacFarlane <sally.macfarlane@consensys.net> Date: Thu Oct 7 19:22:47 2021 +1000 changed to trace level logging (hyperledger#2858) Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net> commit fdd9352 Author: Diego López León <dieguitoll@gmail.com> Date: Wed Oct 6 21:51:33 2021 -0300 Add a bash/zsh autocomplete script to distributions (hyperledger#538) (hyperledger#2854) Signed-off-by: Diego López León <dieguitoll@gmail.com>
This is a re-implementation of the initial POC done in PegaSysEng/pantheon#1909 by Danno Ferrin <danno.ferrin@gmail.com> * Only enable plugin rpc api when enabled on --rpc-http-api or --rpc-ws-apis * Only allow new rpc endpoints to be defined Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
This is a re-implementation of the initial POC done in PegaSysEng/pantheon#1909 by Danno Ferrin <danno.ferrin@gmail.com> * Only enable plugin rpc api when enabled on --rpc-http-api or --rpc-ws-apis * Only allow new rpc endpoints to be defined Signed-off-by: Antony Denyer <git@antonydenyer.co.uk> Signed-off-by: Justin Florentine <justin.florentine@consensys.net>
This is a re-implementation of the initial POC done in PegaSysEng/pantheon#1909 by Danno Ferrin <danno.ferrin@gmail.com> * Only enable plugin rpc api when enabled on --rpc-http-api or --rpc-ws-apis * Only allow new rpc endpoints to be defined Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
PR description
re-implementation of PegaSysEng/pantheon#1909
Implements #1317
You can now register endpoints using
To enable the endpoint you must utilise
--rpc-http-api
and specify the namespace e.g--rpc-http-api namespace
.Changelog