mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2025-01-05 09:14:28 +00:00
d077483577
* v3 import renamings * tidy * fmt * rev * Update beacon-chain/core/epoch/precompute/reward_penalty_test.go * Update beacon-chain/core/helpers/validators_test.go * Update beacon-chain/db/alias.go * Update beacon-chain/db/alias.go * Update beacon-chain/db/alias.go * Update beacon-chain/db/iface/BUILD.bazel * Update beacon-chain/db/kv/kv.go * Update beacon-chain/db/kv/state.go * Update beacon-chain/rpc/prysm/v1alpha1/validator/attester_test.go * Update beacon-chain/rpc/prysm/v1alpha1/validator/attester_test.go * Update beacon-chain/sync/initial-sync/service.go * fix deps * fix bad replacements * fix bad replacements * change back * gohashtree version * fix deps Co-authored-by: Nishant Das <nishdas93@gmail.com> Co-authored-by: Potuz <potuz@prysmaticlabs.com>
55 lines
1.4 KiB
Go
55 lines
1.4 KiB
Go
package builder
|
|
|
|
import (
|
|
"github.com/prysmaticlabs/prysm/v3/beacon-chain/blockchain"
|
|
"github.com/prysmaticlabs/prysm/v3/beacon-chain/db"
|
|
"github.com/prysmaticlabs/prysm/v3/cmd/beacon-chain/flags"
|
|
"github.com/prysmaticlabs/prysm/v3/network"
|
|
"github.com/prysmaticlabs/prysm/v3/network/authorization"
|
|
"github.com/urfave/cli/v2"
|
|
)
|
|
|
|
type Option func(s *Service) error
|
|
|
|
// FlagOptions for builder service flag configurations.
|
|
func FlagOptions(c *cli.Context) ([]Option, error) {
|
|
endpoint := c.String(flags.MevRelayEndpoint.Name)
|
|
opts := []Option{
|
|
WithBuilderEndpoints(endpoint),
|
|
}
|
|
return opts, nil
|
|
}
|
|
|
|
// WithBuilderEndpoints sets the endpoint for the beacon chain builder service.
|
|
func WithBuilderEndpoints(endpoint string) Option {
|
|
return func(s *Service) error {
|
|
s.cfg.builderEndpoint = covertEndPoint(endpoint)
|
|
return nil
|
|
}
|
|
}
|
|
|
|
// WithHeadFetcher gets the head info from chain service.
|
|
func WithHeadFetcher(svc *blockchain.Service) Option {
|
|
return func(s *Service) error {
|
|
s.cfg.headFetcher = svc
|
|
return nil
|
|
}
|
|
}
|
|
|
|
// WithDatabase for head access.
|
|
func WithDatabase(beaconDB db.HeadAccessDatabase) Option {
|
|
return func(s *Service) error {
|
|
s.cfg.beaconDB = beaconDB
|
|
return nil
|
|
}
|
|
}
|
|
|
|
func covertEndPoint(ep string) network.Endpoint {
|
|
return network.Endpoint{
|
|
Url: ep,
|
|
Auth: network.AuthorizationData{ // Auth is not used for builder.
|
|
Method: authorization.None,
|
|
Value: "",
|
|
}}
|
|
}
|