mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-15 00:13:46 +00:00
Merge branch 'master' of https://github.com/maticnetwork/bor into v0.2.15-beta3-candidate
This commit is contained in:
commit
c8c92964e4
7 changed files with 30 additions and 29 deletions
5
.github/workflows/ci.yml
vendored
5
.github/workflows/ci.yml
vendored
|
|
@ -13,3 +13,8 @@ jobs:
|
||||||
run: make all
|
run: make all
|
||||||
- name: "Run tests"
|
- name: "Run tests"
|
||||||
run: make test
|
run: make test
|
||||||
|
- name: Upload coverage to Codecov
|
||||||
|
uses: codecov/codecov-action@v1
|
||||||
|
with:
|
||||||
|
file: ./cover.out
|
||||||
|
|
||||||
|
|
|
||||||
2
Makefile
2
Makefile
|
|
@ -46,7 +46,7 @@ ios:
|
||||||
|
|
||||||
test:
|
test:
|
||||||
# Skip mobile and cmd tests since they are being deprecated
|
# Skip mobile and cmd tests since they are being deprecated
|
||||||
go test -v $$(go list ./... | grep -v go-ethereum/cmd/)
|
go test -v $$(go list ./... | grep -v go-ethereum/cmd/) -cover -coverprofile=cover.out
|
||||||
|
|
||||||
lint: ## Run linters.
|
lint: ## Run linters.
|
||||||
$(GORUN) build/ci.go lint
|
$(GORUN) build/ci.go lint
|
||||||
|
|
|
||||||
|
|
@ -19,18 +19,4 @@ $ bor server
|
||||||
$ bor server --config ./legacy.toml
|
$ bor server --config ./legacy.toml
|
||||||
```
|
```
|
||||||
|
|
||||||
- Modules, vhost and Cors configuration are common for all jsonrpc endpoints.
|
|
||||||
|
|
||||||
Before:
|
|
||||||
|
|
||||||
```
|
|
||||||
$ bor --http --http.modules "eth,web" --ws --ws.modules "eth,web"
|
|
||||||
```
|
|
||||||
|
|
||||||
Now:
|
|
||||||
|
|
||||||
```
|
|
||||||
$ bor server --http --ws --jsonrpc.modules "eth,web"
|
|
||||||
```
|
|
||||||
|
|
||||||
- ```Admin```, ```Personal``` and account related endpoints in ```Eth``` are being removed from the JsonRPC interface. Some of this functionality will be moved to the new GRPC server for operational tasks.
|
- ```Admin```, ```Personal``` and account related endpoints in ```Eth``` are being removed from the JsonRPC interface. Some of this functionality will be moved to the new GRPC server for operational tasks.
|
||||||
|
|
|
||||||
|
|
@ -109,8 +109,6 @@ The ```bor server``` command runs the Bor client.
|
||||||
|
|
||||||
- ```jsonrpc.vhosts```: Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard.
|
- ```jsonrpc.vhosts```: Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard.
|
||||||
|
|
||||||
- ```jsonrpc.modules```: API's offered over the HTTP-RPC interface.
|
|
||||||
|
|
||||||
- ```http```: Enable the HTTP-RPC server.
|
- ```http```: Enable the HTTP-RPC server.
|
||||||
|
|
||||||
- ```http.addr```: HTTP-RPC server listening interface.
|
- ```http.addr```: HTTP-RPC server listening interface.
|
||||||
|
|
@ -119,6 +117,8 @@ The ```bor server``` command runs the Bor client.
|
||||||
|
|
||||||
- ```http.rpcprefix```: HTTP path path prefix on which JSON-RPC is served. Use '/' to serve on all paths.
|
- ```http.rpcprefix```: HTTP path path prefix on which JSON-RPC is served. Use '/' to serve on all paths.
|
||||||
|
|
||||||
|
- ```http.modules```: API's offered over the HTTP-RPC interface.
|
||||||
|
|
||||||
- ```ws```: Enable the WS-RPC server.
|
- ```ws```: Enable the WS-RPC server.
|
||||||
|
|
||||||
- ```ws.addr```: WS-RPC server listening interface.
|
- ```ws.addr```: WS-RPC server listening interface.
|
||||||
|
|
@ -127,6 +127,8 @@ The ```bor server``` command runs the Bor client.
|
||||||
|
|
||||||
- ```ws.rpcprefix```: HTTP path prefix on which JSON-RPC is served. Use '/' to serve on all paths.
|
- ```ws.rpcprefix```: HTTP path prefix on which JSON-RPC is served. Use '/' to serve on all paths.
|
||||||
|
|
||||||
|
- ```ws.modules```: API's offered over the WS-RPC interface.
|
||||||
|
|
||||||
- ```graphql```: Enable GraphQL on the HTTP-RPC server. Note that GraphQL can only be started if an HTTP server is started as well.
|
- ```graphql```: Enable GraphQL on the HTTP-RPC server. Note that GraphQL can only be started if an HTTP server is started as well.
|
||||||
|
|
||||||
### P2P Options
|
### P2P Options
|
||||||
|
|
|
||||||
|
|
@ -214,9 +214,6 @@ type JsonRPCConfig struct {
|
||||||
// IPCPath is the path of the ipc endpoint
|
// IPCPath is the path of the ipc endpoint
|
||||||
IPCPath string `hcl:"ipc-path,optional"`
|
IPCPath string `hcl:"ipc-path,optional"`
|
||||||
|
|
||||||
// Modules is the list of enabled api modules
|
|
||||||
Modules []string `hcl:"modules,optional"`
|
|
||||||
|
|
||||||
// VHost is the list of valid virtual hosts
|
// VHost is the list of valid virtual hosts
|
||||||
VHost []string `hcl:"vhost,optional"`
|
VHost []string `hcl:"vhost,optional"`
|
||||||
|
|
||||||
|
|
@ -256,6 +253,9 @@ type APIConfig struct {
|
||||||
|
|
||||||
// Host is the address to bind the api
|
// Host is the address to bind the api
|
||||||
Host string `hcl:"host,optional"`
|
Host string `hcl:"host,optional"`
|
||||||
|
|
||||||
|
// Modules is the list of enabled api modules
|
||||||
|
Modules []string `hcl:"modules,optional"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type GpoConfig struct {
|
type GpoConfig struct {
|
||||||
|
|
@ -438,7 +438,6 @@ func DefaultConfig() *Config {
|
||||||
JsonRPC: &JsonRPCConfig{
|
JsonRPC: &JsonRPCConfig{
|
||||||
IPCDisable: false,
|
IPCDisable: false,
|
||||||
IPCPath: "",
|
IPCPath: "",
|
||||||
Modules: []string{"web3", "net"},
|
|
||||||
Cors: []string{"*"},
|
Cors: []string{"*"},
|
||||||
VHost: []string{"*"},
|
VHost: []string{"*"},
|
||||||
GasCap: ethconfig.Defaults.RPCGasCap,
|
GasCap: ethconfig.Defaults.RPCGasCap,
|
||||||
|
|
@ -448,12 +447,14 @@ func DefaultConfig() *Config {
|
||||||
Port: 8545,
|
Port: 8545,
|
||||||
Prefix: "",
|
Prefix: "",
|
||||||
Host: "localhost",
|
Host: "localhost",
|
||||||
|
Modules: []string{"web3", "net"},
|
||||||
},
|
},
|
||||||
Ws: &APIConfig{
|
Ws: &APIConfig{
|
||||||
Enabled: false,
|
Enabled: false,
|
||||||
Port: 8546,
|
Port: 8546,
|
||||||
Prefix: "",
|
Prefix: "",
|
||||||
Host: "localhost",
|
Host: "localhost",
|
||||||
|
Modules: []string{"web3", "net"},
|
||||||
},
|
},
|
||||||
Graphql: &APIConfig{
|
Graphql: &APIConfig{
|
||||||
Enabled: false,
|
Enabled: false,
|
||||||
|
|
@ -849,11 +850,11 @@ func (c *Config) buildNode() (*node.Config, error) {
|
||||||
ListenAddr: c.P2P.Bind + ":" + strconv.Itoa(int(c.P2P.Port)),
|
ListenAddr: c.P2P.Bind + ":" + strconv.Itoa(int(c.P2P.Port)),
|
||||||
DiscoveryV5: c.P2P.Discovery.V5Enabled,
|
DiscoveryV5: c.P2P.Discovery.V5Enabled,
|
||||||
},
|
},
|
||||||
HTTPModules: c.JsonRPC.Modules,
|
HTTPModules: c.JsonRPC.Http.Modules,
|
||||||
HTTPCors: c.JsonRPC.Cors,
|
HTTPCors: c.JsonRPC.Cors,
|
||||||
HTTPVirtualHosts: c.JsonRPC.VHost,
|
HTTPVirtualHosts: c.JsonRPC.VHost,
|
||||||
HTTPPathPrefix: c.JsonRPC.Http.Prefix,
|
HTTPPathPrefix: c.JsonRPC.Http.Prefix,
|
||||||
WSModules: c.JsonRPC.Modules,
|
WSModules: c.JsonRPC.Ws.Modules,
|
||||||
WSOrigins: c.JsonRPC.Cors,
|
WSOrigins: c.JsonRPC.Cors,
|
||||||
WSPathPrefix: c.JsonRPC.Ws.Prefix,
|
WSPathPrefix: c.JsonRPC.Ws.Prefix,
|
||||||
GraphQLCors: c.JsonRPC.Cors,
|
GraphQLCors: c.JsonRPC.Cors,
|
||||||
|
|
|
||||||
|
|
@ -263,11 +263,6 @@ func (c *Command) Flags() *flagset.Flagset {
|
||||||
Usage: "Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard.",
|
Usage: "Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard.",
|
||||||
Value: &c.cliConfig.JsonRPC.VHost,
|
Value: &c.cliConfig.JsonRPC.VHost,
|
||||||
})
|
})
|
||||||
f.SliceStringFlag(&flagset.SliceStringFlag{
|
|
||||||
Name: "jsonrpc.modules",
|
|
||||||
Usage: "API's offered over the HTTP-RPC interface",
|
|
||||||
Value: &c.cliConfig.JsonRPC.Modules,
|
|
||||||
})
|
|
||||||
|
|
||||||
// http options
|
// http options
|
||||||
f.BoolFlag(&flagset.BoolFlag{
|
f.BoolFlag(&flagset.BoolFlag{
|
||||||
|
|
@ -290,6 +285,12 @@ func (c *Command) Flags() *flagset.Flagset {
|
||||||
Usage: "HTTP path path prefix on which JSON-RPC is served. Use '/' to serve on all paths.",
|
Usage: "HTTP path path prefix on which JSON-RPC is served. Use '/' to serve on all paths.",
|
||||||
Value: &c.cliConfig.JsonRPC.Http.Prefix,
|
Value: &c.cliConfig.JsonRPC.Http.Prefix,
|
||||||
})
|
})
|
||||||
|
f.SliceStringFlag(&flagset.SliceStringFlag{
|
||||||
|
Name: "http.modules",
|
||||||
|
Usage: "API's offered over the HTTP-RPC interface",
|
||||||
|
Value: &c.cliConfig.JsonRPC.Http.Modules,
|
||||||
|
})
|
||||||
|
|
||||||
// ws options
|
// ws options
|
||||||
f.BoolFlag(&flagset.BoolFlag{
|
f.BoolFlag(&flagset.BoolFlag{
|
||||||
Name: "ws",
|
Name: "ws",
|
||||||
|
|
@ -311,6 +312,12 @@ func (c *Command) Flags() *flagset.Flagset {
|
||||||
Usage: "HTTP path prefix on which JSON-RPC is served. Use '/' to serve on all paths.",
|
Usage: "HTTP path prefix on which JSON-RPC is served. Use '/' to serve on all paths.",
|
||||||
Value: &c.cliConfig.JsonRPC.Ws.Prefix,
|
Value: &c.cliConfig.JsonRPC.Ws.Prefix,
|
||||||
})
|
})
|
||||||
|
f.SliceStringFlag(&flagset.SliceStringFlag{
|
||||||
|
Name: "ws.modules",
|
||||||
|
Usage: "API's offered over the WS-RPC interface",
|
||||||
|
Value: &c.cliConfig.JsonRPC.Ws.Modules,
|
||||||
|
})
|
||||||
|
|
||||||
// graphql options
|
// graphql options
|
||||||
f.BoolFlag(&flagset.BoolFlag{
|
f.BoolFlag(&flagset.BoolFlag{
|
||||||
Name: "graphql",
|
Name: "graphql",
|
||||||
|
|
|
||||||
|
|
@ -96,7 +96,7 @@ func NewServer(config *Config) (*Server, error) {
|
||||||
|
|
||||||
// graphql is started from another place
|
// graphql is started from another place
|
||||||
if config.JsonRPC.Graphql.Enabled {
|
if config.JsonRPC.Graphql.Enabled {
|
||||||
if err := graphql.New(stack, backend.APIBackend, config.JsonRPC.Cors, config.JsonRPC.Modules); err != nil {
|
if err := graphql.New(stack, backend.APIBackend, config.JsonRPC.Cors, config.JsonRPC.VHost); err != nil {
|
||||||
return nil, fmt.Errorf("failed to register the GraphQL service: %v", err)
|
return nil, fmt.Errorf("failed to register the GraphQL service: %v", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue