Class: Google::Apis::BlockchainnodeengineV1::ValidatorConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/blockchainnodeengine_v1/classes.rb,
lib/google/apis/blockchainnodeengine_v1/representations.rb,
lib/google/apis/blockchainnodeengine_v1/representations.rb

Overview

Configuration for validator-related parameters on the beacon client, and for any GCP-managed validator client.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ValidatorConfig

Returns a new instance of ValidatorConfig.



624
625
626
# File 'lib/google/apis/blockchainnodeengine_v1/classes.rb', line 624

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#beacon_fee_recipientString

An Ethereum address which the beacon client will send fee rewards to if no recipient is configured in the validator client. See https://lighthouse-book. sigmaprime.io/suggested-fee-recipient.html or https://docs.prylabs.network/ docs/execution-node/fee-recipient for examples of how this is used. Note that while this is often described as "suggested", as we run the execution node we can trust the execution node, and therefore this is considered enforced. Corresponds to the JSON property beaconFeeRecipient

Returns:

  • (String)


609
610
611
# File 'lib/google/apis/blockchainnodeengine_v1/classes.rb', line 609

def beacon_fee_recipient
  @beacon_fee_recipient
end

#managed_validator_clientBoolean Also known as: managed_validator_client?

Immutable. When true, deploys a GCP-managed validator client alongside the beacon client. Corresponds to the JSON property managedValidatorClient

Returns:

  • (Boolean)


615
616
617
# File 'lib/google/apis/blockchainnodeengine_v1/classes.rb', line 615

def managed_validator_client
  @managed_validator_client
end

#mev_relay_urlsArray<String>

URLs for MEV-relay services to use for block building. When set, a GCP-managed MEV-boost service is configured on the beacon client. Corresponds to the JSON property mevRelayUrls

Returns:

  • (Array<String>)


622
623
624
# File 'lib/google/apis/blockchainnodeengine_v1/classes.rb', line 622

def mev_relay_urls
  @mev_relay_urls
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



629
630
631
632
633
# File 'lib/google/apis/blockchainnodeengine_v1/classes.rb', line 629

def update!(**args)
  @beacon_fee_recipient = args[:beacon_fee_recipient] if args.key?(:beacon_fee_recipient)
  @managed_validator_client = args[:managed_validator_client] if args.key?(:managed_validator_client)
  @mev_relay_urls = args[:mev_relay_urls] if args.key?(:mev_relay_urls)
end