
Code Sample: Staging Contracts to Virtual Environment
REST API: Create and manage Virtual Environments
TENDERLY_ACCOUNT_ID 为您的账户 IDTENDERLY_PROJECT 为您的项目 (slug)TENDERLY_ACCESS_KEY 为您生成的 access keyORIGINAL_NETWORK_ID 为您要作为 Virtual Environment 基础的网络 IDFOUNDRY_REPO 为 Foundry 仓库的路径DEPLOYER_ADDRESS 为您要从其部署的账户export TENDERLY_ACCOUNT_ID=<USERNAME>
export TENDERLY_PROJECT=<PROJECT>
export TENDERLY_ACCESS_KEY=<ACCESS_KEY>
## TestNet Configuration
export TENDERLY_TESTNET_NAME=staging
export PURPOSE=development
export ORIGINAL_NETWORK_ID=1
export BLOCK_NUMBER=latest
## Custom Chain ID (Prefixed with 7357 - test)
export CHAIN_ID=7357$ORIGINAL_NETWORK_ID
## Public explorer verification visibility
## abi | full | none
export VERIFICATION_VISIBILITY=abi
# Foundry Repo (Absolute path only!)
export FOUNDRY_REPO=<ABSOLUTE PATH TO FOUNDRY PROJECT>
## Deployer address
export DEPLOYER_ADDRESS=...
## Custom stuff needed for deployment scripts
## Add your custom stuff here
export ADMIN_ADDRESS=...
编辑
deploy-command.sh 并添加部署合约的命令。注意您需要向 Foundry 或 Hardhat 项目添加验证;参见部署和验证合约。#!/bin/bash
cd $FOUNDRY_REPO
## TODO: Your deployment command here:
MAX_SEGMENT_COUNT=3
FOUNDRY_PROFILE=optimized \
forge script script/DeployCore.s.sol \
--broadcast \
--rpc-url $TENDERLY_VIRTUAL_TESTNET_RPC \
--sig "run(address)" \
--verify \
--verifier-url $VERIFICATION_URL \
$ADMIN_ADDRESS
$DEPLOYER_ADDRESS 注入测试 ETHfoundry.toml 以在您的自定义链上进行验证foundry.toml# create a testnet - or paste the Unlocked TestNet RPC URL
source src/contracts-staging/.env
cd src/contracts-staging
## Create a fresh testnet
export VIRTUAL_NETWORK_RPC_URL=$(./create-testnet.sh)
echo "Created a Virtual Environment at ${VIRTUAL_NETWORK_RPC_URL}"
### run the deployment
./deploy-to-testnet.sh