UNPKG

@hyperlane-xyz/utils

Version:

General utilities and types for the Hyperlane network

24 lines 926 B
import { rootLogger } from './logging.js'; /** * Applies RPC URL overrides from environment variables. * Looks for variables with the form RPC_URL_<CHAIN_NAME>. */ export function applyRpcUrlOverridesFromEnv(chainMetadata, options = {}) { const overriddenChains = []; const chainNames = options.chainNames ?? Object.keys(chainMetadata); const env = options.env ?? process.env; for (const chain of chainNames) { const metadata = chainMetadata[chain]; if (!metadata) continue; const envVarName = `RPC_URL_${chain.toUpperCase().replace(/-/g, '_')}`; const rpcUrl = env[envVarName]; if (!rpcUrl) continue; rootLogger.debug({ chain, envVarName }, 'Using RPC from environment variable'); metadata.rpcUrls = [{ http: rpcUrl }]; overriddenChains.push(chain); } return overriddenChains; } //# sourceMappingURL=rpc.js.map