Files
smom-dbis-138/docs/deployment/INFURA_SETTINGS_FIX.md
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control.
- Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities.
- Created .gitmodules to include OpenZeppelin contracts as a submodule.
- Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment.
- Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks.
- Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring.
- Created scripts for resource import and usage validation across non-US regions.
- Added tests for CCIP error handling and integration to ensure robust functionality.
- Included various new files and directories for the orchestration portal and deployment scripts.
2025-12-12 14:57:48 -08:00

2.5 KiB

Infura Settings Fix

Date: 2025-12-11 Issue: Infura RPC requires project secret authentication


📋 Current Configuration (lines 14-19)

From .env:

  • Line 14: METAMASK_API_KEY=43b945b33d58463a9246cf5ca8aa6286 (Infura Project ID)
  • Line 15: METAMASK_SECRET=... (Not Infura project secret)
  • Line 16: INFURA_GAS_API=...
  • Line 18: ETHEREUM_MAINNET_RPC=https://mainnet.infura.io/v3/43b945b33d58463a9246cf5ca8aa6286
  • Line 19: ETHERSCAN_API_KEY=...

Issue

Error: HTTP error 403 with body: private key only is enabled in Project ID settings

Cause: Infura project has "Private Key Only" setting enabled, which requires project secret authentication.


Solutions

Solution 1: Disable "Private Key Only" in Infura (Easiest)

  1. Go to https://infura.io/
  2. Log in to your account
  3. Select project with ID: 43b945b33d58463a9246cf5ca8aa6286
  4. Go to Settings
  5. Find "Private Key Only" setting
  6. Disable it
  7. Save changes

After this, the current RPC URL will work:

ETHEREUM_MAINNET_RPC=https://mainnet.infura.io/v3/43b945b33d58463a9246cf5ca8aa6286

Solution 2: Get Infura Project Secret

  1. Go to Infura dashboard
  2. Select your project
  3. Go to Settings
  4. Copy the "Project Secret"
  5. Update .env line 18:
    ETHEREUM_MAINNET_RPC=https://mainnet.infura.io/v3/43b945b33d58463a9246cf5ca8aa6286:YOUR_PROJECT_SECRET
    

Solution 3: Use Alternative RPC Provider

Update .env line 18 with alternative provider:

Alchemy:

ETHEREUM_MAINNET_RPC=https://eth-mainnet.g.alchemy.com/v2/YOUR_ALCHEMY_API_KEY

QuickNode:

ETHEREUM_MAINNET_RPC=https://your-endpoint.quiknode.pro/YOUR_API_KEY

Public RPC (not recommended for production):

ETHEREUM_MAINNET_RPC=https://eth.llamarpc.com

Easiest: Disable "Private Key Only" in Infura dashboard settings.

This will allow the current RPC URL (line 18) to work without changes.


After Fix

Once RPC is working, deployment will proceed automatically:

# Deploy MainnetTether
forge script script/DeployMainnetTether.s.sol \
  --rpc-url "$ETHEREUM_MAINNET_RPC" \
  --private-key $PRIVATE_KEY \
  --broadcast \
  --verify \
  -vvvv

# Deploy TransactionMirror
forge script script/DeployTransactionMirror.s.sol \
  --rpc-url "$ETHEREUM_MAINNET_RPC" \
  --private-key $PRIVATE_KEY \
  --broadcast \
  --verify \
  --via-ir \
  -vvvv

Last Updated: 2025-12-11 Status: Infura Settings Fix Required