From 4766085bac12e1f049393a4197a970f9548bec0c Mon Sep 17 00:00:00 2001 From: akawalsky Date: Mon, 23 Mar 2026 16:34:55 -0400 Subject: [PATCH] enforce dial context and rearrange --- apps/chain_pusher/pkg/evm/interactor.go | 2 +- apps/chain_pusher/pkg/evm/nonce_manager.go | 24 +++++++++++++++++++++ apps/chain_pusher/pkg/evm/push.go | 25 ---------------------- 3 files changed, 25 insertions(+), 26 deletions(-) diff --git a/apps/chain_pusher/pkg/evm/interactor.go b/apps/chain_pusher/pkg/evm/interactor.go index 378191b1..6329c15e 100644 --- a/apps/chain_pusher/pkg/evm/interactor.go +++ b/apps/chain_pusher/pkg/evm/interactor.go @@ -108,7 +108,7 @@ func NewContractInteractor( func (eci *ContractInteractor) ConnectHTTP(ctx context.Context, url string) error { eci.logger.Info().Str("url", url).Msg("ConnectHTTP") - client, err := ethclient.Dial(url) + client, err := ethclient.DialContext(ctx, url) if err != nil { return fmt.Errorf("failed to connect to RPC: %w", err) } diff --git a/apps/chain_pusher/pkg/evm/nonce_manager.go b/apps/chain_pusher/pkg/evm/nonce_manager.go index bb58908d..8a0ae8d6 100644 --- a/apps/chain_pusher/pkg/evm/nonce_manager.go +++ b/apps/chain_pusher/pkg/evm/nonce_manager.go @@ -98,3 +98,27 @@ func (n *LocalNonceManager) ResetNonce(ctx context.Context, ethClient *ethclient n.nonce = nil return nil } + +type NonceManagerType string + +const ( + NonceManagerTypeNoop NonceManagerType = "noop" + NonceManagerTypeServer NonceManagerType = "server" + NonceManagerTypeServerPending NonceManagerType = "serverPending" + NonceManagerTypeLocal NonceManagerType = "local" +) + +func NewNonceManagerFromType(t NonceManagerType) (NonceManagerI, error) { + switch t { + case NonceManagerTypeNoop, "": + return NewNoopNonceManager(), nil + case NonceManagerTypeServer: + return NewServerNonceManager(false), nil + case NonceManagerTypeServerPending: + return NewServerNonceManager(true), nil + case NonceManagerTypeLocal: + return NewLocalNonceManager(), nil + default: + return nil, fmt.Errorf("unknown nonce manager type: %s", string(t)) + } +} diff --git a/apps/chain_pusher/pkg/evm/push.go b/apps/chain_pusher/pkg/evm/push.go index 8c22dfd0..c636bb43 100644 --- a/apps/chain_pusher/pkg/evm/push.go +++ b/apps/chain_pusher/pkg/evm/push.go @@ -2,37 +2,12 @@ package evm import ( "context" - "fmt" "os" "github.com/Stork-Oracle/stork-external/apps/chain_pusher/pkg/pusher" "github.com/spf13/cobra" ) -type NonceManagerType string - -const ( - NonceManagerTypeNoop NonceManagerType = "noop" - NonceManagerTypeServer NonceManagerType = "server" - NonceManagerTypeServerPending NonceManagerType = "serverPending" - NonceManagerTypeLocal NonceManagerType = "local" -) - -func NewNonceManagerFromType(t NonceManagerType) (NonceManagerI, error) { - switch t { - case NonceManagerTypeNoop, "": - return NewNoopNonceManager(), nil - case NonceManagerTypeServer: - return NewServerNonceManager(false), nil - case NonceManagerTypeServerPending: - return NewServerNonceManager(true), nil - case NonceManagerTypeLocal: - return NewLocalNonceManager(), nil - default: - return nil, fmt.Errorf("unknown nonce manager type: %s", string(t)) - } -} - func NewPushCmd() *cobra.Command { pushCmd := &cobra.Command{ Use: "evm",