executionClient

package
v0.1.21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 17, 2024 License: Apache-2.0, MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Reth       = "reth"
	Nethermind = "nethermind"
	Geth       = "geth"
	Source     = "source"
	Binary     = "binary"
	Docker     = "docker"
	Kubernetes = "kubernetes"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ExecutionClientComponent

type ExecutionClientComponent struct {
	pulumi.ResourceState
}

func NewExecutionClientComponent

func NewExecutionClientComponent(ctx *pulumi.Context, name string, args *ExecutionClientComponentArgs, opts ...pulumi.ResourceOption) (*ExecutionClientComponent, error)

NewExecutionClientComponent creates a new instance of the ExecutionClientComponent and calls the appropriate component constructor based on the client being requested. It returns a pointer to the ExecutionClientComponent and an error

Example usage:

client, err := executionClient.NewExecutionClientComponent(ctx, "testRethExecutionClient", &executionClient.ExecutionClientComponentArgs{
	Connection:     &remote.ConnectionArgs{
		User:       cfg.Require("sshUser"),
		Host:       cfg.Require("sshHost"),
		PrivateKey: cfg.RequireSecret("sshPrivateKey"),
	},
	Client:         "reth",
	Network:        "mainnet",
	DeploymentType: "source",
	DataDir:        "/data/mainnet/reth",
})

func NewGethComponent

NewGethComponent creates a new ExecutionClientComponent resource that represents a geth client and the necessary infrastructure to run it.

Example usage:

client, err := executionClient.NewGethComponent(ctx, "testGethExecutionClient", &executionClient.ExecutionClientComponentArgs{
	Connection:     &remote.ConnectionArgs{
		User:       cfg.Require("sshUser"), // username for the ssh connection
		Host:       cfg.Require("sshHost"), // ip address of the host
		PrivateKey: cfg.RequireSecret("sshPrivateKey"), // must be a secret, RequireSecret is critical for security
	},
	Client:         "geth", // must be "geth"
	Network:        "mainnet", // mainnet, sepolia, or holesky
	DeploymentType: "source", // source, binary, docker
	DataDir:        "/data/mainnet/geth", // path to the data directory
})

func NewNethermindComponent

func NewNethermindComponent(ctx *pulumi.Context, name string, args *ExecutionClientComponentArgs, opts ...pulumi.ResourceOption) (*ExecutionClientComponent, error)

NewNethermindComponent creates a new Nethermind execution client component and the necessary infrastructure to run it.

Example usage:

client, err := executionClient.NewNethermindComponent(ctx, "testNethermindExecutionClient", &executionClient.ExecutionClientComponentArgs{
	Connection:     &remote.ConnectionArgs{
		User:       cfg.Require("sshUser"), // username for the ssh connection
		Host:       cfg.Require("sshHost"), // ip address of the host
		PrivateKey: cfg.RequireSecret("
	},
	Client:         "nethermind", // must be "nethermind"
	Network:        "mainnet", // mainnet, sepolia, or holesky
	DeploymentType: "source", // source, binary, docker
	DataDir:        "/data/mainnet/nethermind", // path to the data directory
})

func NewRethComponent

NewRethComponent creates a new reth execution client component and the necessary infrastructure to run it.

Example usage:

client, err := executionClient.NewRethComponent(ctx, "testRethExecutionClient", &executionClient.ExecutionClientComponentArgs{
	Connection:     &remote.ConnectionArgs{
		User:       cfg.Require("sshUser"), // username for the ssh connection
		Host:       cfg.Require("sshHost"), // ip address of the host
		PrivateKey: cfg.RequireSecret("sshPrivateKey"), // must be a secret, RequireSecret is critical for security
	},
	Client:         "reth", // must be "reth"
	Network:        "mainnet", // mainnet, sepolia, or holesky
	DeploymentType: "source", // source, kubernetes
	DataDir:        "/data/mainnet/reth", // path to the data directory
})

type ExecutionClientComponentArgs

type ExecutionClientComponentArgs struct {
	Connection                       *remote.ConnectionArgs
	Client                           string
	Network                          string
	DeploymentType                   string
	DataDir                          string
	ExecutionJwt                     string
	ExecutionClientConfigPath        string
	PodStorageSize                   string
	PodStorageClass                  string
	ExecutionClientImage             string
	ExecutionClientContainerCommands []string
	InstanceNumber                   int
	EnableIngress                    bool
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL