mirror of
https://github.com/datahaven-xyz/datahaven
synced 2026-05-24 09:50:01 +00:00
## Key changes - Add CLI command to update AVS metadata URI on-chain via `updateAVSMetadataURI` function. Use: - `bun cli contracts update-metadata --chain <...> --uri <...>` - Support for multiple chains (tipicaly holesky, hoodi, or a mainnet) - Tx confirmation and gas usage reporting --------- Co-authored-by: Steve Degosserie <723552+stiiifff@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| .env.example | ||
| deploy.ts | ||
| index.ts | ||
| README.md | ||
| status.ts | ||
| update-metadata.ts | ||
| verify.ts | ||
DataHaven Contracts Deployment
Deploy DataHaven AVS contracts to supported chains (Hoodi, Holesky, Mainnet).
What Gets Deployed
- DataHaven: ServiceManager, VetoableSlasher, RewardsRegistry
- Snowbridge: BeefyClient, AgentExecutor, Gateway, RewardsAgent
- EigenLayer: References existing contracts (not deployed)
Prerequisites
- Account Setup: Create or import an account in Metamask (you'll need the private key)
- Funding: Get native tokens for deployment fees:
- Hoodi: Use PoW Faucet at https://hoodi-faucet.pk910.de/#/mine/cc7df92c-9629-4ad8-aaa4-53b1e1c294e8
- Holesky: Use public faucets or bridge from mainnet
- Mainnet: Purchase ETH
- API Key (optional): Generate API token from block explorer for contract verification:
- Hoodi: Etherscan-compatible endpoint
- Holesky: https://holesky.etherscan.io/apis
- Mainnet: https://etherscan.io/apis
Setup
cd test && cp cli/handlers/contracts/.env.example .env
Edit .env with your values:
# Required: Private key with deployment funds
PRIVATE_KEY=0x...
# Required: AVS owner private key (can be same as PRIVATE_KEY)
AVS_OWNER_PRIVATE_KEY=0x...
# Optional: For contract verification
ETHERSCAN_API_KEY=your_api_key_here
Deployment Commands
Deploy to Hoodi
bun cli contracts deploy --chain hoodi
Deploy to Holesky
bun cli contracts deploy --chain holesky
Deploy to Mainnet
bun cli contracts deploy --chain mainnet
Custom RPC URL
bun cli contracts deploy --chain hoodi --rpc-url https://your-rpc-url.com
Check Deployment Status
bun cli contracts status --chain hoodi
Deployment Files
Successful deployments create:
../contracts/deployments/{chain}.json- Contract addresses../contracts/deployments/{chain}-rewards-info.json- Rewards configuration